annotate flys-artifacts/src/main/java/de/intevation/flys/exports/DeltaWtExporter.java @ 3020:ce796f1db30e

FixA: Store AnalysisPeriods into FixResult now. flys-artifacts/trunk@4587 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Sascha L. Teichmann <sascha.teichmann@intevation.de>
date Tue, 05 Jun 2012 13:51:42 +0000
parents a2b265b9b2f7
children 65b6e27c6f25
rev   line source
2787
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
1 package de.intevation.flys.exports;
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
2
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
3 import au.com.bytecode.opencsv.CSVWriter;
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
4
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
5 import de.intevation.artifacts.CallContext;
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
6 import de.intevation.artifacts.CallMeta;
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
7
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
8 import de.intevation.flys.artifacts.model.CalculationResult;
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
9
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
10 import de.intevation.flys.artifacts.model.fixings.DeltaWT;
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
11 import de.intevation.flys.artifacts.model.fixings.DeltaWTsKM;
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
12 import de.intevation.flys.artifacts.model.fixings.FixResult;
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
13
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
14 import de.intevation.flys.artifacts.resources.Resources;
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
15
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
16 import de.intevation.flys.utils.Formatter;
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
17
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
18 import java.io.IOException;
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
19 import java.io.OutputStream;
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
20
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
21 import java.text.DateFormat;
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
22 import java.text.NumberFormat;
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
23
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
24 import java.util.ArrayList;
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
25 import java.util.Date;
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
26 import java.util.List;
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
27 import java.util.Locale;
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
28
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
29 import org.apache.log4j.Logger;
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
30
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
31 import org.w3c.dom.Document;
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
32
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
33 public class DeltaWtExporter
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
34 extends AbstractExporter
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
35 {
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
36 private static Logger log = Logger.getLogger(DeltaWtExporter.class);
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
37
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
38 public static final String CSV_KM_HEADER =
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
39 "export.fixings.deltawt.csv.header.km";
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
40
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
41 public static final String CSV_DELTA_W_HEADER =
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
42 "export.fixings.deltawt.csv.header.deltaw";
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
43
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
44 public static final String CSV_T_HEADER =
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
45 "export.fixings.deltawt.csv.header.t";
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
46
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
47 public static final String CSV_T_DESC_HEADER =
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
48 "export.fixings.deltawt.csv.header.description";
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
49
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
50 public static final String DEFAULT_CSV_KM_HEADER = "km";
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
51
2994
a2b265b9b2f7 FixA: corrected fitting (Q->W instead W->Q).
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2993
diff changeset
52 public static final String DEFAULT_CSV_DELTA_W_HEADER = "\u0394 W [cm]";
2787
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
53
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
54 public static final String DEFAULT_CSV_T_HEADER = "Datum";
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
55
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
56 public static final String DEFAULT_CSV_T_DESC_HEADER = "Beschreibung";
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
57
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
58 protected List<DeltaWTsKM> deltaWTsKMs;
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
59
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
60 @Override
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
61 public void init(Document request, OutputStream out, CallContext context) {
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
62 log.debug("DeltaWtExporter.init");
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
63 super.init(request, out, context);
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
64 deltaWTsKMs = new ArrayList<DeltaWTsKM>();
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
65 }
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
66
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
67 @Override
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
68 public void generate() throws IOException {
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
69 log.debug("DeltaWtExporter.generate");
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
70 if (facet == null) {
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
71 throw new IOException("invalid (null) facet for exporter");
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
72 }
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
73 else if (facet.equals(FACET_CSV)) {
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
74 generateCSV();
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
75 }
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
76 else if (facet.equals(FACET_PDF)) {
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
77 generatePDF();
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
78 }
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
79 else {
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
80 throw new IOException("invalid facet (" + facet + ") for exporter");
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
81 }
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
82 }
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
83
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
84 @Override
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
85 protected void addData(Object d) {
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
86 log.debug("DeltaWtExporter.addData");
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
87 if (!(d instanceof CalculationResult)) {
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
88 log.warn("Invalid data type");
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
89 return;
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
90 }
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
91
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
92 Object data = ((CalculationResult)d).getData();
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
93 if (!(data instanceof FixResult)) {
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
94 log.warn("Invalid data stored in result.");
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
95 }
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
96 FixResult result = (FixResult)data;
3020
ce796f1db30e FixA: Store AnalysisPeriods into FixResult now.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2994
diff changeset
97 // TODO: replace old code
ce796f1db30e FixA: Store AnalysisPeriods into FixResult now.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2994
diff changeset
98 //deltaWTsKMs.add(result.getDeltaWTsKM());
2787
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
99 }
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
100
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
101 @Override
2993
70469e3d34b9 FixA: Made Delta W/t calculation finally work
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2787
diff changeset
102 protected void writeCSVData(CSVWriter writer) throws IOException {
70469e3d34b9 FixA: Made Delta W/t calculation finally work
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2787
diff changeset
103
70469e3d34b9 FixA: Made Delta W/t calculation finally work
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2787
diff changeset
104 boolean debug = log.isDebugEnabled();
2787
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
105
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
106 writeCSVHeader(writer);
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
107
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
108 NumberFormat kmF = getKMFormatter();
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
109 NumberFormat dwF = getDeltaWFormatter();
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
110
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
111 CallMeta meta = context.getMeta();
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
112 Locale locale = Resources.getLocale(meta);
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
113 DateFormat dF = DateFormat.getDateInstance(DateFormat.SHORT, locale);
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
114
2993
70469e3d34b9 FixA: Made Delta W/t calculation finally work
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2787
diff changeset
115 if (debug) {
70469e3d34b9 FixA: Made Delta W/t calculation finally work
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2787
diff changeset
116 log.debug("DeltaWTsKMs: " + deltaWTsKMs.size());
70469e3d34b9 FixA: Made Delta W/t calculation finally work
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2787
diff changeset
117 }
70469e3d34b9 FixA: Made Delta W/t calculation finally work
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2787
diff changeset
118
2787
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
119 for (DeltaWTsKM deltaWTsKM: deltaWTsKMs) {
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
120 List<DeltaWTsKM.KM> dkms = deltaWTsKM.getKms();
2993
70469e3d34b9 FixA: Made Delta W/t calculation finally work
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2787
diff changeset
121 if (debug) {
70469e3d34b9 FixA: Made Delta W/t calculation finally work
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2787
diff changeset
122 log.debug("DeltaWTsKM.KM: " + dkms.size());
70469e3d34b9 FixA: Made Delta W/t calculation finally work
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2787
diff changeset
123 }
2787
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
124 for (DeltaWTsKM.KM dkm: dkms) {
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
125 double km = dkm.getKm();
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
126 String kmS = kmF.format(km);
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
127 List<DeltaWT> deltaWTs = dkm.getDeltaWTs();
2993
70469e3d34b9 FixA: Made Delta W/t calculation finally work
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2787
diff changeset
128 if (debug) {
70469e3d34b9 FixA: Made Delta W/t calculation finally work
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2787
diff changeset
129 log.debug("deltaWTs: " + deltaWTs.size());
70469e3d34b9 FixA: Made Delta W/t calculation finally work
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2787
diff changeset
130 }
2787
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
131 for (DeltaWT dwt: deltaWTs) {
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
132 double deltaW = dwt.getDeltaW();
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
133 Date date = dwt.getDate();
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
134 String desc = dwt.getDescription();
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
135
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
136 String deltaWS = dwF.format(deltaW);
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
137 String dateS = dF.format(date);
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
138
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
139 writer.writeNext(new String[] {
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
140 kmS,
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
141 deltaWS,
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
142 dateS,
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
143 desc != null ? desc : "" });
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
144 }
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
145 }
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
146 }
2993
70469e3d34b9 FixA: Made Delta W/t calculation finally work
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2787
diff changeset
147 writer.flush();
2787
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
148 }
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
149
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
150
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
151 protected NumberFormat getKMFormatter() {
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
152 return Formatter.getFixDeltaWKM(context);
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
153 }
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
154
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
155 protected NumberFormat getDeltaWFormatter() {
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
156 return Formatter.getFixDeltaWDeltaW(context);
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
157 }
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
158
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
159 protected void writeCSVHeader(CSVWriter writer) {
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
160 log.debug("DeltaWtExporter.writeCSVHeader");
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
161
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
162 writer.writeNext(new String[] {
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
163 msg(CSV_KM_HEADER, DEFAULT_CSV_KM_HEADER),
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
164 msg(CSV_DELTA_W_HEADER, DEFAULT_CSV_DELTA_W_HEADER),
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
165 msg(CSV_T_HEADER, DEFAULT_CSV_T_HEADER),
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
166 msg(CSV_T_DESC_HEADER, DEFAULT_CSV_T_DESC_HEADER)
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
167 });
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
168 }
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
169
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
170 @Override
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
171 protected void writePDF(OutputStream out) {
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
172 // TODO: Implement me!
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
173 }
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
174 }
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
175 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :

http://dive4elements.wald.intevation.org