diff flys-artifacts/src/main/java/de/intevation/flys/exports/ReferenceCurveExporter.java @ 2310:ecb76933362f

Added PDF export to reference curve calculation. flys-artifacts/trunk@3988 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Raimund Renkert <raimund.renkert@intevation.de>
date Thu, 09 Feb 2012 10:21:16 +0000
parents 6f4a1f513e89
children 6bbb8295fd64
line wrap: on
line diff
--- a/flys-artifacts/src/main/java/de/intevation/flys/exports/ReferenceCurveExporter.java	Thu Feb 09 10:08:14 2012 +0000
+++ b/flys-artifacts/src/main/java/de/intevation/flys/exports/ReferenceCurveExporter.java	Thu Feb 09 10:21:16 2012 +0000
@@ -6,13 +6,11 @@
 import java.util.ArrayList;
 import java.util.List;
 
-/*
 import java.util.Map;
 import java.util.HashMap;
 import java.util.Date;
 import java.text.DateFormat;
 import java.util.Locale;
-*/
 
 import org.w3c.dom.Document;
 
@@ -20,30 +18,22 @@
 
 import au.com.bytecode.opencsv.CSVWriter;
 
-/*
 import net.sf.jasperreports.engine.JasperExportManager;
 import net.sf.jasperreports.engine.JasperFillManager;
 import net.sf.jasperreports.engine.JasperPrint;
 import net.sf.jasperreports.engine.JRException;
-*/
 import de.intevation.artifacts.CallContext;
-/*
 import de.intevation.artifacts.CallMeta;
 import de.intevation.artifacts.common.utils.Config;
-*/
 
 import de.intevation.flys.artifacts.FLYSArtifact;
-/*
 import de.intevation.flys.artifacts.WINFOArtifact;
-*/
 
 import de.intevation.flys.artifacts.model.CalculationResult;
 import de.intevation.flys.artifacts.model.WWQQ;
-import de.intevation.flys.artifacts.model.WKmsJRDataSource;
-/*
+import de.intevation.flys.artifacts.model.WWQQJRDataSource;
 import de.intevation.flys.artifacts.resources.Resources;
 import de.intevation.flys.utils.Formatter;
-*/
 
 import de.intevation.flys.utils.FLYSUtils;
 
@@ -214,13 +204,12 @@
 
     @Override
     protected void writePDF(OutputStream out) {
-        /*
-        WKmsJRDataSource source = createJRData();
+        WWQQJRDataSource source = createJRData();
 
         String jasperFile = Resources.getMsg(
                                 context.getMeta(),
                                 JASPER_FILE,
-                                "/jasper/wdifferences_en.jasper");
+                                "/jasper/reference_en.jasper");
         String confPath = Config.getConfigDirectory().toString();
 
         Map parameters = new HashMap();
@@ -236,29 +225,23 @@
             logger.warn("Error generating PDF Report!");
             je.printStackTrace();
         }
-        */
-        logger.error("ReferenceCurveExporter: PDF export not implemented.");
     }
 
-    protected WKmsJRDataSource createJRData() {
-        /*
-        WKmsJRDataSource source = new WKmsJRDataSource();
+    protected WWQQJRDataSource createJRData() {
+        WWQQJRDataSource source = new WWQQJRDataSource();
 
         addMetaData(source);
-        for (WKms[] tmp: data) {
-            for (WKms wkms: tmp) {
-                addWKmsData(source, wkms);
+
+        for (WWQQ[] tmp: data) {
+            for (WWQQ ww: tmp) {
+                addWWQQData(source, ww);
             }
         }
         return source;
-        */
-        return null;
     }
 
 
-    // TODO implement for pdf export.
-    /*
-    protected void addMetaData(WKmsJRDataSource source) {
+    protected void addMetaData(WWQQJRDataSource source) {
         CallMeta meta = context.getMeta();
 
         WINFOArtifact flys = (WINFOArtifact) master;
@@ -270,28 +253,41 @@
 
         source.addMetaData("date", df.format(new Date()));
 
-        String differences = FLYSUtils.getWDifferences(flys, context);
-        source.addMetaData("differences", differences);
-
         source.addMetaData("calculation", Resources.getMsg(
                                             locale,
                                             PDF_HEADER_MODE,
-                                            "W Differences"));
+                                            "Reference Curve"));
     }
 
-    protected void addWKmsData(WKmsJRDataSource source, WKms wkms) {
-        NumberFormat kmf  = getKmFormatter();
-        NumberFormat wf   = getWFormatter();
-        int          size = wkms.size();
 
-        for (int i = 0; i < size; i ++) {
+    protected void addWWQQData(WWQQJRDataSource source, WWQQ ww) {
+        NumberFormat kmf = getKmFormatter();
+        NumberFormat wf  = getWFormatter();
+        NumberFormat qf  = getQFormatter();
 
+        int          size = ww.size();
+
+        FLYSArtifact flys       = (FLYSArtifact) master;
+
+        String startLocationDescription = FLYSUtils.getLocationDescription(
+            flys, ww.getStartKm());
+
+        String endLocationDescription = FLYSUtils.getLocationDescription(
+            flys, ww.getEndKm());
+
+        // TODO missing 'relative' W(cm).
+        for (int i = 0; i < size; i ++) {
             source.addData(new String[] {
-                kmf.format(wkms.getKm(i)),
-                wf.format(wkms.getW(i))
+                kmf.format(ww.getStartKm()),
+                startLocationDescription,
+                wf.format(ww.getW1(i)),
+                qf.format(ww.getQ1(i)), // "Q"
+                kmf.format(ww.getEndKm()),
+                endLocationDescription,
+                wf.format(ww.getW2(i)),
+                qf.format(ww.getQ2(i)) // "Q"
             });
         }
     }
-    */
 }
 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :

http://dive4elements.wald.intevation.org