diff gnv/src/main/java/de/intevation/gnv/action/DoExportAction.java @ 29:bba8fd97e549

Export and Diagrammoptions integrated into GUI gnv/trunk@133 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Tim Englich <tim.englich@intevation.de>
date Fri, 25 Sep 2009 07:28:49 +0000
parents
children 25fdec8b4c69
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/gnv/src/main/java/de/intevation/gnv/action/DoExportAction.java	Fri Sep 25 07:28:49 2009 +0000
@@ -0,0 +1,48 @@
+/**
+ *
+ */
+package de.intevation.gnv.action;
+
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+
+import org.apache.log4j.Logger;
+
+/**
+ * @author Tim Englich <tim.englich@intevation.de>
+ *
+ */
+public class DoExportAction extends DoOutputAction {
+
+    /**
+     * the logger, used to log exceptions and additonaly information
+     */
+    private static Logger log = Logger.getLogger(DoExportAction.class);
+    
+    /**
+     * Constructor
+     */
+    public DoExportAction() {
+        super();
+    }
+
+    @Override
+    protected void setHeaders(String target, String mimeType,
+            HttpServletResponse response, HttpServletRequest request) {
+        log.debug("DoExportAction.setHeaders");
+        super.setHeaders(target, mimeType, response, request);
+        String fileName = "GNVEXPORT_"+System.currentTimeMillis()+".";
+        
+        if (target.equalsIgnoreCase("chart")){
+            fileName = fileName + mimeType.substring(mimeType.indexOf("/")+1);
+        }else if (target.equalsIgnoreCase("CSV")){
+            fileName = fileName +"csv";
+        }else{
+            fileName = fileName +"txt";
+        }
+        log.debug("FileName for Export: "+fileName);
+        response.setHeader("Content-Disposition","attachment;filename="+fileName);
+    }
+
+    
+}

http://dive4elements.wald.intevation.org