diff flys-artifacts/src/main/java/de/intevation/flys/exports/fixings/DeltaWtExporter.java @ 3398:7f9fe694f8d1

FixA: Added time range column to Delta W(t) CSV export. flys-artifacts/trunk@5032 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Sascha L. Teichmann <sascha.teichmann@intevation.de>
date Wed, 18 Jul 2012 09:54:46 +0000
parents 6d1740533810
children 0336132ec9db
line wrap: on
line diff
--- a/flys-artifacts/src/main/java/de/intevation/flys/exports/fixings/DeltaWtExporter.java	Wed Jul 18 09:03:19 2012 +0000
+++ b/flys-artifacts/src/main/java/de/intevation/flys/exports/fixings/DeltaWtExporter.java	Wed Jul 18 09:54:46 2012 +0000
@@ -22,6 +22,7 @@
 import java.io.OutputStream;
 
 import java.text.DateFormat;
+import java.text.MessageFormat;
 import java.text.NumberFormat;
 
 import java.util.ArrayList;
@@ -46,6 +47,9 @@
     public static final String CSV_Q_HEADER =
         "export.fixings.deltawt.csv.header.q";
 
+    public static final String CSV_TRANGE_HEADER =
+        "export.fixings.deltawt.csv.header.time.range";
+
     public static final String CSV_T_HEADER =
         "export.fixings.deltawt.csv.header.t";
 
@@ -62,6 +66,21 @@
 
     public static final String DEFAULT_CSV_T_DESC_HEADER = "Beschreibung";
 
+    public static final String DEFAULT_CSV_TRANGE_DESC_HEADER =
+        "Zeitraum";
+
+    public static final String CSV_REFERENCE =
+        "export.fixings.deltawt.csv.reference";
+
+    public static final String CSV_ANALYSIS =
+        "export.fixings.deltawt.csv.analysis";
+
+    public static final String DEFAULT_CSV_REFERENCE =
+        "Bezug";
+
+    public static final String DEFAULT_CSV_ANALYSIS =
+        "Analyse {0,number,integer}";
+
     protected List<KMIndex<AnalysisPeriod []>> analysisPeriods;
 
     protected List<KMIndex<QWD[]>> referenceEvents;
@@ -106,6 +125,8 @@
         Locale locale = Resources.getLocale(meta);
         DateFormat dF = DateFormat.getDateInstance(DateFormat.SHORT, locale);
 
+        String referenceS = getReference();
+
         for (KMIndex<QWD[]> reference: referenceEvents) {
 
             for (KMIndex.Entry<QWD[]> kmEntry: reference) {
@@ -119,6 +140,7 @@
 
                     writer.writeNext(new String[] {
                         kmS,
+                        referenceS,
                         deltaWS,
                         qS,
                         dateS,
@@ -131,8 +153,15 @@
             log.debug("AnalysisPeriods: " + analysisPeriods.size());
         }
 
+        String analysisTemplate = getAnalysisTemplate();
+
+        int analysisCount = 1;
+
         for (KMIndex<AnalysisPeriod []> periods: analysisPeriods) {
 
+            String analyisS = MessageFormat.format(
+                analysisTemplate, analysisCount);
+
             for (KMIndex.Entry<AnalysisPeriod []> kmEntry: periods) {
 
                 String kmS = kmF.format(kmEntry.getKm());
@@ -148,6 +177,7 @@
 
                             writer.writeNext(new String[] {
                                 kmS,
+                                analyisS,
                                 deltaWS,
                                 qS,
                                 dateS,
@@ -155,11 +185,23 @@
                         }
                     }
                 }
+                ++analysisCount;
             }
         }
         writer.flush();
     }
 
+    protected String getAnalysisTemplate() {
+        return Resources.getMsg(
+            context.getMeta(),
+            CSV_ANALYSIS, DEFAULT_CSV_ANALYSIS);
+    }
+
+    protected String getReference() {
+        return Resources.getMsg(
+            context.getMeta(),
+            CSV_REFERENCE, DEFAULT_CSV_REFERENCE);
+    }
 
     protected NumberFormat getKMFormatter() {
         return Formatter.getFixDeltaWKM(context);
@@ -178,6 +220,7 @@
 
         writer.writeNext(new String[] {
             msg(CSV_KM_HEADER,      DEFAULT_CSV_KM_HEADER),
+            msg(CSV_TRANGE_HEADER,  DEFAULT_CSV_TRANGE_DESC_HEADER),
             msg(CSV_DELTA_W_HEADER, DEFAULT_CSV_DELTA_W_HEADER),
             msg(CSV_Q_HEADER,       DEFAULT_CSV_Q_HEADER),
             msg(CSV_T_HEADER,       DEFAULT_CSV_T_HEADER),

http://dive4elements.wald.intevation.org