Mercurial > dive4elements > river
annotate artifacts/src/main/java/org/dive4elements/river/artifacts/states/GaugeDischargeState.java @ 8883:a536e1aacf0f
Further work on SINFO-FlowDepth
author | gernotbelger |
---|---|
date | Fri, 09 Feb 2018 18:07:22 +0100 |
parents | 5e38e2924c07 |
children | 0a5239a1e46e |
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:
5867
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:
5867
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:
3060
diff
changeset
|
9 package org.dive4elements.river.artifacts.states; |
2723
5ce5abd173b9
Added skeleton for gauge discharge curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
10 |
5ce5abd173b9
Added skeleton for gauge discharge curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
11 import java.util.List; |
8435
6ebad936d82b
Unify descriptions of model discharge curve at gauge.
"Tom Gottfried <tom@intevation.de>"
parents:
8406
diff
changeset
|
12 import java.util.Date; |
2723
5ce5abd173b9
Added skeleton for gauge discharge curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
13 |
5ce5abd173b9
Added skeleton for gauge discharge curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
14 import org.apache.log4j.Logger; |
5ce5abd173b9
Added skeleton for gauge discharge curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
15 |
5831
bd047b71ab37
Repaired internal references
Sascha L. Teichmann <teichmann@intevation.de>
parents:
3060
diff
changeset
|
16 import org.dive4elements.artifacts.CallMeta; |
bd047b71ab37
Repaired internal references
Sascha L. Teichmann <teichmann@intevation.de>
parents:
3060
diff
changeset
|
17 import org.dive4elements.artifacts.CallContext; |
2723
5ce5abd173b9
Added skeleton for gauge discharge curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
18 |
5831
bd047b71ab37
Repaired internal references
Sascha L. Teichmann <teichmann@intevation.de>
parents:
3060
diff
changeset
|
19 import org.dive4elements.artifactdatabase.state.Facet; |
2723
5ce5abd173b9
Added skeleton for gauge discharge curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
20 |
5831
bd047b71ab37
Repaired internal references
Sascha L. Teichmann <teichmann@intevation.de>
parents:
3060
diff
changeset
|
21 import org.dive4elements.river.artifacts.ChartArtifact; |
bd047b71ab37
Repaired internal references
Sascha L. Teichmann <teichmann@intevation.de>
parents:
3060
diff
changeset
|
22 import org.dive4elements.river.artifacts.GaugeDischargeArtifact; |
5867
59ff03ff48f1
River artifacts: Renamed FLYSArtifact(Collection) to D4EArtifact(Collection).
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5863
diff
changeset
|
23 import org.dive4elements.river.artifacts.D4EArtifact; |
2723
5ce5abd173b9
Added skeleton for gauge discharge curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
24 |
5831
bd047b71ab37
Repaired internal references
Sascha L. Teichmann <teichmann@intevation.de>
parents:
3060
diff
changeset
|
25 import org.dive4elements.river.artifacts.model.GaugeDischargeFacet; |
bd047b71ab37
Repaired internal references
Sascha L. Teichmann <teichmann@intevation.de>
parents:
3060
diff
changeset
|
26 import org.dive4elements.river.artifacts.model.FacetTypes; |
bd047b71ab37
Repaired internal references
Sascha L. Teichmann <teichmann@intevation.de>
parents:
3060
diff
changeset
|
27 import org.dive4elements.river.artifacts.model.WQKms; |
bd047b71ab37
Repaired internal references
Sascha L. Teichmann <teichmann@intevation.de>
parents:
3060
diff
changeset
|
28 import org.dive4elements.river.artifacts.model.ReportFacet; |
bd047b71ab37
Repaired internal references
Sascha L. Teichmann <teichmann@intevation.de>
parents:
3060
diff
changeset
|
29 import org.dive4elements.river.artifacts.model.EmptyFacet; |
bd047b71ab37
Repaired internal references
Sascha L. Teichmann <teichmann@intevation.de>
parents:
3060
diff
changeset
|
30 import org.dive4elements.river.artifacts.model.CalculationResult; |
bd047b71ab37
Repaired internal references
Sascha L. Teichmann <teichmann@intevation.de>
parents:
3060
diff
changeset
|
31 |
bd047b71ab37
Repaired internal references
Sascha L. Teichmann <teichmann@intevation.de>
parents:
3060
diff
changeset
|
32 import org.dive4elements.river.artifacts.resources.Resources; |
bd047b71ab37
Repaired internal references
Sascha L. Teichmann <teichmann@intevation.de>
parents:
3060
diff
changeset
|
33 |
bd047b71ab37
Repaired internal references
Sascha L. Teichmann <teichmann@intevation.de>
parents:
3060
diff
changeset
|
34 import org.dive4elements.river.model.Gauge; |
6851
4937dab5ff7a
(issue1391): Build the current discarge curve name as requested
Andre Heinecke <aheinecke@intevation.de>
parents:
6693
diff
changeset
|
35 import org.dive4elements.river.model.TimeInterval; |
3051
49727e9dcfde
Polished Gauge Discharges in computed discharge curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2734
diff
changeset
|
36 |
2723
5ce5abd173b9
Added skeleton for gauge discharge curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
37 /** |
5ce5abd173b9
Added skeleton for gauge discharge curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
38 * The only state for an GaugeDischargeState (River and km known). |
5ce5abd173b9
Added skeleton for gauge discharge curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
39 */ |
5ce5abd173b9
Added skeleton for gauge discharge curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
40 public class GaugeDischargeState |
5ce5abd173b9
Added skeleton for gauge discharge curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
41 extends DefaultState |
5ce5abd173b9
Added skeleton for gauge discharge curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
42 implements FacetTypes |
5ce5abd173b9
Added skeleton for gauge discharge curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
43 { |
5ce5abd173b9
Added skeleton for gauge discharge curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
44 /** Developer-centric description of facet. */ |
5ce5abd173b9
Added skeleton for gauge discharge curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
45 public static final String I18N_DESCRIPTION = "facet.discharge.curve"; |
5ce5abd173b9
Added skeleton for gauge discharge curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
46 |
8202
e4606eae8ea5
sed src/**/*.java 's/logger/log/g'
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6851
diff
changeset
|
47 /** The log that is used in this state. */ |
e4606eae8ea5
sed src/**/*.java 's/logger/log/g'
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6851
diff
changeset
|
48 private static final Logger log = |
3051
49727e9dcfde
Polished Gauge Discharges in computed discharge curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2734
diff
changeset
|
49 Logger.getLogger(GaugeDischargeState.class); |
49727e9dcfde
Polished Gauge Discharges in computed discharge curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2734
diff
changeset
|
50 |
49727e9dcfde
Polished Gauge Discharges in computed discharge curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2734
diff
changeset
|
51 |
49727e9dcfde
Polished Gauge Discharges in computed discharge curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2734
diff
changeset
|
52 /** |
49727e9dcfde
Polished Gauge Discharges in computed discharge curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2734
diff
changeset
|
53 * Create i18ned name for gaugedischargeFacet. |
49727e9dcfde
Polished Gauge Discharges in computed discharge curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2734
diff
changeset
|
54 * @param artifact The artifact which has information about the gauge. |
49727e9dcfde
Polished Gauge Discharges in computed discharge curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2734
diff
changeset
|
55 * @param meta used for i18n. |
49727e9dcfde
Polished Gauge Discharges in computed discharge curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2734
diff
changeset
|
56 * @return localized name for gaugedischargefacet. |
49727e9dcfde
Polished Gauge Discharges in computed discharge curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2734
diff
changeset
|
57 */ |
49727e9dcfde
Polished Gauge Discharges in computed discharge curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2734
diff
changeset
|
58 protected String createFacetName(GaugeDischargeArtifact artifact, |
49727e9dcfde
Polished Gauge Discharges in computed discharge curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2734
diff
changeset
|
59 CallMeta meta) { |
49727e9dcfde
Polished Gauge Discharges in computed discharge curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2734
diff
changeset
|
60 |
6693
88bb0c794833
issue1391: Enable GaugeDischarge artifact to directly load a table by its ID
Andre Heinecke <aheinecke@intevation.de>
parents:
5994
diff
changeset
|
61 if (artifact.getFacetWishName() != null) { |
88bb0c794833
issue1391: Enable GaugeDischarge artifact to directly load a table by its ID
Andre Heinecke <aheinecke@intevation.de>
parents:
5994
diff
changeset
|
62 /* We let the Artifact overwrite our name as this allows |
88bb0c794833
issue1391: Enable GaugeDischarge artifact to directly load a table by its ID
Andre Heinecke <aheinecke@intevation.de>
parents:
5994
diff
changeset
|
63 * injecting the facet name from the Datacage */ |
88bb0c794833
issue1391: Enable GaugeDischarge artifact to directly load a table by its ID
Andre Heinecke <aheinecke@intevation.de>
parents:
5994
diff
changeset
|
64 return artifact.getFacetWishName(); |
88bb0c794833
issue1391: Enable GaugeDischarge artifact to directly load a table by its ID
Andre Heinecke <aheinecke@intevation.de>
parents:
5994
diff
changeset
|
65 } |
88bb0c794833
issue1391: Enable GaugeDischarge artifact to directly load a table by its ID
Andre Heinecke <aheinecke@intevation.de>
parents:
5994
diff
changeset
|
66 |
3051
49727e9dcfde
Polished Gauge Discharges in computed discharge curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2734
diff
changeset
|
67 Gauge gauge = artifact.getGauge(); |
8435
6ebad936d82b
Unify descriptions of model discharge curve at gauge.
"Tom Gottfried <tom@intevation.de>"
parents:
8406
diff
changeset
|
68 TimeInterval validity = gauge.fetchMasterDischargeTable() |
6ebad936d82b
Unify descriptions of model discharge curve at gauge.
"Tom Gottfried <tom@intevation.de>"
parents:
8406
diff
changeset
|
69 .getTimeInterval(); |
6ebad936d82b
Unify descriptions of model discharge curve at gauge.
"Tom Gottfried <tom@intevation.de>"
parents:
8406
diff
changeset
|
70 Date stopTime = validity.getStopTime(); |
3051
49727e9dcfde
Polished Gauge Discharges in computed discharge curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2734
diff
changeset
|
71 String name = Resources.getMsg( |
49727e9dcfde
Polished Gauge Discharges in computed discharge curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2734
diff
changeset
|
72 meta, |
8856 | 73 "chart.discharge.curve.model" |
74 + (stopTime != null ? "" : ".nostop"), | |
8435
6ebad936d82b
Unify descriptions of model discharge curve at gauge.
"Tom Gottfried <tom@intevation.de>"
parents:
8406
diff
changeset
|
75 new Object[] {gauge.getName(), |
6ebad936d82b
Unify descriptions of model discharge curve at gauge.
"Tom Gottfried <tom@intevation.de>"
parents:
8406
diff
changeset
|
76 validity.getStartTime(), |
6ebad936d82b
Unify descriptions of model discharge curve at gauge.
"Tom Gottfried <tom@intevation.de>"
parents:
8406
diff
changeset
|
77 stopTime |
6ebad936d82b
Unify descriptions of model discharge curve at gauge.
"Tom Gottfried <tom@intevation.de>"
parents:
8406
diff
changeset
|
78 } |
6ebad936d82b
Unify descriptions of model discharge curve at gauge.
"Tom Gottfried <tom@intevation.de>"
parents:
8406
diff
changeset
|
79 ); |
3051
49727e9dcfde
Polished Gauge Discharges in computed discharge curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2734
diff
changeset
|
80 |
49727e9dcfde
Polished Gauge Discharges in computed discharge curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2734
diff
changeset
|
81 return name; |
49727e9dcfde
Polished Gauge Discharges in computed discharge curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2734
diff
changeset
|
82 } |
2723
5ce5abd173b9
Added skeleton for gauge discharge curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
83 |
5ce5abd173b9
Added skeleton for gauge discharge curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
84 |
5ce5abd173b9
Added skeleton for gauge discharge curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
85 /** |
5ce5abd173b9
Added skeleton for gauge discharge curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
86 * Add an GaugeDischargeFacet to list of Facets. |
5ce5abd173b9
Added skeleton for gauge discharge curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
87 * |
5ce5abd173b9
Added skeleton for gauge discharge curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
88 * @param artifact Ignored. |
5ce5abd173b9
Added skeleton for gauge discharge curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
89 * @param hash Ignored. |
5ce5abd173b9
Added skeleton for gauge discharge curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
90 * @param context Ignored. |
5ce5abd173b9
Added skeleton for gauge discharge curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
91 * @param meta CallMeta to be used for internationalization. |
8406
6ae0c5116d58
Distinguish between types of measurement stations and filter appropriately (plus minor cleanup in related classes).
Tom Gottfried <tom@intevation.de>
parents:
8390
diff
changeset
|
92 * @param facets List to add Facet to. |
2723
5ce5abd173b9
Added skeleton for gauge discharge curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
93 * |
5ce5abd173b9
Added skeleton for gauge discharge curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
94 * @return null. |
5ce5abd173b9
Added skeleton for gauge discharge curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
95 */ |
5ce5abd173b9
Added skeleton for gauge discharge curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
96 @Override |
5ce5abd173b9
Added skeleton for gauge discharge curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
97 public Object computeInit( |
5867
59ff03ff48f1
River artifacts: Renamed FLYSArtifact(Collection) to D4EArtifact(Collection).
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5863
diff
changeset
|
98 D4EArtifact artifact, |
2723
5ce5abd173b9
Added skeleton for gauge discharge curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
99 String hash, |
5ce5abd173b9
Added skeleton for gauge discharge curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
100 Object context, |
5ce5abd173b9
Added skeleton for gauge discharge curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
101 CallMeta meta, |
5ce5abd173b9
Added skeleton for gauge discharge curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
102 List<Facet> facets |
5ce5abd173b9
Added skeleton for gauge discharge curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
103 ) { |
8202
e4606eae8ea5
sed src/**/*.java 's/logger/log/g'
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6851
diff
changeset
|
104 log.debug("GaugeDischargeState.computeInit()"); |
2723
5ce5abd173b9
Added skeleton for gauge discharge curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
105 |
5ce5abd173b9
Added skeleton for gauge discharge curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
106 GaugeDischargeFacet facet = new GaugeDischargeFacet( |
5ce5abd173b9
Added skeleton for gauge discharge curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
107 0, |
5ce5abd173b9
Added skeleton for gauge discharge curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
108 DISCHARGE_CURVE, |
3051
49727e9dcfde
Polished Gauge Discharges in computed discharge curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2734
diff
changeset
|
109 createFacetName((GaugeDischargeArtifact) artifact, meta)); |
49727e9dcfde
Polished Gauge Discharges in computed discharge curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2734
diff
changeset
|
110 |
2723
5ce5abd173b9
Added skeleton for gauge discharge curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
111 facets.add(facet); |
5ce5abd173b9
Added skeleton for gauge discharge curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
112 |
5ce5abd173b9
Added skeleton for gauge discharge curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
113 return null; |
5ce5abd173b9
Added skeleton for gauge discharge curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
114 } |
5ce5abd173b9
Added skeleton for gauge discharge curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
115 |
2734
89731cb8c385
More debugging of discharge curve issue.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2723
diff
changeset
|
116 |
3051
49727e9dcfde
Polished Gauge Discharges in computed discharge curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2734
diff
changeset
|
117 /** |
49727e9dcfde
Polished Gauge Discharges in computed discharge curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2734
diff
changeset
|
118 * 'Calculate' Discharge at Gauge. |
49727e9dcfde
Polished Gauge Discharges in computed discharge curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2734
diff
changeset
|
119 */ |
2734
89731cb8c385
More debugging of discharge curve issue.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2723
diff
changeset
|
120 @Override |
89731cb8c385
More debugging of discharge curve issue.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2723
diff
changeset
|
121 public Object computeAdvance( |
5867
59ff03ff48f1
River artifacts: Renamed FLYSArtifact(Collection) to D4EArtifact(Collection).
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5863
diff
changeset
|
122 D4EArtifact artifact, |
2734
89731cb8c385
More debugging of discharge curve issue.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2723
diff
changeset
|
123 String hash, |
89731cb8c385
More debugging of discharge curve issue.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2723
diff
changeset
|
124 CallContext context, |
89731cb8c385
More debugging of discharge curve issue.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2723
diff
changeset
|
125 List<Facet> facets, |
89731cb8c385
More debugging of discharge curve issue.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2723
diff
changeset
|
126 Object old |
89731cb8c385
More debugging of discharge curve issue.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2723
diff
changeset
|
127 ) { |
89731cb8c385
More debugging of discharge curve issue.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2723
diff
changeset
|
128 if (artifact instanceof GaugeDischargeArtifact) { |
8202
e4606eae8ea5
sed src/**/*.java 's/logger/log/g'
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6851
diff
changeset
|
129 log.debug("GaugeDischargeState.computeAdvance()"); |
8856 | 130 GaugeDischargeArtifact dischargeArtifact = |
131 (GaugeDischargeArtifact)artifact; | |
2734
89731cb8c385
More debugging of discharge curve issue.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2723
diff
changeset
|
132 |
89731cb8c385
More debugging of discharge curve issue.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2723
diff
changeset
|
133 CalculationResult res; |
89731cb8c385
More debugging of discharge curve issue.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2723
diff
changeset
|
134 |
3053
bb576facbe50
Use cache.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
3051
diff
changeset
|
135 |
bb576facbe50
Use cache.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
3051
diff
changeset
|
136 if (old instanceof CalculationResult) { |
2734
89731cb8c385
More debugging of discharge curve issue.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2723
diff
changeset
|
137 res = (CalculationResult) old; |
89731cb8c385
More debugging of discharge curve issue.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2723
diff
changeset
|
138 } |
3053
bb576facbe50
Use cache.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
3051
diff
changeset
|
139 else { |
2734
89731cb8c385
More debugging of discharge curve issue.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2723
diff
changeset
|
140 res = dischargeArtifact.getDischargeCurveData(); |
3053
bb576facbe50
Use cache.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
3051
diff
changeset
|
141 } |
2734
89731cb8c385
More debugging of discharge curve issue.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2723
diff
changeset
|
142 |
89731cb8c385
More debugging of discharge curve issue.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2723
diff
changeset
|
143 WQKms[] wqkms = (WQKms[]) res.getData(); |
89731cb8c385
More debugging of discharge curve issue.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2723
diff
changeset
|
144 |
89731cb8c385
More debugging of discharge curve issue.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2723
diff
changeset
|
145 if (wqkms != null && facets != null) { |
8856 | 146 log.debug( |
147 "GaugeDischargeState.computeAdvance(): create facets"); | |
2734
89731cb8c385
More debugging of discharge curve issue.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2723
diff
changeset
|
148 |
89731cb8c385
More debugging of discharge curve issue.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2723
diff
changeset
|
149 GaugeDischargeFacet facet = new GaugeDischargeFacet( |
89731cb8c385
More debugging of discharge curve issue.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2723
diff
changeset
|
150 0, |
3051
49727e9dcfde
Polished Gauge Discharges in computed discharge curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2734
diff
changeset
|
151 DISCHARGE_CURVE, |
49727e9dcfde
Polished Gauge Discharges in computed discharge curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2734
diff
changeset
|
152 createFacetName(dischargeArtifact, context.getMeta())); |
49727e9dcfde
Polished Gauge Discharges in computed discharge curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2734
diff
changeset
|
153 |
2734
89731cb8c385
More debugging of discharge curve issue.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2723
diff
changeset
|
154 facets.add(facet); |
89731cb8c385
More debugging of discharge curve issue.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2723
diff
changeset
|
155 |
89731cb8c385
More debugging of discharge curve issue.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2723
diff
changeset
|
156 if (res.getReport().hasProblems()) { |
89731cb8c385
More debugging of discharge curve issue.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2723
diff
changeset
|
157 facets.add(new ReportFacet()); |
89731cb8c385
More debugging of discharge curve issue.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2723
diff
changeset
|
158 } |
89731cb8c385
More debugging of discharge curve issue.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2723
diff
changeset
|
159 } |
89731cb8c385
More debugging of discharge curve issue.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2723
diff
changeset
|
160 else { |
89731cb8c385
More debugging of discharge curve issue.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2723
diff
changeset
|
161 if (wqkms == null) |
8856 | 162 log.debug( |
163 "GaugeDischargeState.computeAdvance(): wqkms 0"); | |
2734
89731cb8c385
More debugging of discharge curve issue.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2723
diff
changeset
|
164 else |
8856 | 165 log.debug( |
166 "GaugeDischargeState.computeAdvance(): facets 0"); | |
2734
89731cb8c385
More debugging of discharge curve issue.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2723
diff
changeset
|
167 } |
89731cb8c385
More debugging of discharge curve issue.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2723
diff
changeset
|
168 |
89731cb8c385
More debugging of discharge curve issue.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2723
diff
changeset
|
169 return res; |
89731cb8c385
More debugging of discharge curve issue.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2723
diff
changeset
|
170 } |
89731cb8c385
More debugging of discharge curve issue.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2723
diff
changeset
|
171 else if (artifact instanceof ChartArtifact) { |
89731cb8c385
More debugging of discharge curve issue.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2723
diff
changeset
|
172 ChartArtifact chart = (ChartArtifact)artifact; |
89731cb8c385
More debugging of discharge curve issue.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2723
diff
changeset
|
173 facets.add(new EmptyFacet()); |
89731cb8c385
More debugging of discharge curve issue.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2723
diff
changeset
|
174 return null; |
89731cb8c385
More debugging of discharge curve issue.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2723
diff
changeset
|
175 } |
89731cb8c385
More debugging of discharge curve issue.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2723
diff
changeset
|
176 return null; |
89731cb8c385
More debugging of discharge curve issue.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2723
diff
changeset
|
177 } |
2723
5ce5abd173b9
Added skeleton for gauge discharge curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
178 } |
5ce5abd173b9
Added skeleton for gauge discharge curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
179 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf-8 : |