annotate artifacts/src/main/java/org/dive4elements/river/artifacts/common/GeneralResultType.java @ 9188:3931e8741f53

Minor cleanup and bugfix concerning number formatters
author gernotbelger
date Thu, 28 Jun 2018 13:14:44 +0200
parents f9bb5d0a6ff3
children 740d65e4aa14
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;
e3b3ce32c825 Work on uinfo
gernotbelger
parents:
diff changeset
16 import org.dive4elements.river.utils.Formatter;
e3b3ce32c825 Work on uinfo
gernotbelger
parents:
diff changeset
17
e3b3ce32c825 Work on uinfo
gernotbelger
parents:
diff changeset
18 /**
e3b3ce32c825 Work on uinfo
gernotbelger
parents:
diff changeset
19 * @author Domenico Nardi Tironi
e3b3ce32c825 Work on uinfo
gernotbelger
parents:
diff changeset
20 *
e3b3ce32c825 Work on uinfo
gernotbelger
parents:
diff changeset
21 */
e3b3ce32c825 Work on uinfo
gernotbelger
parents:
diff changeset
22 public abstract class GeneralResultType extends AbstractResultType {
9150
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents: 8999
diff changeset
23
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents: 8999
diff changeset
24 private static final long serialVersionUID = 1L;
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents: 8999
diff changeset
25
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents: 8999
diff changeset
26 public static final GeneralResultType station = new GeneralResultType(I18NStrings.UNIT_KM, I18NStrings.CSV_KM_HEADER) {
8999
e3b3ce32c825 Work on uinfo
gernotbelger
parents:
diff changeset
27 @Override
e3b3ce32c825 Work on uinfo
gernotbelger
parents:
diff changeset
28 public String exportValue(final CallContext context, final Object value) {
e3b3ce32c825 Work on uinfo
gernotbelger
parents:
diff changeset
29 final double doubleValue = asDouble(value);
e3b3ce32c825 Work on uinfo
gernotbelger
parents:
diff changeset
30 return exportDoubleValue(context, doubleValue);
e3b3ce32c825 Work on uinfo
gernotbelger
parents:
diff changeset
31 }
e3b3ce32c825 Work on uinfo
gernotbelger
parents:
diff changeset
32
e3b3ce32c825 Work on uinfo
gernotbelger
parents:
diff changeset
33 @Override
e3b3ce32c825 Work on uinfo
gernotbelger
parents:
diff changeset
34 protected NumberFormat createFormatter(final CallContext context) {
e3b3ce32c825 Work on uinfo
gernotbelger
parents:
diff changeset
35 return Formatter.getWaterlevelKM(context);
e3b3ce32c825 Work on uinfo
gernotbelger
parents:
diff changeset
36 }
e3b3ce32c825 Work on uinfo
gernotbelger
parents:
diff changeset
37 };
9150
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents: 8999
diff changeset
38
9157
f9bb5d0a6ff3 Added the S-Info collision calculation and chart output
mschaefer
parents: 9150
diff changeset
39 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
40 @Override
f9bb5d0a6ff3 Added the S-Info collision calculation and chart output
mschaefer
parents: 9150
diff changeset
41 public String exportValue(final CallContext context, final Object value) {
f9bb5d0a6ff3 Added the S-Info collision calculation and chart output
mschaefer
parents: 9150
diff changeset
42 return exportDateValue(context, (Date) value);
f9bb5d0a6ff3 Added the S-Info collision calculation and chart output
mschaefer
parents: 9150
diff changeset
43 }
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 @Override
f9bb5d0a6ff3 Added the S-Info collision calculation and chart output
mschaefer
parents: 9150
diff changeset
46 protected NumberFormat createFormatter(final CallContext context) {
f9bb5d0a6ff3 Added the S-Info collision calculation and chart output
mschaefer
parents: 9150
diff changeset
47 throw new UnsupportedOperationException();
f9bb5d0a6ff3 Added the S-Info collision calculation and chart output
mschaefer
parents: 9150
diff changeset
48 }
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
9150
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents: 8999
diff changeset
51 private GeneralResultType(final String unit, final String csvHeader) {
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents: 8999
diff changeset
52
8999
e3b3ce32c825 Work on uinfo
gernotbelger
parents:
diff changeset
53 super(unit, csvHeader, csvHeader);
e3b3ce32c825 Work on uinfo
gernotbelger
parents:
diff changeset
54 }
9150
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents: 8999
diff changeset
55
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents: 8999
diff changeset
56 private GeneralResultType(final String unit, final String csvHeader, final String pdfHeader) {
8999
e3b3ce32c825 Work on uinfo
gernotbelger
parents:
diff changeset
57 super(unit, csvHeader, pdfHeader);
e3b3ce32c825 Work on uinfo
gernotbelger
parents:
diff changeset
58 }
9150
23945061daec gigantic refactoring: exporter, result, results
gernotbelger
parents: 8999
diff changeset
59 }

http://dive4elements.wald.intevation.org