]> git.argeo.org Git - gpl/argeo-slc.git/blob - runtime/org.argeo.slc.server/src/main/java/org/argeo/slc/web/mvc/provisioning/AbstractAvailableModules.java
Use ObjectList everywhere
[gpl/argeo-slc.git] / runtime / org.argeo.slc.server / src / main / java / org / argeo / slc / web / mvc / provisioning / AbstractAvailableModules.java
1 package org.argeo.slc.web.mvc.provisioning;
2
3 import java.io.IOException;
4 import java.io.Writer;
5
6 import javax.servlet.ServletException;
7 import javax.servlet.http.HttpServletRequest;
8 import javax.servlet.http.HttpServletResponse;
9
10 import org.argeo.slc.build.ModularDistribution;
11 import org.springframework.web.HttpRequestHandler;
12
13 /** List of modules for a distribution. */
14 public abstract class AbstractAvailableModules implements HttpRequestHandler {
15 protected abstract void print(Writer out, String baseUrl,
16 ModularDistribution md) throws IOException;
17
18 public final void handleRequest(HttpServletRequest request,
19 HttpServletResponse response) throws ServletException, IOException {
20 response.setContentType(getContentType());
21
22 ModularDistribution md = (ModularDistribution) request
23 .getAttribute("modularDistribution");
24
25 String baseUrl = "http://" + request.getServerName() + ":"
26 + request.getServerPort() + request.getContextPath() + "/"
27 + md.getName() + "/" + md.getVersion() + "/";
28
29 print(response.getWriter(), baseUrl, md);
30 }
31
32 public String getContentType() {
33 return "text/plain";
34 }
35
36 }