annotate artifacts/src/main/java/org/dive4elements/river/artifacts/model/GaugeFinder.java @ 9415:9744ce3c3853

Rework of fixanalysis computation and dWt and WQ facets. Got rid of strange remapping and bitshifting code by explicitely saving the column information and using it in the facets. The facets also put the valid station range into their xml-metadata
author gernotbelger
date Thu, 16 Aug 2018 16:27:53 +0200
parents af13ceeba52a
children
rev   line source
5863
4897a58c8746 River artifacts: Added new copyright headers.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
1 /* Copyright (C) 2011, 2012, 2013 by Bundesanstalt für Gewässerkunde
4897a58c8746 River artifacts: Added new copyright headers.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
2 * Software engineering by Intevation GmbH
4897a58c8746 River artifacts: Added new copyright headers.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
3 *
5994
af13ceeba52a Removed trailing whitespace.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5863
diff changeset
4 * This file is Free Software under the GNU AGPL (>=v3)
5863
4897a58c8746 River artifacts: Added new copyright headers.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
5 * and comes with ABSOLUTELY NO WARRANTY! Check out the
5994
af13ceeba52a Removed trailing whitespace.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5863
diff changeset
6 * documentation coming with Dive4Elements River for details.
5863
4897a58c8746 River artifacts: Added new copyright headers.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
7 */
4897a58c8746 River artifacts: Added new copyright headers.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
8
5831
bd047b71ab37 Repaired internal references
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5343
diff changeset
9 package org.dive4elements.river.artifacts.model;
3142
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
10
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
11 import java.io.Serializable;
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
12
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
13 import java.util.List;
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
14
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
15 import org.apache.log4j.Logger;
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
16
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
17 import org.hibernate.SQLQuery;
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
18 import org.hibernate.Session;
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
19
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
20 import org.hibernate.type.StandardBasicTypes;
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
21
5343
61f4d4164a30 Doc, cosmetics.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 5335
diff changeset
22 /** Find Gauges and respective Q main values. */
3142
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
23 public class GaugeFinder
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
24 implements Serializable
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
25 {
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
26 private static Logger log = Logger.getLogger(GaugeFinder.class);
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
27
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
28 public static final String SQL_DISCHARGE_SECTORS =
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
29 "SELECT" +
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
30 " g.id AS gauge_id," +
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
31 " nmv.name AS name," +
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
32 " CAST(mv.value AS NUMERIC(38,2)) AS value " +
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
33 "FROM gauges g" +
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
34 " JOIN main_values mv ON g.id = mv.gauge_id" +
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
35 " JOIN named_main_values nmv ON nmv.id = mv.named_value_id" +
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
36 " JOIN main_value_types mvt ON nmv.type_id = mvt.id " +
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
37 "WHERE" +
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
38 " mvt.name = 'Q' AND (" +
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
39 " nmv.name = 'MNQ' OR" +
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
40 " nmv.name LIKE 'MNQ(%' OR" +
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
41 " nmv.name = 'MQ' OR" +
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
42 " nmv.name LIKE 'MQ(%' OR" +
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
43 " nmv.name = 'MHQ' OR" +
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
44 " nmv.name LIKE 'MHQ(%' OR" +
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
45 " nmv.name = 'HQ5' OR" +
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
46 " nmv.name LIKE 'HQ5(%') AND" +
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
47 " g.river_id = :river_id " +
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
48 "ORDER BY" +
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
49 " g.id";
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
50
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
51 protected List<GaugeRange> gauges;
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
52 protected boolean isKmUp;
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
53
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
54 public GaugeFinder(List<GaugeRange> gauges) {
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
55 this(gauges, true);
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
56 }
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
57
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
58 public GaugeFinder(
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
59 List<GaugeRange> gauges,
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
60 boolean isKmUp
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
61 ) {
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
62 this.gauges = gauges;
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
63 this.isKmUp = isKmUp;
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
64 }
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
65
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
66 public boolean getIsKmUp() {
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
67 return isKmUp;
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
68 }
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
69
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
70 public void setIsKmUp(boolean isKmUp) {
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
71 this.isKmUp = isKmUp;
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
72 }
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
73
5335
05eeedc5b156 Doc, cosmetic and TODO fixes, renamed field in WQTimeRange.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 3401
diff changeset
74
05eeedc5b156 Doc, cosmetic and TODO fixes, renamed field in WQTimeRange.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 3401
diff changeset
75 /** Find GaugeRange at kilometer. */
3143
29022c93027d FixA: Create a cached GaugeFinderFactory to access the gauge along a river
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3142
diff changeset
76 public GaugeRange find(double km) {
3142
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
77 for (GaugeRange gauge: gauges) {
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
78 if (gauge.inside(km)) {
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
79 return gauge;
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
80 }
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
81 }
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
82 return null;
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
83 }
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
84
3143
29022c93027d FixA: Create a cached GaugeFinderFactory to access the gauge along a river
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3142
diff changeset
85 public GaugeRange find(Range range) {
9415
9744ce3c3853 Rework of fixanalysis computation and dWt and WQ facets. Got rid of strange remapping and bitshifting code by explicitely saving the column information and using it in the facets.
gernotbelger
parents: 5994
diff changeset
86 return find(isKmUp ? range.getStart() : range.getEnd());
3143
29022c93027d FixA: Create a cached GaugeFinderFactory to access the gauge along a river
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3142
diff changeset
87 }
29022c93027d FixA: Create a cached GaugeFinderFactory to access the gauge along a river
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3142
diff changeset
88
3142
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
89 public GaugeRange find(int gaugeId) {
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
90 for (GaugeRange gauge: gauges) {
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
91 if (gauge.gaugeId == gaugeId) {
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
92 return gauge;
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
93 }
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
94 }
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
95 return null;
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
96 }
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
97
3401
086326be721c FixA: Overview: classify Q ranges by intersecting gauges.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3143
diff changeset
98 public List<GaugeRange> getGauges() {
086326be721c FixA: Overview: classify Q ranges by intersecting gauges.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3143
diff changeset
99 return gauges;
086326be721c FixA: Overview: classify Q ranges by intersecting gauges.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3143
diff changeset
100 }
086326be721c FixA: Overview: classify Q ranges by intersecting gauges.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3143
diff changeset
101
3142
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
102 public boolean loadDischargeSectors(Session session, int riverId) {
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
103
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
104 SQLQuery query = session.createSQLQuery(SQL_DISCHARGE_SECTORS)
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
105 .addScalar("gauge_id", StandardBasicTypes.INTEGER)
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
106 .addScalar("name", StandardBasicTypes.STRING)
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
107 .addScalar("value", StandardBasicTypes.DOUBLE);
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
108
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
109 query.setInteger("river_id", riverId);
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
110
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
111 List<Object []> list = query.list();
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
112
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
113 if (list.isEmpty()) {
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
114 log.warn("River " + riverId + " has no discharge sectors.");
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
115 return false;
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
116 }
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
117
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
118 GaugeRange gauge = null;
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
119
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
120 for (Object [] row: list) {
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
121 int gaugeId = (Integer)row[0];
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
122 String label = (String) row[1];
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
123 Double value = (Double) row[2];
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
124
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
125 if (gauge == null || gauge.gaugeId != gaugeId) {
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
126 if ((gauge = find(gaugeId)) == null) {
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
127 log.warn("Cannot find gauge for id " + gaugeId + ".");
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
128 continue;
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
129 }
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
130 }
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
131
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
132 gauge.addMainValue(label, value);
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
133 }
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
134
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
135 for (GaugeRange g: gauges) {
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
136 g.buildClasses();
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
137 }
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
138
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
139 return true;
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
140 }
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
141 }
9aed2e4de3ca FixA: Moved GaugeFinder into top level class.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
142 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :

http://dive4elements.wald.intevation.org