annotate artifacts/src/main/java/org/dive4elements/river/artifacts/uinfo/common/UInfoResultType.java @ 9361:2aec052d4088

Refactoring on SalixLineCalculationResult etc., calculation using MQ etc., scenario (regional+supra) csv columns and meta data added
author mschaefer
date Wed, 01 Aug 2018 18:01:11 +0200
parents b3d3c958a594
children bd5f5d2220fa
rev   line source
8996
fb9430250899 Work on uinfo
gernotbelger
parents:
diff changeset
1 /** Copyright (C) 2017 by Bundesanstalt für Gewässerkunde
fb9430250899 Work on uinfo
gernotbelger
parents:
diff changeset
2 * Software engineering by
fb9430250899 Work on uinfo
gernotbelger
parents:
diff changeset
3 * Björnsen Beratende Ingenieure GmbH
fb9430250899 Work on uinfo
gernotbelger
parents:
diff changeset
4 * Dr. Schumacher Ingenieurbüro für Wasser und Umwelt
fb9430250899 Work on uinfo
gernotbelger
parents:
diff changeset
5 *
fb9430250899 Work on uinfo
gernotbelger
parents:
diff changeset
6 * This file is Free Software under the GNU AGPL (>=v3)
fb9430250899 Work on uinfo
gernotbelger
parents:
diff changeset
7 * and comes with ABSOLUTELY NO WARRANTY! Check out the
fb9430250899 Work on uinfo
gernotbelger
parents:
diff changeset
8 * documentation coming with Dive4Elements River for details.
fb9430250899 Work on uinfo
gernotbelger
parents:
diff changeset
9 */
9328
b3d3c958a594 Renamed package name
gernotbelger
parents: 9316
diff changeset
10 package org.dive4elements.river.artifacts.uinfo.common;
8996
fb9430250899 Work on uinfo
gernotbelger
parents:
diff changeset
11
fb9430250899 Work on uinfo
gernotbelger
parents:
diff changeset
12 import java.text.NumberFormat;
fb9430250899 Work on uinfo
gernotbelger
parents:
diff changeset
13
fb9430250899 Work on uinfo
gernotbelger
parents:
diff changeset
14 import org.dive4elements.artifacts.CallContext;
fb9430250899 Work on uinfo
gernotbelger
parents:
diff changeset
15 import org.dive4elements.river.artifacts.common.AbstractResultType;
fb9430250899 Work on uinfo
gernotbelger
parents:
diff changeset
16 import org.dive4elements.river.utils.Formatter;
fb9430250899 Work on uinfo
gernotbelger
parents:
diff changeset
17
fb9430250899 Work on uinfo
gernotbelger
parents:
diff changeset
18 /**
fb9430250899 Work on uinfo
gernotbelger
parents:
diff changeset
19 * @author Domenico Nardi Tironi
fb9430250899 Work on uinfo
gernotbelger
parents:
diff changeset
20 *
fb9430250899 Work on uinfo
gernotbelger
parents:
diff changeset
21 */
fb9430250899 Work on uinfo
gernotbelger
parents:
diff changeset
22 public abstract class UInfoResultType extends AbstractResultType {
fb9430250899 Work on uinfo
gernotbelger
parents:
diff changeset
23
9006
7134a4c7d1b6 U-Info S-Info general work
gernotbelger
parents: 8996
diff changeset
24 private static final long serialVersionUID = 1L;
7134a4c7d1b6 U-Info S-Info general work
gernotbelger
parents: 8996
diff changeset
25
8996
fb9430250899 Work on uinfo
gernotbelger
parents:
diff changeset
26 public UInfoResultType(final String unit, final String csvHeader) {
fb9430250899 Work on uinfo
gernotbelger
parents:
diff changeset
27 super(unit, csvHeader, csvHeader);
fb9430250899 Work on uinfo
gernotbelger
parents:
diff changeset
28
fb9430250899 Work on uinfo
gernotbelger
parents:
diff changeset
29 }
fb9430250899 Work on uinfo
gernotbelger
parents:
diff changeset
30
fb9430250899 Work on uinfo
gernotbelger
parents:
diff changeset
31 @Override
fb9430250899 Work on uinfo
gernotbelger
parents:
diff changeset
32 public String exportValue(final CallContext context, final Object value) {
fb9430250899 Work on uinfo
gernotbelger
parents:
diff changeset
33 // TODO Auto-generated method stub
fb9430250899 Work on uinfo
gernotbelger
parents:
diff changeset
34 return null;
fb9430250899 Work on uinfo
gernotbelger
parents:
diff changeset
35 }
fb9430250899 Work on uinfo
gernotbelger
parents:
diff changeset
36
fb9430250899 Work on uinfo
gernotbelger
parents:
diff changeset
37 @Override
fb9430250899 Work on uinfo
gernotbelger
parents:
diff changeset
38 protected NumberFormat createFormatter(final CallContext context) {
fb9430250899 Work on uinfo
gernotbelger
parents:
diff changeset
39 // TODO Auto-generated method stub
fb9430250899 Work on uinfo
gernotbelger
parents:
diff changeset
40 return null;
fb9430250899 Work on uinfo
gernotbelger
parents:
diff changeset
41 }
fb9430250899 Work on uinfo
gernotbelger
parents:
diff changeset
42
9361
2aec052d4088 Refactoring on SalixLineCalculationResult etc., calculation using MQ etc., scenario (regional+supra) csv columns and meta data added
mschaefer
parents: 9328
diff changeset
43 public static final UInfoResultType customMultiRowColSalixScenarios = new UInfoResultType(null, "uinfo.export.salix_line.csv.header.scenario") {
9243
da0bdbcd6f09 salix.supraRegional+Regional results
gernotbelger
parents: 9101
diff changeset
44 private static final long serialVersionUID = 1L;
da0bdbcd6f09 salix.supraRegional+Regional results
gernotbelger
parents: 9101
diff changeset
45
da0bdbcd6f09 salix.supraRegional+Regional results
gernotbelger
parents: 9101
diff changeset
46 @Override
da0bdbcd6f09 salix.supraRegional+Regional results
gernotbelger
parents: 9101
diff changeset
47 public String exportValue(final CallContext context, final Object value) {
da0bdbcd6f09 salix.supraRegional+Regional results
gernotbelger
parents: 9101
diff changeset
48 throw new UnsupportedOperationException();
da0bdbcd6f09 salix.supraRegional+Regional results
gernotbelger
parents: 9101
diff changeset
49 }
da0bdbcd6f09 salix.supraRegional+Regional results
gernotbelger
parents: 9101
diff changeset
50
da0bdbcd6f09 salix.supraRegional+Regional results
gernotbelger
parents: 9101
diff changeset
51 @Override
da0bdbcd6f09 salix.supraRegional+Regional results
gernotbelger
parents: 9101
diff changeset
52 protected NumberFormat createFormatter(final CallContext context) {
da0bdbcd6f09 salix.supraRegional+Regional results
gernotbelger
parents: 9101
diff changeset
53 throw new UnsupportedOperationException();
da0bdbcd6f09 salix.supraRegional+Regional results
gernotbelger
parents: 9101
diff changeset
54 }
da0bdbcd6f09 salix.supraRegional+Regional results
gernotbelger
parents: 9101
diff changeset
55 };
da0bdbcd6f09 salix.supraRegional+Regional results
gernotbelger
parents: 9101
diff changeset
56
9361
2aec052d4088 Refactoring on SalixLineCalculationResult etc., calculation using MQ etc., scenario (regional+supra) csv columns and meta data added
mschaefer
parents: 9328
diff changeset
57 public static final UInfoResultType salix_mw_mnw = new UInfoResultType(null, "uinfo.export.salix_line.csv.header.mw_mnw") {
9243
da0bdbcd6f09 salix.supraRegional+Regional results
gernotbelger
parents: 9101
diff changeset
58 private static final long serialVersionUID = 1L;
da0bdbcd6f09 salix.supraRegional+Regional results
gernotbelger
parents: 9101
diff changeset
59
da0bdbcd6f09 salix.supraRegional+Regional results
gernotbelger
parents: 9101
diff changeset
60 @Override
da0bdbcd6f09 salix.supraRegional+Regional results
gernotbelger
parents: 9101
diff changeset
61 public String exportValue(final CallContext context, final Object value) {
da0bdbcd6f09 salix.supraRegional+Regional results
gernotbelger
parents: 9101
diff changeset
62 final double doubleValue = asDouble(value);
da0bdbcd6f09 salix.supraRegional+Regional results
gernotbelger
parents: 9101
diff changeset
63 return exportDoubleValue(context, doubleValue);
da0bdbcd6f09 salix.supraRegional+Regional results
gernotbelger
parents: 9101
diff changeset
64 }
da0bdbcd6f09 salix.supraRegional+Regional results
gernotbelger
parents: 9101
diff changeset
65
da0bdbcd6f09 salix.supraRegional+Regional results
gernotbelger
parents: 9101
diff changeset
66 @Override
da0bdbcd6f09 salix.supraRegional+Regional results
gernotbelger
parents: 9101
diff changeset
67 protected NumberFormat createFormatter(final CallContext context) {
da0bdbcd6f09 salix.supraRegional+Regional results
gernotbelger
parents: 9101
diff changeset
68 // REMARK: other modules use Formatter.getWaterlevelW(context) instead, but that format with a variable number of
da0bdbcd6f09 salix.supraRegional+Regional results
gernotbelger
parents: 9101
diff changeset
69 // digits.
da0bdbcd6f09 salix.supraRegional+Regional results
gernotbelger
parents: 9101
diff changeset
70 return Formatter.getSalixLine(context);
da0bdbcd6f09 salix.supraRegional+Regional results
gernotbelger
parents: 9101
diff changeset
71 }
da0bdbcd6f09 salix.supraRegional+Regional results
gernotbelger
parents: 9101
diff changeset
72 };
da0bdbcd6f09 salix.supraRegional+Regional results
gernotbelger
parents: 9101
diff changeset
73
8996
fb9430250899 Work on uinfo
gernotbelger
parents:
diff changeset
74 public static final UInfoResultType salixline = new UInfoResultType(null, "uinfo.export.salix_line.csv.header.salix_line") {
9006
7134a4c7d1b6 U-Info S-Info general work
gernotbelger
parents: 8996
diff changeset
75 private static final long serialVersionUID = 1L;
7134a4c7d1b6 U-Info S-Info general work
gernotbelger
parents: 8996
diff changeset
76
8996
fb9430250899 Work on uinfo
gernotbelger
parents:
diff changeset
77 @Override
fb9430250899 Work on uinfo
gernotbelger
parents:
diff changeset
78 public String exportValue(final CallContext context, final Object value) {
fb9430250899 Work on uinfo
gernotbelger
parents:
diff changeset
79 final double doubleValue = asDouble(value);
fb9430250899 Work on uinfo
gernotbelger
parents:
diff changeset
80 return exportDoubleValue(context, doubleValue);
fb9430250899 Work on uinfo
gernotbelger
parents:
diff changeset
81 }
fb9430250899 Work on uinfo
gernotbelger
parents:
diff changeset
82
fb9430250899 Work on uinfo
gernotbelger
parents:
diff changeset
83 @Override
fb9430250899 Work on uinfo
gernotbelger
parents:
diff changeset
84 protected NumberFormat createFormatter(final CallContext context) {
fb9430250899 Work on uinfo
gernotbelger
parents:
diff changeset
85 // REMARK: other modules use Formatter.getWaterlevelW(context) instead, but that format with a variable number of
fb9430250899 Work on uinfo
gernotbelger
parents:
diff changeset
86 // digits.
fb9430250899 Work on uinfo
gernotbelger
parents:
diff changeset
87 return Formatter.getSalixLine(context);
fb9430250899 Work on uinfo
gernotbelger
parents:
diff changeset
88 }
fb9430250899 Work on uinfo
gernotbelger
parents:
diff changeset
89 };
fb9430250899 Work on uinfo
gernotbelger
parents:
diff changeset
90
9006
7134a4c7d1b6 U-Info S-Info general work
gernotbelger
parents: 8996
diff changeset
91 public static final UInfoResultType vegname = new UInfoResultType(null, "uinfo.export.csv.meta.header.veg.name") {
7134a4c7d1b6 U-Info S-Info general work
gernotbelger
parents: 8996
diff changeset
92 private static final long serialVersionUID = 1L;
7134a4c7d1b6 U-Info S-Info general work
gernotbelger
parents: 8996
diff changeset
93
7134a4c7d1b6 U-Info S-Info general work
gernotbelger
parents: 8996
diff changeset
94 @Override
7134a4c7d1b6 U-Info S-Info general work
gernotbelger
parents: 8996
diff changeset
95 public String exportValue(final CallContext context, final Object value) {
7134a4c7d1b6 U-Info S-Info general work
gernotbelger
parents: 8996
diff changeset
96 return exportStringValue(value);
7134a4c7d1b6 U-Info S-Info general work
gernotbelger
parents: 8996
diff changeset
97 }
7134a4c7d1b6 U-Info S-Info general work
gernotbelger
parents: 8996
diff changeset
98
7134a4c7d1b6 U-Info S-Info general work
gernotbelger
parents: 8996
diff changeset
99 @Override
7134a4c7d1b6 U-Info S-Info general work
gernotbelger
parents: 8996
diff changeset
100 protected NumberFormat createFormatter(final CallContext context) {
7134a4c7d1b6 U-Info S-Info general work
gernotbelger
parents: 8996
diff changeset
101 throw new UnsupportedOperationException();
7134a4c7d1b6 U-Info S-Info general work
gernotbelger
parents: 8996
diff changeset
102 }
7134a4c7d1b6 U-Info S-Info general work
gernotbelger
parents: 8996
diff changeset
103 };
7134a4c7d1b6 U-Info S-Info general work
gernotbelger
parents: 8996
diff changeset
104
9260
b570b6fcc052 VegetationZone color added and disabled
gernotbelger
parents: 9249
diff changeset
105 public static final UInfoResultType vegzone_color = new UInfoResultType(null, "uinfo.export.csv.meta.header.veg.color") {
b570b6fcc052 VegetationZone color added and disabled
gernotbelger
parents: 9249
diff changeset
106 private static final long serialVersionUID = 1L;
b570b6fcc052 VegetationZone color added and disabled
gernotbelger
parents: 9249
diff changeset
107
b570b6fcc052 VegetationZone color added and disabled
gernotbelger
parents: 9249
diff changeset
108 @Override
b570b6fcc052 VegetationZone color added and disabled
gernotbelger
parents: 9249
diff changeset
109 public String exportValue(final CallContext context, final Object value) {
b570b6fcc052 VegetationZone color added and disabled
gernotbelger
parents: 9249
diff changeset
110 return exportStringValue(value);
b570b6fcc052 VegetationZone color added and disabled
gernotbelger
parents: 9249
diff changeset
111 }
b570b6fcc052 VegetationZone color added and disabled
gernotbelger
parents: 9249
diff changeset
112
b570b6fcc052 VegetationZone color added and disabled
gernotbelger
parents: 9249
diff changeset
113 @Override
b570b6fcc052 VegetationZone color added and disabled
gernotbelger
parents: 9249
diff changeset
114 protected NumberFormat createFormatter(final CallContext context) {
b570b6fcc052 VegetationZone color added and disabled
gernotbelger
parents: 9249
diff changeset
115 throw new UnsupportedOperationException();
b570b6fcc052 VegetationZone color added and disabled
gernotbelger
parents: 9249
diff changeset
116 }
b570b6fcc052 VegetationZone color added and disabled
gernotbelger
parents: 9249
diff changeset
117 };
9006
7134a4c7d1b6 U-Info S-Info general work
gernotbelger
parents: 8996
diff changeset
118 public static final UInfoResultType vegdauervon = new UInfoResultType(null, "uinfo.export.csv.meta.header.veg.dauervon") {
7134a4c7d1b6 U-Info S-Info general work
gernotbelger
parents: 8996
diff changeset
119 private static final long serialVersionUID = 1L;
7134a4c7d1b6 U-Info S-Info general work
gernotbelger
parents: 8996
diff changeset
120
7134a4c7d1b6 U-Info S-Info general work
gernotbelger
parents: 8996
diff changeset
121 @Override
7134a4c7d1b6 U-Info S-Info general work
gernotbelger
parents: 8996
diff changeset
122 public String exportValue(final CallContext context, final Object value) {
9101
2c6aba003112 Mini-Bugfix Vegetationszonen-Export
gernotbelger
parents: 9069
diff changeset
123 final double doubleValue = asDouble(value);
2c6aba003112 Mini-Bugfix Vegetationszonen-Export
gernotbelger
parents: 9069
diff changeset
124 return exportDoubleValue(context, doubleValue);
9006
7134a4c7d1b6 U-Info S-Info general work
gernotbelger
parents: 8996
diff changeset
125 }
7134a4c7d1b6 U-Info S-Info general work
gernotbelger
parents: 8996
diff changeset
126
7134a4c7d1b6 U-Info S-Info general work
gernotbelger
parents: 8996
diff changeset
127 @Override
7134a4c7d1b6 U-Info S-Info general work
gernotbelger
parents: 8996
diff changeset
128 protected NumberFormat createFormatter(final CallContext context) {
7134a4c7d1b6 U-Info S-Info general work
gernotbelger
parents: 8996
diff changeset
129 // REMARK: other modules use Formatter.getWaterlevelW(context) instead, but that format with a variable number of
7134a4c7d1b6 U-Info S-Info general work
gernotbelger
parents: 8996
diff changeset
130 // digits.
7134a4c7d1b6 U-Info S-Info general work
gernotbelger
parents: 8996
diff changeset
131 return Formatter.getUeberflutungsdauer(context);
7134a4c7d1b6 U-Info S-Info general work
gernotbelger
parents: 8996
diff changeset
132 }
7134a4c7d1b6 U-Info S-Info general work
gernotbelger
parents: 8996
diff changeset
133 };
7134a4c7d1b6 U-Info S-Info general work
gernotbelger
parents: 8996
diff changeset
134
7134a4c7d1b6 U-Info S-Info general work
gernotbelger
parents: 8996
diff changeset
135 public static final UInfoResultType vegdauerbis = new UInfoResultType(null, "uinfo.export.csv.meta.header.veg.dauerbis") {
7134a4c7d1b6 U-Info S-Info general work
gernotbelger
parents: 8996
diff changeset
136 private static final long serialVersionUID = 1L;
7134a4c7d1b6 U-Info S-Info general work
gernotbelger
parents: 8996
diff changeset
137
7134a4c7d1b6 U-Info S-Info general work
gernotbelger
parents: 8996
diff changeset
138 @Override
7134a4c7d1b6 U-Info S-Info general work
gernotbelger
parents: 8996
diff changeset
139 public String exportValue(final CallContext context, final Object value) {
9260
b570b6fcc052 VegetationZone color added and disabled
gernotbelger
parents: 9249
diff changeset
140 // valix hex-Check?
b570b6fcc052 VegetationZone color added and disabled
gernotbelger
parents: 9249
diff changeset
141 return String.valueOf(value);
9006
7134a4c7d1b6 U-Info S-Info general work
gernotbelger
parents: 8996
diff changeset
142 }
7134a4c7d1b6 U-Info S-Info general work
gernotbelger
parents: 8996
diff changeset
143
7134a4c7d1b6 U-Info S-Info general work
gernotbelger
parents: 8996
diff changeset
144 @Override
7134a4c7d1b6 U-Info S-Info general work
gernotbelger
parents: 8996
diff changeset
145 protected NumberFormat createFormatter(final CallContext context) {
7134a4c7d1b6 U-Info S-Info general work
gernotbelger
parents: 8996
diff changeset
146 // REMARK: other modules use Formatter.getWaterlevelW(context) instead, but that format with a variable number of
7134a4c7d1b6 U-Info S-Info general work
gernotbelger
parents: 8996
diff changeset
147 // digits.
7134a4c7d1b6 U-Info S-Info general work
gernotbelger
parents: 8996
diff changeset
148 return Formatter.getUeberflutungsdauer(context);
7134a4c7d1b6 U-Info S-Info general work
gernotbelger
parents: 8996
diff changeset
149 }
7134a4c7d1b6 U-Info S-Info general work
gernotbelger
parents: 8996
diff changeset
150 };
8996
fb9430250899 Work on uinfo
gernotbelger
parents:
diff changeset
151 }

http://dive4elements.wald.intevation.org