\r
/** Returns one single result. */\r
public class GetAttachmentHandler implements HttpRequestHandler {\r
+ protected final String FORCE_DOWNLOAD = "Content-Type: application/force-download";\r
+\r
private AttachmentsStorage attachmentsStorage;\r
\r
public void handleRequest(HttpServletRequest request,\r
HttpServletResponse response) throws ServletException, IOException {\r
String uuid = request.getParameter("uuid");\r
String contentType = request.getParameter("contentType");\r
+ String name = request.getParameter("name");\r
+ if (contentType == null || "".equals(contentType.trim())) {\r
+ contentType = FORCE_DOWNLOAD;\r
+ }\r
+\r
+ if (contentType.trim().equals(FORCE_DOWNLOAD)) {\r
+ if (name != null) {\r
+ contentType = contentType + ";name=\"" + name + "\"";\r
+ response.setHeader("Content-Disposition",\r
+ "attachment; filename=\"" + name + "\"");\r
+ }\r
+ response.setHeader("Expires", "0");\r
+ response.setHeader("Cache-Control", "no-cache, must-revalidate");\r
+ response.setHeader("Pragma", "no-cache");\r
+ }\r
+\r
SimpleAttachment resourceDescriptor = new SimpleAttachment();\r
resourceDescriptor.setUuid(uuid);\r
resourceDescriptor.setContentType(contentType);\r