From dbb07aa1529e8c1f3b6ec17342a02c44a7982f42 Mon Sep 17 00:00:00 2001 From: cdtank Date: Thu, 16 Dec 2010 01:20:24 +0000 Subject: [PATCH] 1. Changed vis architecture to serve 3 type of responses from 3 corresponding url patterns (standard, ajax, data). 2. Removed FileResponseValues type per talks with Rebecca Y. & Nick C. 3. Modified FreemarkerHttpServlet to not handle the removed FileResponseValues. --- .../freemarker/FreemarkerHttpServlet.java | 25 +------------ .../responsevalues/FileResponseValues.java | 37 ------------------- 2 files changed, 1 insertion(+), 61 deletions(-) delete mode 100644 webapp/src/edu/cornell/mannlib/vitro/webapp/controller/freemarker/responsevalues/FileResponseValues.java diff --git a/webapp/src/edu/cornell/mannlib/vitro/webapp/controller/freemarker/FreemarkerHttpServlet.java b/webapp/src/edu/cornell/mannlib/vitro/webapp/controller/freemarker/FreemarkerHttpServlet.java index a84eafb8c..a954c01dc 100644 --- a/webapp/src/edu/cornell/mannlib/vitro/webapp/controller/freemarker/FreemarkerHttpServlet.java +++ b/webapp/src/edu/cornell/mannlib/vitro/webapp/controller/freemarker/FreemarkerHttpServlet.java @@ -26,7 +26,6 @@ import edu.cornell.mannlib.vitro.webapp.controller.VitroHttpServlet; import edu.cornell.mannlib.vitro.webapp.controller.VitroRequest; import edu.cornell.mannlib.vitro.webapp.controller.freemarker.UrlBuilder.Route; import edu.cornell.mannlib.vitro.webapp.controller.freemarker.responsevalues.ExceptionResponseValues; -import edu.cornell.mannlib.vitro.webapp.controller.freemarker.responsevalues.FileResponseValues; import edu.cornell.mannlib.vitro.webapp.controller.freemarker.responsevalues.ForwardResponseValues; import edu.cornell.mannlib.vitro.webapp.controller.freemarker.responsevalues.RdfResponseValues; import edu.cornell.mannlib.vitro.webapp.controller.freemarker.responsevalues.RedirectResponseValues; @@ -154,9 +153,7 @@ public class FreemarkerHttpServlet extends VitroHttpServlet { doForward(vreq, response, values); } else if (values instanceof RdfResponseValues) { doRdf(vreq, response, values); - } else if (values instanceof FileResponseValues) { - doFile(vreq, response, values); - } + } } catch (ServletException e) { log.error("ServletException in doResponse()", e); } catch (IOException e) { @@ -242,26 +239,6 @@ public class FreemarkerHttpServlet extends VitroHttpServlet { values.getModel().write( response.getOutputStream(), format ); } - - protected void doFile(HttpServletRequest request, HttpServletResponse response, ResponseValues values) - throws IOException { - - String mediaType = values.getContentType().getMediaType(); - response.setContentType(mediaType); - - Map headerKeyToValue = values.getHeader(); - - for (Map.Entry currentHeaderPair : headerKeyToValue.entrySet()) { - response.setHeader(currentHeaderPair.getKey(), currentHeaderPair.getValue()); - } - - PrintWriter responseWriter = response.getWriter(); - - String rawFileContent = (String) values.getMap().get("fileContent"); - responseWriter.append(rawFileContent); - responseWriter.close(); - - } protected void doException(VitroRequest vreq, HttpServletResponse response, ResponseValues values) { // Log the error, and display an error message on the page. diff --git a/webapp/src/edu/cornell/mannlib/vitro/webapp/controller/freemarker/responsevalues/FileResponseValues.java b/webapp/src/edu/cornell/mannlib/vitro/webapp/controller/freemarker/responsevalues/FileResponseValues.java deleted file mode 100644 index fb1ddbef7..000000000 --- a/webapp/src/edu/cornell/mannlib/vitro/webapp/controller/freemarker/responsevalues/FileResponseValues.java +++ /dev/null @@ -1,37 +0,0 @@ -/* $This file is distributed under the terms of the license in /doc/license.txt$ */ - -package edu.cornell.mannlib.vitro.webapp.controller.freemarker.responsevalues; - -import java.util.Collections; -import java.util.HashMap; -import java.util.Map; - -import edu.cornell.mannlib.vitro.webapp.web.ContentType; - -public class FileResponseValues extends BaseResponseValues { - - private String outputFileName; - private String DEFAULT_HEADER_KEY = "Content-Disposition"; - private String DEFAULT_HEADER_VALUE_PREFIX = "attachment;filename="; - private final Map map; - - - public FileResponseValues(ContentType contentType, String outputFileName, Map map) { - super(contentType); - this.outputFileName = outputFileName; - this.map = map; - } - - @Override - public Map getHeader() { - Map headerKeyToValue = new HashMap(); - headerKeyToValue.put(DEFAULT_HEADER_KEY, DEFAULT_HEADER_VALUE_PREFIX + outputFileName); - return headerKeyToValue; - } - - @Override - public Map getMap() { - return Collections.unmodifiableMap(this.map); - } - -}