annotate artifacts/src/main/java/org/dive4elements/river/artifacts/common/ExportContextCSV.java @ 9195:a4121ec450d6

'ca.'-issue ExportContextCSV+PDF separated uinfo.inundationduration url export
author gernotbelger
date Fri, 29 Jun 2018 14:52:54 +0200
parents 3931e8741f53
children 740d65e4aa14
rev   line source
9150
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
1 /** Copyright (C) 2017 by Bundesanstalt für Gewässerkunde
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
2 * Software engineering by
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
3 * Björnsen Beratende Ingenieure GmbH
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
4 * Dr. Schumacher Ingenieurbüro für Wasser und Umwelt
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
5 *
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
6 * This file is Free Software under the GNU AGPL (>=v3)
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
7 * and comes with ABSOLUTELY NO WARRANTY! Check out the
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
8 * documentation coming with Dive4Elements River for details.
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
9 */
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
10 package org.dive4elements.river.artifacts.common;
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
11
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
12 import java.text.DateFormat;
9171
f1be005f0c46 tab titles from server
gernotbelger
parents: 9154
diff changeset
13 import java.util.ArrayList;
f1be005f0c46 tab titles from server
gernotbelger
parents: 9154
diff changeset
14 import java.util.Collection;
9150
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
15 import java.util.Date;
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
16 import java.util.Locale;
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
17
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
18 import org.apache.commons.lang.math.DoubleRange;
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
19 import org.dive4elements.artifacts.CallContext;
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
20 import org.dive4elements.artifacts.CallMeta;
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
21 import org.dive4elements.river.FLYS;
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
22 import org.dive4elements.river.artifacts.resources.Resources;
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
23 import org.dive4elements.river.artifacts.sinfo.common.SInfoI18NStrings;
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
24 import org.dive4elements.river.artifacts.sinfo.util.BedHeightInfo;
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
25 import org.dive4elements.river.artifacts.sinfo.util.RiverInfo;
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
26 import org.dive4elements.river.artifacts.sinfo.util.WstInfo;
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
27
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
28 import au.com.bytecode.opencsv.CSVWriter;
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
29
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
30 /**
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
31 * @author Domenico Nardi Tironi
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
32 *
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
33 */
9195
a4121ec450d6 'ca.'-issue
gernotbelger
parents: 9188
diff changeset
34 public final class ExportContextCSV extends AbstractExportContext {
9150
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
35
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
36 private static final String CSV_META_HEADER_EVALUATOR = "sinfo.export.flow_depth.csv.meta.header.sounding.evaluator";
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
37
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
38 private static final String CSV_META_HEADER_SOUNDING = "sinfo.export.flow_depth.csv.meta.header.sounding";
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
39
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
40 private static final String CSV_META_HEADER_SOUNDING_YEAR = "sinfo.export.flow_depth.csv.meta.header.sounding.year";
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
41
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
42 private static final String CSV_META_HEADER_SOUNDING_TYPE = "sinfo.export.flow_depth.csv.meta.header.sounding.type";
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
43
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
44 private static final String CSV_META_HEADER_SOUNDING_PRJ = "sinfo.export.flow_depth.csv.meta.header.sounding.prj";
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
45
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
46 private static final String CSV_META_HEADER_SOUNDING_ELEVATIOIN_MODEL = "sinfo.export.flow_depth.csv.meta.header.sounding.elevationmodel";
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
47
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
48 private static final String CSV_META_HEADER_SOUNDING_ELEVATIOIN_MODEL_ORIGINAL = "sinfo.export.flow_depth.csv.meta.header.sounding.elevationmodel.original";
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
49
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
50 private final CSVWriter writer;
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
51
9195
a4121ec450d6 'ca.'-issue
gernotbelger
parents: 9188
diff changeset
52 private final AbstractCalculationResults<?> results;
9150
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
53
9195
a4121ec450d6 'ca.'-issue
gernotbelger
parents: 9188
diff changeset
54 public ExportContextCSV(final CallContext context, final CSVWriter writer, final AbstractCalculationResults<?> results) {
a4121ec450d6 'ca.'-issue
gernotbelger
parents: 9188
diff changeset
55 super(context, results);
9150
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
56
9195
a4121ec450d6 'ca.'-issue
gernotbelger
parents: 9188
diff changeset
57 this.writer = writer;
a4121ec450d6 'ca.'-issue
gernotbelger
parents: 9188
diff changeset
58 this.results = results;
9150
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
59 }
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
60
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
61 public final void writeCSVMetaEntry(final String message, final Object... messageArgs) {
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
62
9195
a4121ec450d6 'ca.'-issue
gernotbelger
parents: 9188
diff changeset
63 final CallMeta meta = getContext().getMeta();
9150
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
64
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
65 this.writer.writeNext(new String[] { Resources.getMsg(meta, message, message, messageArgs) });
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
66 }
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
67
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
68 public void writeBlankLine() {
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
69 writeCSVLine(new String[] { "" });
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
70 }
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
71
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
72 // *** CUSTOM STUFF that is used multiple times ***///
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
73
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
74 public final void writeCSVSoundingMetadata(final BedHeightInfo sounding) {
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
75 // "##METADATEN PEILUNG"
9154
cd24db77f044 little bugfix on soundings
gernotbelger
parents: 9150
diff changeset
76 writeCSVSoundingMetadata(sounding, CSV_META_HEADER_SOUNDING);
9150
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
77
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
78 }
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
79
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
80 public void writeCSVLine(final String[] line) {
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
81 this.writer.writeNext(line);
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
82 }
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
83
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
84 public String formatCsvHeader(final IResultType type) {
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
85 return msg(type.getCsvHeader());
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
86 }
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
87
9195
a4121ec450d6 'ca.'-issue
gernotbelger
parents: 9188
diff changeset
88 public final void writeCSVGlobalMetadataDefaults() {
9150
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
89 // TODO: results as member
9195
a4121ec450d6 'ca.'-issue
gernotbelger
parents: 9188
diff changeset
90 final String calcModeLabel = this.results.getCalcModeLabel();
a4121ec450d6 'ca.'-issue
gernotbelger
parents: 9188
diff changeset
91 final RiverInfo river = this.results.getRiver();
a4121ec450d6 'ca.'-issue
gernotbelger
parents: 9188
diff changeset
92 final DoubleRange calcRange = this.results.getCalcRange();
9150
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
93
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
94 writeCSVMetaEntry(I18NStrings.CSV_META_HEADER_RESULT, msg(I18NStrings.CSV_META_HEADER_RESULT_LABEL), river.getName(), calcModeLabel);
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
95
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
96 // "# FLYS-Version: "
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
97 writeCSVMetaEntry(I18NStrings.CSV_META_VERSION, msg(I18NStrings.CSV_META_VERSION_LABEL), FLYS.VERSION);
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
98
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
99 // "# Bearbeiter: "
9195
a4121ec450d6 'ca.'-issue
gernotbelger
parents: 9188
diff changeset
100 writeCSVMetaEntry(I18NStrings.CSV_META_USER, msg(I18NStrings.CSV_META_USER_LABEL), this.results.getUser());
9150
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
101
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
102 // "# Datum der Erstellung: "
9195
a4121ec450d6 'ca.'-issue
gernotbelger
parents: 9188
diff changeset
103 final Locale locale = Resources.getLocale(getContext().getMeta());
9150
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
104 final DateFormat df = DateFormat.getDateInstance(DateFormat.SHORT, locale);
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
105 writeCSVMetaEntry(I18NStrings.CSV_META_CREATION, msg(I18NStrings.CSV_META_CREATION_LABEL), df.format(new Date()));
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
106
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
107 // "# Gewässer: "
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
108 writeCSVMetaEntry(I18NStrings.CSV_META_RIVER, msg(I18NStrings.CSV_META_RIVER_LABEL), river.getName());
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
109
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
110 // "# Höhensystem des Flusses: "
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
111 writeCSVMetaEntry(I18NStrings.CSV_META_HEIGHT_UNIT_RIVER, river.getWstUnit());
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
112
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
113 if (calcRange != null) {
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
114 // "# Ort/Bereich (km): "
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
115 writeCSVMetaEntry(I18NStrings.CSV_META_RANGE, msg(I18NStrings.CSV_META_RANGE_LABEL), getKmFormatter().format(calcRange.getMinimumDouble()),
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
116 getKmFormatter().format(calcRange.getMaximumDouble()));
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
117 }
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
118 }
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
119
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
120 public final void writeCSVWaterlevelMetadata(final WstInfo wst) {
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
121 writeCSVWaterlevelMetadata(wst, SInfoI18NStrings.CSV_META_HEADER_WATERLEVEL); // default Label; used in 99%
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
122 }
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
123
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
124 public final void writeCSVWaterlevelMetadata(final WstInfo wst, final String mainLabel) {
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
125 // "##METADATEN WASSERSPIEGELLAGE"
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
126 writeCSVMetaEntry(mainLabel);
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
127
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
128 // "# Bezeichnung der Wasserspiegellage: "
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
129 writeCSVMetaEntry(SInfoI18NStrings.CSV_META_HEADER_WATERLEVEL_NAME, wst.getLabel());
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
130
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
131 // "# Bezugspegel: "
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
132 writeCSVMetaEntry(SInfoI18NStrings.CSV_META_HEADER_WATERLEVEL_GAUGE, wst.getGauge());
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
133
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
134 // "# Jahr/Zeitraum der Wasserspiegellage: "
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
135 final int year = wst.getYear();
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
136 if (year > 0)
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
137 writeCSVMetaEntry(SInfoI18NStrings.CSV_META_HEADER_WATERLEVEL_YEAR, Integer.toString(year));
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
138 }
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
139
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
140 /**
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
141 * Formats header with unit: msg [unit]
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
142 */
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
143
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
144 public String msgUnitCSV(final IResultType typeWithUnit) { // TODO: use generic Type!
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
145 final String unit = msg(typeWithUnit.getUnit());
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
146 return msgUnitCSV(typeWithUnit, unit);
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
147 }
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
148
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
149 public String msgUnitCSV(final IResultType type, final String unit) {
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
150 final String msg = msg(type.getCsvHeader());
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
151 return String.format("%s [%s]", msg, unit);
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
152 }
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
153
9154
cd24db77f044 little bugfix on soundings
gernotbelger
parents: 9150
diff changeset
154 public void writeCSVSoundingMetadata(final BedHeightInfo sounding, final String label) {
cd24db77f044 little bugfix on soundings
gernotbelger
parents: 9150
diff changeset
155
cd24db77f044 little bugfix on soundings
gernotbelger
parents: 9150
diff changeset
156 // "##METADATEN PEILUNG"
cd24db77f044 little bugfix on soundings
gernotbelger
parents: 9150
diff changeset
157 writeCSVMetaEntry(label);
cd24db77f044 little bugfix on soundings
gernotbelger
parents: 9150
diff changeset
158
cd24db77f044 little bugfix on soundings
gernotbelger
parents: 9150
diff changeset
159 // "# Jahr der Peilung: "
cd24db77f044 little bugfix on soundings
gernotbelger
parents: 9150
diff changeset
160 writeCSVMetaEntry(CSV_META_HEADER_SOUNDING_YEAR, Integer.toString(sounding.getYear()));
cd24db77f044 little bugfix on soundings
gernotbelger
parents: 9150
diff changeset
161 // "# Aufnahmeart: "
cd24db77f044 little bugfix on soundings
gernotbelger
parents: 9150
diff changeset
162 writeCSVMetaEntry(CSV_META_HEADER_SOUNDING_TYPE, sounding.getType());
cd24db77f044 little bugfix on soundings
gernotbelger
parents: 9150
diff changeset
163 // "# Auswerter: "
cd24db77f044 little bugfix on soundings
gernotbelger
parents: 9150
diff changeset
164 writeCSVMetaEntry(CSV_META_HEADER_EVALUATOR, sounding.getEvaluationBy());
cd24db77f044 little bugfix on soundings
gernotbelger
parents: 9150
diff changeset
165 // "# Lagesystem: "
cd24db77f044 little bugfix on soundings
gernotbelger
parents: 9150
diff changeset
166 writeCSVMetaEntry(CSV_META_HEADER_SOUNDING_PRJ, sounding.getLocationSystem());
cd24db77f044 little bugfix on soundings
gernotbelger
parents: 9150
diff changeset
167 // "# Höhensystem: "
cd24db77f044 little bugfix on soundings
gernotbelger
parents: 9150
diff changeset
168 writeCSVMetaEntry(CSV_META_HEADER_SOUNDING_ELEVATIOIN_MODEL, sounding.getCurElevationModelUnit());
cd24db77f044 little bugfix on soundings
gernotbelger
parents: 9150
diff changeset
169 // "# ursprüngliches Höhensystem: "
cd24db77f044 little bugfix on soundings
gernotbelger
parents: 9150
diff changeset
170 writeCSVMetaEntry(CSV_META_HEADER_SOUNDING_ELEVATIOIN_MODEL_ORIGINAL, sounding.getOldElevationModelUnit());
9150
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
171
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
172 }
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
173
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
174 public final String msgUnitLabel(final IResultType typeWithUnit, final String label) {
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
175 final String msg = msg(typeWithUnit.getCsvHeader());
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
176 final String unit = msg(typeWithUnit.getUnit());
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
177 return String.format("%s [%s] (%s)", msg, unit, label);
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
178 }
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
179
9171
f1be005f0c46 tab titles from server
gernotbelger
parents: 9154
diff changeset
180 public void writeTitleForTabs(final String tabTitleMsg, final int colSize) {
f1be005f0c46 tab titles from server
gernotbelger
parents: 9154
diff changeset
181
f1be005f0c46 tab titles from server
gernotbelger
parents: 9154
diff changeset
182 final Collection<String> title = new ArrayList<>(colSize);
f1be005f0c46 tab titles from server
gernotbelger
parents: 9154
diff changeset
183 title.add(msg("export_csv_title") + msg(tabTitleMsg));
f1be005f0c46 tab titles from server
gernotbelger
parents: 9154
diff changeset
184 writeCSVLine(title.toArray(new String[colSize]));
f1be005f0c46 tab titles from server
gernotbelger
parents: 9154
diff changeset
185 }
9150
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents:
diff changeset
186 }

http://dive4elements.wald.intevation.org