annotate flys-artifacts/src/main/java/de/intevation/flys/exports/ReferenceCurveExporter.java @ 4282:8b4988815974

Added marker for Ws and Qs in Historical Discharge WQ charts. Therefore, the XYChartGenerator got two new methods addDomainMarker(Marker, boolean) and addValueMarker(Marker, boolean). The boolean parameters determine, if the marker should be visible or not. This is analogous to addAxisSeries(XYSeries, int, boolean).
author Ingo Weinzierl <ingo.weinzierl@intevation.de>
date Mon, 29 Oct 2012 05:59:27 +0100
parents 4ac581062c40
children
rev   line source
2264
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
1 package de.intevation.flys.exports;
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
2
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
3 import au.com.bytecode.opencsv.CSVWriter;
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
4
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
5 import de.intevation.artifacts.CallContext;
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
6 import de.intevation.artifacts.CallMeta;
2787
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2631
diff changeset
7
2264
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
8 import de.intevation.artifacts.common.utils.Config;
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
9
2272
4a8b519b64bd Extend reference curve export to include km location as string.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2270
diff changeset
10 import de.intevation.flys.artifacts.FLYSArtifact;
2264
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
11 import de.intevation.flys.artifacts.WINFOArtifact;
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
12
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
13 import de.intevation.flys.artifacts.model.CalculationResult;
2285
5a00269406f3 Improved CSV export of reference curves, include Qs.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2272
diff changeset
14 import de.intevation.flys.artifacts.model.WWQQ;
2310
ecb76933362f Added PDF export to reference curve calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2290
diff changeset
15 import de.intevation.flys.artifacts.model.WWQQJRDataSource;
2787
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2631
diff changeset
16
2264
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
17 import de.intevation.flys.artifacts.resources.Resources;
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
18
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
19 import de.intevation.flys.utils.FLYSUtils;
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
20
2787
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2631
diff changeset
21 import java.io.IOException;
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2631
diff changeset
22 import java.io.OutputStream;
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2631
diff changeset
23
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2631
diff changeset
24 import java.text.DateFormat;
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2631
diff changeset
25 import java.text.NumberFormat;
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2631
diff changeset
26
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2631
diff changeset
27 import java.util.ArrayList;
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2631
diff changeset
28 import java.util.Date;
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2631
diff changeset
29 import java.util.HashMap;
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2631
diff changeset
30 import java.util.List;
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2631
diff changeset
31 import java.util.Locale;
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2631
diff changeset
32 import java.util.Map;
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2631
diff changeset
33
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2631
diff changeset
34 import net.sf.jasperreports.engine.JRException;
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2631
diff changeset
35 import net.sf.jasperreports.engine.JasperExportManager;
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2631
diff changeset
36 import net.sf.jasperreports.engine.JasperFillManager;
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2631
diff changeset
37 import net.sf.jasperreports.engine.JasperPrint;
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2631
diff changeset
38
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2631
diff changeset
39 import org.apache.log4j.Logger;
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2631
diff changeset
40
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2631
diff changeset
41 import org.w3c.dom.Document;
2576
0611ae467e4a Stub to export the 'W (cm)' column of reference curves conditionally on Gauge presence.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2566
diff changeset
42
2264
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
43 /**
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
44 * (CSV)Exporter for Reference Curves.
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
45 */
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
46 public class ReferenceCurveExporter extends AbstractExporter {
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
47
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
48 /** The logger used in this exporter. */
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
49 private static Logger logger = Logger.getLogger(ReferenceCurveExporter.class);
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
50
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
51 public static final String RC_CSV_KM_HEADER =
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
52 "export.reference_curve.csv.header.km";
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
53
2329
d999062c20e6 Add W(cm) column to csv export of reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2323
diff changeset
54 public static final String RC_CSV_W_CM_HEADER =
d999062c20e6 Add W(cm) column to csv export of reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2323
diff changeset
55 "export.reference_curve.csv.header.w.cm";
d999062c20e6 Add W(cm) column to csv export of reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2323
diff changeset
56
d999062c20e6 Add W(cm) column to csv export of reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2323
diff changeset
57 public static final String RC_CSV_W_M_HEADER =
d999062c20e6 Add W(cm) column to csv export of reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2323
diff changeset
58 "export.reference_curve.csv.header.w.m";
2264
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
59
2270
e92545d2069e Win fight against svn, added further i18n and slightly more data in reference-curve/csv export.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2264
diff changeset
60 public static final String RC_CSV_Q_HEADER =
2631
87085ccea466 Issue 528, 637.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2592
diff changeset
61 "export.reference_curve.csv.header.w.q";
2270
e92545d2069e Win fight against svn, added further i18n and slightly more data in reference-curve/csv export.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2264
diff changeset
62
2272
4a8b519b64bd Extend reference curve export to include km location as string.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2270
diff changeset
63 public static final String CSV_LOCATION_HEADER =
4a8b519b64bd Extend reference curve export to include km location as string.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2270
diff changeset
64 "export.waterlevel.csv.header.location";
4a8b519b64bd Extend reference curve export to include km location as string.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2270
diff changeset
65
4a8b519b64bd Extend reference curve export to include km location as string.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2270
diff changeset
66 public static final String DEFAULT_CSV_LOCATION_HEADER = "Lage";
4a8b519b64bd Extend reference curve export to include km location as string.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2270
diff changeset
67
2264
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
68 public static final String RC_DEFAULT_CSV_KM_HEADER = "Fluss-Km";
2566
8bacd0ce3704 Partial fix flys/issue637 (wording).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2329
diff changeset
69 public static final String RC_DEFAULT_CSV_W_M_HEADER = "W (m + NHN)";
8bacd0ce3704 Partial fix flys/issue637 (wording).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2329
diff changeset
70 public static final String RC_DEFAULT_CSV_W_CM_HEADER = "W (cm am Pegel)";
2631
87085ccea466 Issue 528, 637.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2592
diff changeset
71 public static final String RC_DEFAULT_CSV_Q_HEADER = "gleichw. Q (m\u00b3/s)";
2264
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
72
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
73 public static final String PDF_HEADER_MODE = "export.reference_curve.pdf.mode";
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
74 public static final String JASPER_FILE = "export.reference_curve.pdf.file";
2631
87085ccea466 Issue 528, 637.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2592
diff changeset
75 public static final String JASPER_FILE_GAUGE = "export.reference_curve.pdf.file.gauge";
87085ccea466 Issue 528, 637.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2592
diff changeset
76 public static final String JASPER_FILE_GAUGE_END = "export.reference_curve.pdf.file.gauge.end";
87085ccea466 Issue 528, 637.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2592
diff changeset
77 public static final String JASPER_FILE_GAUGE_START_END = "export.reference_curve.pdf.file.gauge.start.end";
2264
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
78
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
79 /** The storage that contains all WKms objects for the different facets. */
2285
5a00269406f3 Improved CSV export of reference curves, include Qs.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2272
diff changeset
80 protected List<WWQQ[]> data;
2264
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
81
2576
0611ae467e4a Stub to export the 'W (cm)' column of reference curves conditionally on Gauge presence.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2566
diff changeset
82 protected boolean startAtGauge = false;
2264
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
83
2576
0611ae467e4a Stub to export the 'W (cm)' column of reference curves conditionally on Gauge presence.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2566
diff changeset
84 protected boolean endAtGauge = false;
0611ae467e4a Stub to export the 'W (cm)' column of reference curves conditionally on Gauge presence.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2566
diff changeset
85
3076
5642a83420f2 FLYS artifacts: Removed trailing whitespace.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2787
diff changeset
86
2787
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2631
diff changeset
87 @Override
2264
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
88 public void init(Document request, OutputStream out, CallContext context) {
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
89 logger.debug("ReferenceCurveExporter.init");
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
90
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
91 super.init(request, out, context);
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
92
2285
5a00269406f3 Improved CSV export of reference curves, include Qs.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2272
diff changeset
93 this.data = new ArrayList<WWQQ[]>();
2264
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
94 }
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
95
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
96
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
97 /**
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
98 * Genereate data in csv format.
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
99 */
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
100 @Override
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
101 public void generate()
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
102 throws IOException
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
103 {
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
104 logger.debug("ReferenceCurveExporter.generate");
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
105
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
106 if (facet == null) {
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
107 throw new IOException("invalid (null) facet for exporter");
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
108 }
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
109 else if (facet.equals(AbstractExporter.FACET_CSV)) {
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
110 generateCSV();
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
111 }
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
112 else if (facet.equals(AbstractExporter.FACET_PDF)) {
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
113 generatePDF();
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
114 }
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
115 else {
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
116 throw new IOException("invalid facet (" + facet + ") for exporter");
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
117 }
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
118 }
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
119
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
120
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
121 /**
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
122 * Adds given data.
2576
0611ae467e4a Stub to export the 'W (cm)' column of reference curves conditionally on Gauge presence.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2566
diff changeset
123 * @param d A CalculationResult with WWQQ[].
2264
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
124 */
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
125 @Override
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
126 protected void addData(Object d) {
2285
5a00269406f3 Improved CSV export of reference curves, include Qs.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2272
diff changeset
127 logger.debug("ReferenceCurveExporter.addData");
5a00269406f3 Improved CSV export of reference curves, include Qs.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2272
diff changeset
128
2264
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
129 if (d instanceof CalculationResult) {
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
130 d = ((CalculationResult)d).getData();
2285
5a00269406f3 Improved CSV export of reference curves, include Qs.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2272
diff changeset
131 if (d instanceof WWQQ []) {
2576
0611ae467e4a Stub to export the 'W (cm)' column of reference curves conditionally on Gauge presence.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2566
diff changeset
132 WWQQ[] wwqqs = (WWQQ []) d;
0611ae467e4a Stub to export the 'W (cm)' column of reference curves conditionally on Gauge presence.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2566
diff changeset
133 for (WWQQ wwqq: wwqqs) {
0611ae467e4a Stub to export the 'W (cm)' column of reference curves conditionally on Gauge presence.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2566
diff changeset
134 if (wwqq.startAtGauge()) {
0611ae467e4a Stub to export the 'W (cm)' column of reference curves conditionally on Gauge presence.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2566
diff changeset
135 startAtGauge = true;
0611ae467e4a Stub to export the 'W (cm)' column of reference curves conditionally on Gauge presence.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2566
diff changeset
136 }
0611ae467e4a Stub to export the 'W (cm)' column of reference curves conditionally on Gauge presence.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2566
diff changeset
137 // TODO this one probably has to be inverted.
0611ae467e4a Stub to export the 'W (cm)' column of reference curves conditionally on Gauge presence.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2566
diff changeset
138 if (wwqq.endAtGauge()) {
0611ae467e4a Stub to export the 'W (cm)' column of reference curves conditionally on Gauge presence.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2566
diff changeset
139 endAtGauge = true;
0611ae467e4a Stub to export the 'W (cm)' column of reference curves conditionally on Gauge presence.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2566
diff changeset
140 }
0611ae467e4a Stub to export the 'W (cm)' column of reference curves conditionally on Gauge presence.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2566
diff changeset
141 }
0611ae467e4a Stub to export the 'W (cm)' column of reference curves conditionally on Gauge presence.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2566
diff changeset
142 data.add(wwqqs);
2285
5a00269406f3 Improved CSV export of reference curves, include Qs.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2272
diff changeset
143 logger.debug("ReferenceCurveExporter.addData wwqq[].");
5a00269406f3 Improved CSV export of reference curves, include Qs.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2272
diff changeset
144 }
5a00269406f3 Improved CSV export of reference curves, include Qs.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2272
diff changeset
145 else {
5a00269406f3 Improved CSV export of reference curves, include Qs.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2272
diff changeset
146 logger.warn("ReferenceCurveExporter.addData/1 unknown type ("
5a00269406f3 Improved CSV export of reference curves, include Qs.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2272
diff changeset
147 + d + ").");
2264
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
148 }
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
149 }
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
150 else {
2285
5a00269406f3 Improved CSV export of reference curves, include Qs.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2272
diff changeset
151 logger.warn("ReferenceCurveExporter.addData/2 unknown type ("
5a00269406f3 Improved CSV export of reference curves, include Qs.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2272
diff changeset
152 + d + ").");
2264
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
153 }
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
154 }
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
155
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
156
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
157 /**
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
158 * Lets writer write all data (including header).
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
159 * @param writer Writer to write data with.
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
160 */
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
161 @Override
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
162 protected void writeCSVData(CSVWriter writer) {
2787
e63969c173e9 FixA: Added CSV export for Delta W/t values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2631
diff changeset
163 logger.debug("ReferenceCurveExporter.writeData");
2264
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
164
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
165 writeCSVHeader(writer);
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
166
2285
5a00269406f3 Improved CSV export of reference curves, include Qs.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2272
diff changeset
167 for (WWQQ[] tmp: data) {
5a00269406f3 Improved CSV export of reference curves, include Qs.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2272
diff changeset
168 for (WWQQ ww: tmp) {
5a00269406f3 Improved CSV export of reference curves, include Qs.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2272
diff changeset
169 wWQQ2CSV(writer, ww);
2264
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
170 }
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
171 }
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
172 }
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
173
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
174
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
175 /**
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
176 * Lets csvwriter write the header (first line in file).
3270
4ac581062c40 Fix various documentation issues.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 3076
diff changeset
177 * @param writer Writer to write header with.
2264
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
178 */
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
179 protected void writeCSVHeader(CSVWriter writer) {
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
180 logger.info("ReferenceCurveExporter.writeCSVHeader");
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
181
2578
e3fd2d2fab6d Partial fix flys/issue 528 (csv of reference curves. pdf missing).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2577
diff changeset
182 StepCSVWriter stepWriter = new StepCSVWriter();
e3fd2d2fab6d Partial fix flys/issue 528 (csv of reference curves. pdf missing).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2577
diff changeset
183 stepWriter.setCSVWriter(writer);
2576
0611ae467e4a Stub to export the 'W (cm)' column of reference curves conditionally on Gauge presence.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2566
diff changeset
184
2578
e3fd2d2fab6d Partial fix flys/issue 528 (csv of reference curves. pdf missing).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2577
diff changeset
185 stepWriter.addNexts(
2270
e92545d2069e Win fight against svn, added further i18n and slightly more data in reference-curve/csv export.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2264
diff changeset
186 msg(RC_CSV_KM_HEADER, RC_DEFAULT_CSV_KM_HEADER),
2578
e3fd2d2fab6d Partial fix flys/issue 528 (csv of reference curves. pdf missing).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2577
diff changeset
187 msg(RC_CSV_W_M_HEADER, RC_DEFAULT_CSV_W_M_HEADER)
e3fd2d2fab6d Partial fix flys/issue 528 (csv of reference curves. pdf missing).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2577
diff changeset
188 );
e3fd2d2fab6d Partial fix flys/issue 528 (csv of reference curves. pdf missing).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2577
diff changeset
189 if (startAtGauge) {
e3fd2d2fab6d Partial fix flys/issue 528 (csv of reference curves. pdf missing).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2577
diff changeset
190 stepWriter.addNext(
e3fd2d2fab6d Partial fix flys/issue 528 (csv of reference curves. pdf missing).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2577
diff changeset
191 msg(RC_CSV_W_CM_HEADER, RC_DEFAULT_CSV_W_CM_HEADER));
e3fd2d2fab6d Partial fix flys/issue 528 (csv of reference curves. pdf missing).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2577
diff changeset
192 }
e3fd2d2fab6d Partial fix flys/issue 528 (csv of reference curves. pdf missing).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2577
diff changeset
193 stepWriter.addNexts(
e3fd2d2fab6d Partial fix flys/issue 528 (csv of reference curves. pdf missing).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2577
diff changeset
194 msg(RC_CSV_Q_HEADER, RC_DEFAULT_CSV_Q_HEADER),
2272
4a8b519b64bd Extend reference curve export to include km location as string.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2270
diff changeset
195 msg(CSV_LOCATION_HEADER, DEFAULT_CSV_LOCATION_HEADER),
2578
e3fd2d2fab6d Partial fix flys/issue 528 (csv of reference curves. pdf missing).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2577
diff changeset
196 msg(RC_CSV_KM_HEADER, RC_DEFAULT_CSV_KM_HEADER),
2576
0611ae467e4a Stub to export the 'W (cm)' column of reference curves conditionally on Gauge presence.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2566
diff changeset
197 msg(RC_CSV_W_M_HEADER, RC_DEFAULT_CSV_W_M_HEADER)
2578
e3fd2d2fab6d Partial fix flys/issue 528 (csv of reference curves. pdf missing).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2577
diff changeset
198 );
2576
0611ae467e4a Stub to export the 'W (cm)' column of reference curves conditionally on Gauge presence.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2566
diff changeset
199 if (endAtGauge) {
2578
e3fd2d2fab6d Partial fix flys/issue 528 (csv of reference curves. pdf missing).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2577
diff changeset
200 stepWriter.addNext(
e3fd2d2fab6d Partial fix flys/issue 528 (csv of reference curves. pdf missing).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2577
diff changeset
201 msg(RC_CSV_W_CM_HEADER, RC_DEFAULT_CSV_W_CM_HEADER)
e3fd2d2fab6d Partial fix flys/issue 528 (csv of reference curves. pdf missing).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2577
diff changeset
202 );
2576
0611ae467e4a Stub to export the 'W (cm)' column of reference curves conditionally on Gauge presence.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2566
diff changeset
203 }
2578
e3fd2d2fab6d Partial fix flys/issue 528 (csv of reference curves. pdf missing).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2577
diff changeset
204 stepWriter.addNexts(
e3fd2d2fab6d Partial fix flys/issue 528 (csv of reference curves. pdf missing).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2577
diff changeset
205 msg(RC_CSV_Q_HEADER, RC_DEFAULT_CSV_Q_HEADER),
e3fd2d2fab6d Partial fix flys/issue 528 (csv of reference curves. pdf missing).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2577
diff changeset
206 msg(CSV_LOCATION_HEADER, DEFAULT_CSV_LOCATION_HEADER)
e3fd2d2fab6d Partial fix flys/issue 528 (csv of reference curves. pdf missing).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2577
diff changeset
207 );
2576
0611ae467e4a Stub to export the 'W (cm)' column of reference curves conditionally on Gauge presence.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2566
diff changeset
208
2578
e3fd2d2fab6d Partial fix flys/issue 528 (csv of reference curves. pdf missing).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2577
diff changeset
209 stepWriter.flush();
2264
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
210 }
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
211
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
212
2285
5a00269406f3 Improved CSV export of reference curves, include Qs.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2272
diff changeset
213 protected void wWQQ2CSV(CSVWriter writer, WWQQ ww) {
5a00269406f3 Improved CSV export of reference curves, include Qs.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2272
diff changeset
214 logger.debug("ReferenceCurveExporter.wWQQ2CSV");
2264
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
215
2285
5a00269406f3 Improved CSV export of reference curves, include Qs.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2272
diff changeset
216 NumberFormat kmf = getKmFormatter();
5a00269406f3 Improved CSV export of reference curves, include Qs.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2272
diff changeset
217 NumberFormat wf = getWFormatter();
5a00269406f3 Improved CSV export of reference curves, include Qs.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2272
diff changeset
218 NumberFormat qf = getQFormatter();
5a00269406f3 Improved CSV export of reference curves, include Qs.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2272
diff changeset
219
2576
0611ae467e4a Stub to export the 'W (cm)' column of reference curves conditionally on Gauge presence.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2566
diff changeset
220 int size = ww.size();
2264
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
221
2272
4a8b519b64bd Extend reference curve export to include km location as string.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2270
diff changeset
222 FLYSArtifact flys = (FLYSArtifact) master;
4a8b519b64bd Extend reference curve export to include km location as string.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2270
diff changeset
223
2576
0611ae467e4a Stub to export the 'W (cm)' column of reference curves conditionally on Gauge presence.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2566
diff changeset
224 StepCSVWriter stepWriter = new StepCSVWriter();
0611ae467e4a Stub to export the 'W (cm)' column of reference curves conditionally on Gauge presence.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2566
diff changeset
225 stepWriter.setCSVWriter(writer);
0611ae467e4a Stub to export the 'W (cm)' column of reference curves conditionally on Gauge presence.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2566
diff changeset
226
2272
4a8b519b64bd Extend reference curve export to include km location as string.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2270
diff changeset
227 String startLocationDescription = FLYSUtils.getLocationDescription(
4a8b519b64bd Extend reference curve export to include km location as string.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2270
diff changeset
228 flys, ww.getStartKm());
4a8b519b64bd Extend reference curve export to include km location as string.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2270
diff changeset
229
4a8b519b64bd Extend reference curve export to include km location as string.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2270
diff changeset
230 String endLocationDescription = FLYSUtils.getLocationDescription(
4a8b519b64bd Extend reference curve export to include km location as string.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2270
diff changeset
231 flys, ww.getEndKm());
4a8b519b64bd Extend reference curve export to include km location as string.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2270
diff changeset
232
2264
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
233 for (int i = 0; i < size; i ++) {
2578
e3fd2d2fab6d Partial fix flys/issue 528 (csv of reference curves. pdf missing).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2577
diff changeset
234 stepWriter.addNexts(kmf.format(ww.getStartKm()));
2577
4514b0158b10 Fixed column order.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2576
diff changeset
235 stepWriter.addNext(wf.format(ww.getW1(i)));
2576
0611ae467e4a Stub to export the 'W (cm)' column of reference curves conditionally on Gauge presence.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2566
diff changeset
236 if (startAtGauge) {
0611ae467e4a Stub to export the 'W (cm)' column of reference curves conditionally on Gauge presence.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2566
diff changeset
237 stepWriter.addNext(wf.format(ww.getRelHeight1Cm(i)));
0611ae467e4a Stub to export the 'W (cm)' column of reference curves conditionally on Gauge presence.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2566
diff changeset
238 }
0611ae467e4a Stub to export the 'W (cm)' column of reference curves conditionally on Gauge presence.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2566
diff changeset
239 stepWriter.addNexts(
2285
5a00269406f3 Improved CSV export of reference curves, include Qs.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2272
diff changeset
240 qf.format(ww.getQ1(i)), // "Q"
2578
e3fd2d2fab6d Partial fix flys/issue 528 (csv of reference curves. pdf missing).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2577
diff changeset
241 startLocationDescription,
e3fd2d2fab6d Partial fix flys/issue 528 (csv of reference curves. pdf missing).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2577
diff changeset
242 kmf.format(ww.getEndKm())
e3fd2d2fab6d Partial fix flys/issue 528 (csv of reference curves. pdf missing).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2577
diff changeset
243 );
2577
4514b0158b10 Fixed column order.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2576
diff changeset
244 stepWriter.addNext(wf.format(ww.getW2(i)));
2576
0611ae467e4a Stub to export the 'W (cm)' column of reference curves conditionally on Gauge presence.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2566
diff changeset
245 if (endAtGauge) {
2577
4514b0158b10 Fixed column order.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2576
diff changeset
246 if (ww.endAtGauge()) {
4514b0158b10 Fixed column order.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2576
diff changeset
247 stepWriter.addNext(wf.format(ww.getRelHeight2Cm(i)));
4514b0158b10 Fixed column order.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2576
diff changeset
248 }
4514b0158b10 Fixed column order.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2576
diff changeset
249 else {
4514b0158b10 Fixed column order.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2576
diff changeset
250 stepWriter.addNext("-");
4514b0158b10 Fixed column order.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2576
diff changeset
251 }
2576
0611ae467e4a Stub to export the 'W (cm)' column of reference curves conditionally on Gauge presence.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2566
diff changeset
252 }
2578
e3fd2d2fab6d Partial fix flys/issue 528 (csv of reference curves. pdf missing).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2577
diff changeset
253 stepWriter.addNexts(
e3fd2d2fab6d Partial fix flys/issue 528 (csv of reference curves. pdf missing).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2577
diff changeset
254 qf.format(ww.getQ2(i)), // "Q"
e3fd2d2fab6d Partial fix flys/issue 528 (csv of reference curves. pdf missing).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2577
diff changeset
255 endLocationDescription
2576
0611ae467e4a Stub to export the 'W (cm)' column of reference curves conditionally on Gauge presence.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2566
diff changeset
256 );
0611ae467e4a Stub to export the 'W (cm)' column of reference curves conditionally on Gauge presence.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2566
diff changeset
257 stepWriter.flush();
2264
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
258 }
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
259 }
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
260
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
261
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
262 @Override
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
263 protected void writePDF(OutputStream out) {
2310
ecb76933362f Added PDF export to reference curve calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2290
diff changeset
264 WWQQJRDataSource source = createJRData();
2264
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
265
2631
87085ccea466 Issue 528, 637.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2592
diff changeset
266 String filename = JASPER_FILE;
87085ccea466 Issue 528, 637.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2592
diff changeset
267 if (startAtGauge && endAtGauge) {
87085ccea466 Issue 528, 637.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2592
diff changeset
268 filename = JASPER_FILE_GAUGE_START_END;
87085ccea466 Issue 528, 637.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2592
diff changeset
269 }
87085ccea466 Issue 528, 637.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2592
diff changeset
270 else if (startAtGauge) {
87085ccea466 Issue 528, 637.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2592
diff changeset
271 filename = JASPER_FILE_GAUGE;
87085ccea466 Issue 528, 637.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2592
diff changeset
272 }
87085ccea466 Issue 528, 637.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2592
diff changeset
273 else if (endAtGauge) {
87085ccea466 Issue 528, 637.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2592
diff changeset
274 filename = JASPER_FILE_GAUGE_END;
87085ccea466 Issue 528, 637.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2592
diff changeset
275 }
87085ccea466 Issue 528, 637.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2592
diff changeset
276
2264
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
277 String jasperFile = Resources.getMsg(
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
278 context.getMeta(),
2631
87085ccea466 Issue 528, 637.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2592
diff changeset
279 filename,
2310
ecb76933362f Added PDF export to reference curve calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2290
diff changeset
280 "/jasper/reference_en.jasper");
2264
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
281 String confPath = Config.getConfigDirectory().toString();
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
282
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
283 Map parameters = new HashMap();
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
284 parameters.put("ReportTitle", "Exported Data");
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
285 try {
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
286 JasperPrint print = JasperFillManager.fillReport(
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
287 confPath + jasperFile,
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
288 parameters,
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
289 source);
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
290 JasperExportManager.exportReportToPdfStream(print, out);
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
291 }
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
292 catch(JRException je) {
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
293 logger.warn("Error generating PDF Report!");
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
294 je.printStackTrace();
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
295 }
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
296 }
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
297
2310
ecb76933362f Added PDF export to reference curve calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2290
diff changeset
298 protected WWQQJRDataSource createJRData() {
ecb76933362f Added PDF export to reference curve calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2290
diff changeset
299 WWQQJRDataSource source = new WWQQJRDataSource();
2264
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
300
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
301 addMetaData(source);
2310
ecb76933362f Added PDF export to reference curve calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2290
diff changeset
302
ecb76933362f Added PDF export to reference curve calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2290
diff changeset
303 for (WWQQ[] tmp: data) {
ecb76933362f Added PDF export to reference curve calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2290
diff changeset
304 for (WWQQ ww: tmp) {
ecb76933362f Added PDF export to reference curve calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2290
diff changeset
305 addWWQQData(source, ww);
2264
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
306 }
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
307 }
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
308 return source;
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
309 }
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
310
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
311
2310
ecb76933362f Added PDF export to reference curve calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2290
diff changeset
312 protected void addMetaData(WWQQJRDataSource source) {
2264
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
313 CallMeta meta = context.getMeta();
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
314
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
315 WINFOArtifact flys = (WINFOArtifact) master;
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
316
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
317 source.addMetaData ("river", FLYSUtils.getRivername(flys));
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
318
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
319 Locale locale = Resources.getLocale(meta);
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
320 DateFormat df = DateFormat.getDateInstance(DateFormat.SHORT, locale);
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
321
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
322 source.addMetaData("date", df.format(new Date()));
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
323
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
324 source.addMetaData("calculation", Resources.getMsg(
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
325 locale,
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
326 PDF_HEADER_MODE,
2310
ecb76933362f Added PDF export to reference curve calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2290
diff changeset
327 "Reference Curve"));
2264
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
328 }
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
329
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
330
2310
ecb76933362f Added PDF export to reference curve calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2290
diff changeset
331 protected void addWWQQData(WWQQJRDataSource source, WWQQ ww) {
ecb76933362f Added PDF export to reference curve calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2290
diff changeset
332 NumberFormat kmf = getKmFormatter();
ecb76933362f Added PDF export to reference curve calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2290
diff changeset
333 NumberFormat wf = getWFormatter();
ecb76933362f Added PDF export to reference curve calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2290
diff changeset
334 NumberFormat qf = getQFormatter();
2264
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
335
2310
ecb76933362f Added PDF export to reference curve calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2290
diff changeset
336 int size = ww.size();
ecb76933362f Added PDF export to reference curve calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2290
diff changeset
337
2576
0611ae467e4a Stub to export the 'W (cm)' column of reference curves conditionally on Gauge presence.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2566
diff changeset
338 FLYSArtifact flys = (FLYSArtifact) master;
2310
ecb76933362f Added PDF export to reference curve calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2290
diff changeset
339
ecb76933362f Added PDF export to reference curve calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2290
diff changeset
340 String startLocationDescription = FLYSUtils.getLocationDescription(
ecb76933362f Added PDF export to reference curve calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2290
diff changeset
341 flys, ww.getStartKm());
ecb76933362f Added PDF export to reference curve calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2290
diff changeset
342
ecb76933362f Added PDF export to reference curve calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2290
diff changeset
343 String endLocationDescription = FLYSUtils.getLocationDescription(
ecb76933362f Added PDF export to reference curve calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2290
diff changeset
344 flys, ww.getEndKm());
ecb76933362f Added PDF export to reference curve calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2290
diff changeset
345
ecb76933362f Added PDF export to reference curve calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2290
diff changeset
346 for (int i = 0; i < size; i ++) {
2631
87085ccea466 Issue 528, 637.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2592
diff changeset
347 String start = "-";
87085ccea466 Issue 528, 637.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2592
diff changeset
348 String end = "-";
87085ccea466 Issue 528, 637.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2592
diff changeset
349 if (startAtGauge) {
87085ccea466 Issue 528, 637.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2592
diff changeset
350 start = wf.format(ww.getRelHeight1Cm(i));
87085ccea466 Issue 528, 637.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2592
diff changeset
351 }
87085ccea466 Issue 528, 637.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2592
diff changeset
352 if (ww.endAtGauge()) {
87085ccea466 Issue 528, 637.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2592
diff changeset
353 end = wf.format(ww.getRelHeight2Cm(i));
87085ccea466 Issue 528, 637.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2592
diff changeset
354 }
2264
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
355 source.addData(new String[] {
2310
ecb76933362f Added PDF export to reference curve calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2290
diff changeset
356 kmf.format(ww.getStartKm()),
ecb76933362f Added PDF export to reference curve calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2290
diff changeset
357 startLocationDescription,
ecb76933362f Added PDF export to reference curve calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2290
diff changeset
358 wf.format(ww.getW1(i)),
ecb76933362f Added PDF export to reference curve calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2290
diff changeset
359 qf.format(ww.getQ1(i)), // "Q"
ecb76933362f Added PDF export to reference curve calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2290
diff changeset
360 kmf.format(ww.getEndKm()),
ecb76933362f Added PDF export to reference curve calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2290
diff changeset
361 endLocationDescription,
ecb76933362f Added PDF export to reference curve calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2290
diff changeset
362 wf.format(ww.getW2(i)),
2631
87085ccea466 Issue 528, 637.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2592
diff changeset
363 qf.format(ww.getQ2(i)), // "Q"
87085ccea466 Issue 528, 637.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2592
diff changeset
364 start,
87085ccea466 Issue 528, 637.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2592
diff changeset
365 end
2264
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
366 });
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
367 }
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
368 }
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
369 }
d974e4589f5a Primitive, incomplete CSV export for reference curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
370 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :

http://dive4elements.wald.intevation.org