aboutsummaryrefslogtreecommitdiff
path: root/pdf-as-web-status/src/main/java/at/gv/egiz/status/content/ResponseBuilder.java
diff options
context:
space:
mode:
authorAndreas Fitzek <andreas.fitzek@iaik.tugraz.at>2014-12-01 12:23:47 +0100
committerAndreas Fitzek <andreas.fitzek@iaik.tugraz.at>2014-12-02 10:09:35 +0100
commite929b5f4c6d9351b29150e6c1843f06806ee7b00 (patch)
treec6ecc4e5f6c3da6ef381a3d852c0a2211ca060e2 /pdf-as-web-status/src/main/java/at/gv/egiz/status/content/ResponseBuilder.java
parent6398c85d80213f316dd0f9e4be10e34b54b1f5f9 (diff)
downloadpdf-as-4-e929b5f4c6d9351b29150e6c1843f06806ee7b00.tar.gz
pdf-as-4-e929b5f4c6d9351b29150e6c1843f06806ee7b00.tar.bz2
pdf-as-4-e929b5f4c6d9351b29150e6c1843f06806ee7b00.zip
added status servlet to pdf-as-web
Diffstat (limited to 'pdf-as-web-status/src/main/java/at/gv/egiz/status/content/ResponseBuilder.java')
-rw-r--r--pdf-as-web-status/src/main/java/at/gv/egiz/status/content/ResponseBuilder.java54
1 files changed, 54 insertions, 0 deletions
diff --git a/pdf-as-web-status/src/main/java/at/gv/egiz/status/content/ResponseBuilder.java b/pdf-as-web-status/src/main/java/at/gv/egiz/status/content/ResponseBuilder.java
new file mode 100644
index 00000000..1e248808
--- /dev/null
+++ b/pdf-as-web-status/src/main/java/at/gv/egiz/status/content/ResponseBuilder.java
@@ -0,0 +1,54 @@
+package at.gv.egiz.status.content;
+
+import java.io.IOException;
+import java.util.HashMap;
+import java.util.Map;
+
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+
+import at.gv.egiz.status.TestResult;
+
+public class ResponseBuilder {
+
+ public enum ContentType {
+ HTML("HTML"), JSON("JSON"), XML("XML");
+
+ private final String name;
+
+ private ContentType(String s) {
+ name = s;
+ }
+
+ public boolean equalsName(String otherName){
+ return (otherName == null)? false:name.equals(otherName);
+ }
+
+ public String toString(){
+ return name;
+ }
+ }
+
+ private ContentGenerator defaultGenerator;
+
+ private Map<String, ContentGenerator> contentBuilder = new HashMap<String, ContentGenerator>();
+
+ public ResponseBuilder() {
+ defaultGenerator = new HtmlGenerator();
+ contentBuilder.put(ContentType.HTML.toString(), defaultGenerator);
+ contentBuilder.put(ContentType.JSON.toString(), new JsonGenerator());
+ contentBuilder.put(ContentType.XML.toString(), new XMLGenerator());
+ }
+
+ public void generate(HttpServletRequest request,
+ HttpServletResponse response, Map<String, TestResult> results,
+ boolean details, String content) throws IOException {
+
+ if(contentBuilder.containsKey(content)) {
+ contentBuilder.get(content).generate(request, response, results, details);
+ } else {
+ defaultGenerator.generate(request, response, results, details);
+ }
+
+ }
+}