]> git.argeo.org Git - gpl/argeo-slc.git/blob - runtime/org.argeo.slc.server/src/main/java/org/argeo/slc/web/mvc/provisioning/AvailableDistributions.java
Provisioning
[gpl/argeo-slc.git] / runtime / org.argeo.slc.server / src / main / java / org / argeo / slc / web / mvc / provisioning / AvailableDistributions.java
1 package org.argeo.slc.web.mvc.provisioning;
2
3 import java.io.IOException;
4 import java.io.Writer;
5 import java.util.Iterator;
6 import java.util.Set;
7
8 import javax.servlet.ServletException;
9 import javax.servlet.http.HttpServletRequest;
10 import javax.servlet.http.HttpServletResponse;
11
12 import org.argeo.slc.build.ModularDistribution;
13 import org.springframework.web.HttpRequestHandler;
14
15 /** List of distributions. */
16 public class AvailableDistributions implements HttpRequestHandler {
17 private Set<ModularDistribution> modularDistributions;
18
19 public void handleRequest(HttpServletRequest request,
20 HttpServletResponse response) throws ServletException, IOException {
21 response.setContentType("text/html");
22
23 String baseUrl = "http://" + request.getServerName() + ":"
24 + request.getServerPort() + request.getContextPath()
25 + request.getServletPath() + "/";
26
27 Writer out = response.getWriter();
28
29 out.write("<h1>Distributions</h1>");
30 for (Iterator<ModularDistribution> it = modularDistributions.iterator(); it
31 .hasNext();) {
32 ModularDistribution md = it.next();
33 out.write("<h2>" + md + "</h2>");
34 out.write("Modules: ");
35 String moduleBase = baseUrl + md.getName() + "/" + md.getVersion()
36 + "/";
37
38 String modulesListHtml = moduleBase + "modules.html";
39 out.write(" <a href=\"" + modulesListHtml + "\">html</a>");
40
41 String modulesListPlain = moduleBase + "modules";
42 out.write(" <a href=\"" + modulesListPlain + "\">plain</a>");
43
44 String modulesListOsgiBoot = moduleBase + "osgiBoot";
45 out.write(" <a href=\"" + modulesListOsgiBoot + "\">osgiBoot</a>");
46
47 out.write("<br/>");
48
49 out.write("Eclipse update site: ");
50 String updateSiteUrl = baseUrl + md.getName() + "/"
51 + md.getVersion() + "/site.xml";
52 out.write("<a href=\"" + updateSiteUrl + "\">" + updateSiteUrl
53 + "</a>");
54 }
55 }
56
57 public void setModularDistributions(
58 Set<ModularDistribution> modularDistributions) {
59 this.modularDistributions = modularDistributions;
60 }
61
62 }