diff gnv-artifacts/src/main/java/de/intevation/gnv/transition/timeseries/TimeSeriesOutputTransition.java @ 232:3d6d89bcbf42

Added special Data-Selection to the ODV-Exports of TimeSeries on TimeSeriesPoints. issue68 gnv-artifacts/trunk@300 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Tim Englich <tim.englich@intevation.de>
date Mon, 09 Nov 2009 08:55:01 +0000
parents f68ffbe974a0
children 2ceb4bf51cba
line wrap: on
line diff
--- a/gnv-artifacts/src/main/java/de/intevation/gnv/transition/timeseries/TimeSeriesOutputTransition.java	Fri Nov 06 11:12:45 2009 +0000
+++ b/gnv-artifacts/src/main/java/de/intevation/gnv/transition/timeseries/TimeSeriesOutputTransition.java	Mon Nov 09 08:55:01 2009 +0000
@@ -7,8 +7,6 @@
 import java.awt.Dimension;
 import java.io.IOException;
 import java.io.OutputStream;
-import java.io.OutputStreamWriter;
-import java.io.PrintWriter;
 import java.io.UnsupportedEncodingException;
 import java.util.ArrayList;
 import java.util.Collection;
@@ -39,6 +37,9 @@
 import de.intevation.gnv.chart.ChartLabels;
 import de.intevation.gnv.chart.ChartStyle;
 import de.intevation.gnv.chart.exception.TechnicalChartException;
+import de.intevation.gnv.exports.DefaultExport;
+import de.intevation.gnv.exports.DefaultProfile;
+import de.intevation.gnv.exports.Export.Profile;
 import de.intevation.gnv.geobackend.base.Result;
 import de.intevation.gnv.statistics.Statistic;
 import de.intevation.gnv.statistics.Statistics;
@@ -51,11 +52,6 @@
 import de.intevation.gnv.transition.describedata.KeyValueDescibeData;
 import de.intevation.gnv.transition.describedata.NamedCollection;
 import de.intevation.gnv.transition.exception.TransitionException;
-
-import de.intevation.gnv.exports.DefaultExport;
-import de.intevation.gnv.exports.DefaultProfile;
-import de.intevation.gnv.exports.Export.Profile;
-
 import de.intevation.gnv.utils.ArtifactXMLUtilities;
 
 
@@ -93,6 +89,19 @@
         "GROUP2",
         "GROUP3"
     };
+    
+    public static final String [] TIMESERIES_ODV_PROFILE_NAMES = {
+          "CRUISE",
+          "STATION",
+          "TYPE",
+          "BOTDEPTH",
+          "DEPTH",
+          "TIMEVALUE",
+          "DATAVALUE",
+          "PARAMETER",
+          "MEASUREMENTID",
+          "TIMESERIESID"
+      };
 
     /**
      * Profile for exporting data to cvs
@@ -112,7 +121,7 @@
      */
     public static final Profile TIMESERIES_ODV_PROFILE =
         new DefaultProfile(
-            TIMESERIES_CSV_PROFILE_NAMES,
+            TIMESERIES_ODV_PROFILE_NAMES,
             '\t',
             CSVWriter.NO_QUOTE_CHARACTER,
             CSVWriter.NO_ESCAPE_CHARACTER,
@@ -137,8 +146,8 @@
         log.debug("TimeSeriesOutputTransition.out");
         try {
 
-            this.advance(uuid, callMeta);
-            Collection<Result> chartResult = this.getChartResult(uuid);
+            this.advance(uuid, callMeta); // TODO This hsould only be done if it is nessessary
+           
             if (outputMode.equalsIgnoreCase("chart")) {
                 log.debug("Chart will be generated.");
                 int chartWidth = 600;
@@ -170,10 +179,12 @@
                         chartStyle, chartLables, uuid);
             } else if (outputMode.equalsIgnoreCase("csv")) {
                 log.debug("CSV-File will be generated.");
+                Collection<Result> chartResult = this.getChartResult(uuid);
                 this.createCSV(outputStream, chartResult);
             } else if (outputMode.equalsIgnoreCase("statistics")) {
                 log.debug("Statistics will be generated.");
                 Statistics s = getStatisticsGenerator();
+                Collection<Result> chartResult = this.getChartResult(uuid);
                 Collection<Statistic> statistics = s
                         .calculateStatistics(chartResult);
                 Document doc = this.writeStatistics2XML(statistics);
@@ -181,7 +192,9 @@
             } else if (outputMode.equalsIgnoreCase("odv")) {
                 //TimeSeriesExport export = new TimeSeriesExport();
                 //export.createODV(outputStream, chartResult);
-                createODV(outputStream, chartResult);
+                
+                Collection<Result> odvResult = this.getODVResult(uuid);
+                this.createODV(outputStream, odvResult);
             }
         } catch (IOException e) {
             log.error(e, e);

http://dive4elements.wald.intevation.org