annotate artifacts/src/main/java/org/dive4elements/river/artifacts/common/GeneralResultType.java @ 9312:740d65e4aa14

Q [m³/s] one message
author gernotbelger
date Thu, 26 Jul 2018 15:54:20 +0200
parents f9bb5d0a6ff3
children 7b2b086e45f0
rev   line source
8999
e3b3ce32c825 Work on uinfo
gernotbelger
parents:
diff changeset
1 /** Copyright (C) 2017 by Bundesanstalt für Gewässerkunde
9150
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents: 8999
diff changeset
2 * Software engineering by
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents: 8999
diff changeset
3 * Björnsen Beratende Ingenieure GmbH
8999
e3b3ce32c825 Work on uinfo
gernotbelger
parents:
diff changeset
4 * Dr. Schumacher Ingenieurbüro für Wasser und Umwelt
e3b3ce32c825 Work on uinfo
gernotbelger
parents:
diff changeset
5 *
e3b3ce32c825 Work on uinfo
gernotbelger
parents:
diff changeset
6 * This file is Free Software under the GNU AGPL (>=v3)
e3b3ce32c825 Work on uinfo
gernotbelger
parents:
diff changeset
7 * and comes with ABSOLUTELY NO WARRANTY! Check out the
e3b3ce32c825 Work on uinfo
gernotbelger
parents:
diff changeset
8 * documentation coming with Dive4Elements River for details.
e3b3ce32c825 Work on uinfo
gernotbelger
parents:
diff changeset
9 */
e3b3ce32c825 Work on uinfo
gernotbelger
parents:
diff changeset
10 package org.dive4elements.river.artifacts.common;
e3b3ce32c825 Work on uinfo
gernotbelger
parents:
diff changeset
11
e3b3ce32c825 Work on uinfo
gernotbelger
parents:
diff changeset
12 import java.text.NumberFormat;
9157
f9bb5d0a6ff3 Added the S-Info collision calculation and chart output
mschaefer
parents: 9150
diff changeset
13 import java.util.Date;
8999
e3b3ce32c825 Work on uinfo
gernotbelger
parents:
diff changeset
14
e3b3ce32c825 Work on uinfo
gernotbelger
parents:
diff changeset
15 import org.dive4elements.artifacts.CallContext;
9312
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9157
diff changeset
16 import org.dive4elements.river.artifacts.sinfo.common.SInfoI18NStrings;
8999
e3b3ce32c825 Work on uinfo
gernotbelger
parents:
diff changeset
17 import org.dive4elements.river.utils.Formatter;
e3b3ce32c825 Work on uinfo
gernotbelger
parents:
diff changeset
18
e3b3ce32c825 Work on uinfo
gernotbelger
parents:
diff changeset
19 /**
e3b3ce32c825 Work on uinfo
gernotbelger
parents:
diff changeset
20 * @author Domenico Nardi Tironi
e3b3ce32c825 Work on uinfo
gernotbelger
parents:
diff changeset
21 *
e3b3ce32c825 Work on uinfo
gernotbelger
parents:
diff changeset
22 */
e3b3ce32c825 Work on uinfo
gernotbelger
parents:
diff changeset
23 public abstract class GeneralResultType extends AbstractResultType {
9150
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents: 8999
diff changeset
24
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents: 8999
diff changeset
25 private static final long serialVersionUID = 1L;
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents: 8999
diff changeset
26
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents: 8999
diff changeset
27 public static final GeneralResultType station = new GeneralResultType(I18NStrings.UNIT_KM, I18NStrings.CSV_KM_HEADER) {
8999
e3b3ce32c825 Work on uinfo
gernotbelger
parents:
diff changeset
28 @Override
e3b3ce32c825 Work on uinfo
gernotbelger
parents:
diff changeset
29 public String exportValue(final CallContext context, final Object value) {
e3b3ce32c825 Work on uinfo
gernotbelger
parents:
diff changeset
30 final double doubleValue = asDouble(value);
e3b3ce32c825 Work on uinfo
gernotbelger
parents:
diff changeset
31 return exportDoubleValue(context, doubleValue);
e3b3ce32c825 Work on uinfo
gernotbelger
parents:
diff changeset
32 }
e3b3ce32c825 Work on uinfo
gernotbelger
parents:
diff changeset
33
e3b3ce32c825 Work on uinfo
gernotbelger
parents:
diff changeset
34 @Override
e3b3ce32c825 Work on uinfo
gernotbelger
parents:
diff changeset
35 protected NumberFormat createFormatter(final CallContext context) {
e3b3ce32c825 Work on uinfo
gernotbelger
parents:
diff changeset
36 return Formatter.getWaterlevelKM(context);
e3b3ce32c825 Work on uinfo
gernotbelger
parents:
diff changeset
37 }
e3b3ce32c825 Work on uinfo
gernotbelger
parents:
diff changeset
38 };
9150
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents: 8999
diff changeset
39
9157
f9bb5d0a6ff3 Added the S-Info collision calculation and chart output
mschaefer
parents: 9150
diff changeset
40 public static final GeneralResultType date = new GeneralResultType(I18NStrings.UNIT_NONE, I18NStrings.CSV_META_DATE) {
f9bb5d0a6ff3 Added the S-Info collision calculation and chart output
mschaefer
parents: 9150
diff changeset
41 @Override
f9bb5d0a6ff3 Added the S-Info collision calculation and chart output
mschaefer
parents: 9150
diff changeset
42 public String exportValue(final CallContext context, final Object value) {
f9bb5d0a6ff3 Added the S-Info collision calculation and chart output
mschaefer
parents: 9150
diff changeset
43 return exportDateValue(context, (Date) value);
f9bb5d0a6ff3 Added the S-Info collision calculation and chart output
mschaefer
parents: 9150
diff changeset
44 }
f9bb5d0a6ff3 Added the S-Info collision calculation and chart output
mschaefer
parents: 9150
diff changeset
45
f9bb5d0a6ff3 Added the S-Info collision calculation and chart output
mschaefer
parents: 9150
diff changeset
46 @Override
f9bb5d0a6ff3 Added the S-Info collision calculation and chart output
mschaefer
parents: 9150
diff changeset
47 protected NumberFormat createFormatter(final CallContext context) {
f9bb5d0a6ff3 Added the S-Info collision calculation and chart output
mschaefer
parents: 9150
diff changeset
48 throw new UnsupportedOperationException();
f9bb5d0a6ff3 Added the S-Info collision calculation and chart output
mschaefer
parents: 9150
diff changeset
49 }
f9bb5d0a6ff3 Added the S-Info collision calculation and chart output
mschaefer
parents: 9150
diff changeset
50 };
f9bb5d0a6ff3 Added the S-Info collision calculation and chart output
mschaefer
parents: 9150
diff changeset
51
9150
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents: 8999
diff changeset
52 private GeneralResultType(final String unit, final String csvHeader) {
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents: 8999
diff changeset
53
8999
e3b3ce32c825 Work on uinfo
gernotbelger
parents:
diff changeset
54 super(unit, csvHeader, csvHeader);
e3b3ce32c825 Work on uinfo
gernotbelger
parents:
diff changeset
55 }
9150
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents: 8999
diff changeset
56
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents: 8999
diff changeset
57 private GeneralResultType(final String unit, final String csvHeader, final String pdfHeader) {
8999
e3b3ce32c825 Work on uinfo
gernotbelger
parents:
diff changeset
58 super(unit, csvHeader, pdfHeader);
e3b3ce32c825 Work on uinfo
gernotbelger
parents:
diff changeset
59 }
9312
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9157
diff changeset
60
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9157
diff changeset
61 public static final GeneralResultType location = new GeneralResultType(I18NStrings.UNIT_NONE, SInfoI18NStrings.CSV_LOCATION_HEADER) {
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9157
diff changeset
62 private static final long serialVersionUID = 1L;
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9157
diff changeset
63
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9157
diff changeset
64 @Override
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9157
diff changeset
65 public String exportValue(final CallContext context, final Object value) {
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9157
diff changeset
66 return exportStringValue(value);
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9157
diff changeset
67 }
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9157
diff changeset
68
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9157
diff changeset
69 @Override
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9157
diff changeset
70 protected NumberFormat createFormatter(final CallContext context) {
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9157
diff changeset
71 throw new UnsupportedOperationException();
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9157
diff changeset
72 }
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9157
diff changeset
73 };
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9157
diff changeset
74
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9157
diff changeset
75 public static final GeneralResultType dischargeQwithUnit = new GeneralResultType(I18NStrings.UNIT_NONE, "common.export.csv.header.q",
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9157
diff changeset
76 "common.export.csv.header.q") { // Q [m³/s]
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9157
diff changeset
77 private static final long serialVersionUID = 1L;
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9157
diff changeset
78
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9157
diff changeset
79 @Override
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9157
diff changeset
80 public String exportValue(final CallContext context, final Object value) {
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9157
diff changeset
81 final double doubleValue = asDouble(value);
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9157
diff changeset
82 return exportDoubleValue(context, doubleValue);
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9157
diff changeset
83 }
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9157
diff changeset
84
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9157
diff changeset
85 @Override
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9157
diff changeset
86 protected NumberFormat createFormatter(final CallContext context) {
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9157
diff changeset
87 return Formatter.getWaterlevelQ(context);
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9157
diff changeset
88 }
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9157
diff changeset
89 };
9150
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents: 8999
diff changeset
90 }

http://dive4elements.wald.intevation.org