Mercurial > dive4elements > river
annotate artifacts/src/main/java/org/dive4elements/river/artifacts/states/WaterlevelState.java @ 6501:7cb247824ed1
Amtl. Linien: Added report if an official line was found in report.
author | Sascha L. Teichmann <teichmann@intevation.de> |
---|---|
date | Fri, 28 Jun 2013 14:11:58 +0200 |
parents | af13ceeba52a |
children | 1e6bd2831280 |
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:
4412
diff
changeset
|
9 package org.dive4elements.river.artifacts.states; |
688
dc3613c4daf6
Moved Waterlevel state into the correct package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
10 |
3883
f858028dde5f
Manual points (work in progress)
Christian Lins <christian.lins@intevation.de>
parents:
2618
diff
changeset
|
11 import java.util.List; |
f858028dde5f
Manual points (work in progress)
Christian Lins <christian.lins@intevation.de>
parents:
2618
diff
changeset
|
12 |
f858028dde5f
Manual points (work in progress)
Christian Lins <christian.lins@intevation.de>
parents:
2618
diff
changeset
|
13 import org.apache.log4j.Logger; |
f858028dde5f
Manual points (work in progress)
Christian Lins <christian.lins@intevation.de>
parents:
2618
diff
changeset
|
14 |
5831
bd047b71ab37
Repaired internal references
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4412
diff
changeset
|
15 import org.dive4elements.artifactdatabase.state.Facet; |
bd047b71ab37
Repaired internal references
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4412
diff
changeset
|
16 import org.dive4elements.artifacts.CallContext; |
bd047b71ab37
Repaired internal references
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4412
diff
changeset
|
17 import org.dive4elements.river.artifacts.ChartArtifact; |
5867
59ff03ff48f1
River artifacts: Renamed FLYSArtifact(Collection) to D4EArtifact(Collection).
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5865
diff
changeset
|
18 import org.dive4elements.river.artifacts.D4EArtifact; |
5831
bd047b71ab37
Repaired internal references
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4412
diff
changeset
|
19 import org.dive4elements.river.artifacts.WINFOArtifact; |
6501
7cb247824ed1
Amtl. Linien: Added report if an official line was found in report.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5994
diff
changeset
|
20 import org.dive4elements.river.artifacts.model.Calculation; |
5831
bd047b71ab37
Repaired internal references
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4412
diff
changeset
|
21 import org.dive4elements.river.artifacts.model.CalculationResult; |
bd047b71ab37
Repaired internal references
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4412
diff
changeset
|
22 import org.dive4elements.river.artifacts.model.CrossSectionWaterLineFacet; |
bd047b71ab37
Repaired internal references
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4412
diff
changeset
|
23 import org.dive4elements.river.artifacts.model.DataFacet; |
bd047b71ab37
Repaired internal references
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4412
diff
changeset
|
24 import org.dive4elements.river.artifacts.model.EmptyFacet; |
bd047b71ab37
Repaired internal references
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4412
diff
changeset
|
25 import org.dive4elements.river.artifacts.model.FacetTypes; |
6501
7cb247824ed1
Amtl. Linien: Added report if an official line was found in report.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5994
diff
changeset
|
26 import org.dive4elements.river.artifacts.model.OfficialLineFinder; |
5831
bd047b71ab37
Repaired internal references
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4412
diff
changeset
|
27 import org.dive4elements.river.artifacts.model.ReportFacet; |
bd047b71ab37
Repaired internal references
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4412
diff
changeset
|
28 import org.dive4elements.river.artifacts.model.WQKms; |
bd047b71ab37
Repaired internal references
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4412
diff
changeset
|
29 import org.dive4elements.river.artifacts.model.WaterlevelFacet; |
6501
7cb247824ed1
Amtl. Linien: Added report if an official line was found in report.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5994
diff
changeset
|
30 import org.dive4elements.river.artifacts.resources.Resources; |
5865
73da40528cf2
River artifacts: Renamed FLYSUtils to RiverUtils.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5863
diff
changeset
|
31 import org.dive4elements.river.utils.RiverUtils; |
2195
e14beb93a854
"Bezugslinenverfahren": Added stub loop for creating facets.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2176
diff
changeset
|
32 |
4412
1b4aaa7dbd07
WaterevelState: Doc.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
3883
diff
changeset
|
33 /** State in which a waterlevel has been calculated. */ |
692
22e4bffbe240
Generated facets for each output aspect.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
689
diff
changeset
|
34 public class WaterlevelState |
22e4bffbe240
Generated facets for each output aspect.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
689
diff
changeset
|
35 extends DefaultState |
22e4bffbe240
Generated facets for each output aspect.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
689
diff
changeset
|
36 implements FacetTypes |
22e4bffbe240
Generated facets for each output aspect.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
689
diff
changeset
|
37 { |
1111
b96ce07ba56c
Added dummy sceleton for Cross Sections.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1051
diff
changeset
|
38 /** The logger that is used in this state. */ |
688
dc3613c4daf6
Moved Waterlevel state into the correct package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
39 private static Logger logger = Logger.getLogger(WaterlevelState.class); |
dc3613c4daf6
Moved Waterlevel state into the correct package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
40 |
dc3613c4daf6
Moved Waterlevel state into the correct package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
41 |
1770
e8a98eee816d
Cosmetics, documentation.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1740
diff
changeset
|
42 /** |
e8a98eee816d
Cosmetics, documentation.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1740
diff
changeset
|
43 * From this state can only be continued trivially. |
e8a98eee816d
Cosmetics, documentation.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1740
diff
changeset
|
44 */ |
688
dc3613c4daf6
Moved Waterlevel state into the correct package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
45 @Override |
927
53a2be494765
Enhanced the transition model to continue the parameterization in the waterlevel state to compute flood maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
742
diff
changeset
|
46 protected String getUIProvider() { |
53a2be494765
Enhanced the transition model to continue the parameterization in the waterlevel state to compute flood maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
742
diff
changeset
|
47 return "continue"; |
53a2be494765
Enhanced the transition model to continue the parameterization in the waterlevel state to compute flood maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
742
diff
changeset
|
48 } |
53a2be494765
Enhanced the transition model to continue the parameterization in the waterlevel state to compute flood maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
742
diff
changeset
|
49 |
53a2be494765
Enhanced the transition model to continue the parameterization in the waterlevel state to compute flood maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
742
diff
changeset
|
50 |
2123
907322e269e3
Cosmetics.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2017
diff
changeset
|
51 /** |
907322e269e3
Cosmetics.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2017
diff
changeset
|
52 * Compute result or returned object from cache, create facets. |
907322e269e3
Cosmetics.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2017
diff
changeset
|
53 * @param old Object that was cached. |
907322e269e3
Cosmetics.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2017
diff
changeset
|
54 */ |
1140
96d7842e80ee
Cosmetics, refactored, resolved todo.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1138
diff
changeset
|
55 protected Object compute( |
96d7842e80ee
Cosmetics, refactored, resolved todo.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1138
diff
changeset
|
56 WINFOArtifact winfo, |
1664
71d5abde92f2
Bugfix: #176 and #349 Create proper titles for W and Q waterlevel facets.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1158
diff
changeset
|
57 CallContext cc, |
1140
96d7842e80ee
Cosmetics, refactored, resolved todo.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1138
diff
changeset
|
58 String hash, |
96d7842e80ee
Cosmetics, refactored, resolved todo.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1138
diff
changeset
|
59 List<Facet> facets, |
96d7842e80ee
Cosmetics, refactored, resolved todo.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1138
diff
changeset
|
60 Object old |
1138
d90f5bfa3ddf
Fix profile loading of cross section diagram.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1122
diff
changeset
|
61 ) { |
d90f5bfa3ddf
Fix profile loading of cross section diagram.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1122
diff
changeset
|
62 String id = getID(); |
d90f5bfa3ddf
Fix profile loading of cross section diagram.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1122
diff
changeset
|
63 |
d90f5bfa3ddf
Fix profile loading of cross section diagram.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1122
diff
changeset
|
64 CalculationResult res = old instanceof CalculationResult |
2123
907322e269e3
Cosmetics.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2017
diff
changeset
|
65 ? (CalculationResult) old |
1138
d90f5bfa3ddf
Fix profile loading of cross section diagram.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1122
diff
changeset
|
66 : winfo.getWaterlevelData(); |
d90f5bfa3ddf
Fix profile loading of cross section diagram.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1122
diff
changeset
|
67 |
d90f5bfa3ddf
Fix profile loading of cross section diagram.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1122
diff
changeset
|
68 if (facets == null) { |
d90f5bfa3ddf
Fix profile loading of cross section diagram.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1122
diff
changeset
|
69 return res; |
d90f5bfa3ddf
Fix profile loading of cross section diagram.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1122
diff
changeset
|
70 } |
d90f5bfa3ddf
Fix profile loading of cross section diagram.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1122
diff
changeset
|
71 |
2195
e14beb93a854
"Bezugslinenverfahren": Added stub loop for creating facets.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2176
diff
changeset
|
72 boolean debug = logger.isDebugEnabled(); |
e14beb93a854
"Bezugslinenverfahren": Added stub loop for creating facets.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2176
diff
changeset
|
73 |
2123
907322e269e3
Cosmetics.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2017
diff
changeset
|
74 WQKms [] wqkms = (WQKms []) res.getData(); |
1138
d90f5bfa3ddf
Fix profile loading of cross section diagram.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1122
diff
changeset
|
75 |
d90f5bfa3ddf
Fix profile loading of cross section diagram.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1122
diff
changeset
|
76 for (int i = 0; i < wqkms.length; i++) { |
2123
907322e269e3
Cosmetics.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2017
diff
changeset
|
77 String name = wqkms[i].getName(); |
1138
d90f5bfa3ddf
Fix profile loading of cross section diagram.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1122
diff
changeset
|
78 |
5865
73da40528cf2
River artifacts: Renamed FLYSUtils to RiverUtils.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5863
diff
changeset
|
79 String nameW = RiverUtils.createWspWTitle(winfo, cc, name); |
73da40528cf2
River artifacts: Renamed FLYSUtils to RiverUtils.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5863
diff
changeset
|
80 String nameQ = RiverUtils.createWspQTitle(winfo, cc, name); |
1138
d90f5bfa3ddf
Fix profile loading of cross section diagram.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1122
diff
changeset
|
81 |
2618
3a93bbbe2ec7
Fix for 'W free' validation and theme names.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2573
diff
changeset
|
82 // Hotfix for theme names. Themes with the same name cause problems |
3a93bbbe2ec7
Fix for 'W free' validation and theme names.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2573
diff
changeset
|
83 // aggregating chart legend items. |
3a93bbbe2ec7
Fix for 'W free' validation and theme names.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2573
diff
changeset
|
84 if (i > 0 && name.equals(wqkms[i - 1].getName())) { |
3a93bbbe2ec7
Fix for 'W free' validation and theme names.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2573
diff
changeset
|
85 nameW += "; Q=" + wqkms[i].get(0, new double[3])[1]; |
3a93bbbe2ec7
Fix for 'W free' validation and theme names.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2573
diff
changeset
|
86 nameQ += " = " + wqkms[i].get(0, new double[3])[1]; |
3a93bbbe2ec7
Fix for 'W free' validation and theme names.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2573
diff
changeset
|
87 } |
3a93bbbe2ec7
Fix for 'W free' validation and theme names.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2573
diff
changeset
|
88 |
2195
e14beb93a854
"Bezugslinenverfahren": Added stub loop for creating facets.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2176
diff
changeset
|
89 if (debug) { |
e14beb93a854
"Bezugslinenverfahren": Added stub loop for creating facets.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2176
diff
changeset
|
90 logger.debug("Create facet: " + nameW); |
e14beb93a854
"Bezugslinenverfahren": Added stub loop for creating facets.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2176
diff
changeset
|
91 logger.debug("Create facet: " + nameQ); |
e14beb93a854
"Bezugslinenverfahren": Added stub loop for creating facets.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2176
diff
changeset
|
92 } |
1138
d90f5bfa3ddf
Fix profile loading of cross section diagram.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1122
diff
changeset
|
93 |
d90f5bfa3ddf
Fix profile loading of cross section diagram.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1122
diff
changeset
|
94 Facet w = new WaterlevelFacet( |
d90f5bfa3ddf
Fix profile loading of cross section diagram.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1122
diff
changeset
|
95 i, LONGITUDINAL_W, nameW, ComputeType.ADVANCE, id, hash); |
d90f5bfa3ddf
Fix profile loading of cross section diagram.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1122
diff
changeset
|
96 Facet q = new WaterlevelFacet( |
d90f5bfa3ddf
Fix profile loading of cross section diagram.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1122
diff
changeset
|
97 i, LONGITUDINAL_Q, nameQ, ComputeType.ADVANCE, id, hash); |
d90f5bfa3ddf
Fix profile loading of cross section diagram.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1122
diff
changeset
|
98 |
2573
39145db61317
Fix flys/issue636 (cross-section: name of waterlevel facets).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2195
diff
changeset
|
99 facets.add(new CrossSectionWaterLineFacet(i, nameW)); |
1802
26d7077e42d2
Corrected CrossSection diagram/out to include one facet per computed waterlevel.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1770
diff
changeset
|
100 |
1138
d90f5bfa3ddf
Fix profile loading of cross section diagram.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1122
diff
changeset
|
101 facets.add(w); |
d90f5bfa3ddf
Fix profile loading of cross section diagram.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1122
diff
changeset
|
102 facets.add(q); |
d90f5bfa3ddf
Fix profile loading of cross section diagram.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1122
diff
changeset
|
103 } |
d90f5bfa3ddf
Fix profile loading of cross section diagram.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1122
diff
changeset
|
104 |
d90f5bfa3ddf
Fix profile loading of cross section diagram.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1122
diff
changeset
|
105 if (wqkms.length > 0) { |
d90f5bfa3ddf
Fix profile loading of cross section diagram.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1122
diff
changeset
|
106 Facet wst = new DataFacet( |
d90f5bfa3ddf
Fix profile loading of cross section diagram.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1122
diff
changeset
|
107 WST, "WST data", ComputeType.ADVANCE, hash, id); |
d90f5bfa3ddf
Fix profile loading of cross section diagram.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1122
diff
changeset
|
108 Facet csv = new DataFacet( |
d90f5bfa3ddf
Fix profile loading of cross section diagram.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1122
diff
changeset
|
109 CSV, "CSV data", ComputeType.ADVANCE, hash, id); |
2176
65dac9cf6ff5
Issue 138.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2154
diff
changeset
|
110 Facet pdf = new DataFacet( |
65dac9cf6ff5
Issue 138.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2154
diff
changeset
|
111 PDF, "PDF data", ComputeType.ADVANCE, hash, id); |
1138
d90f5bfa3ddf
Fix profile loading of cross section diagram.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1122
diff
changeset
|
112 |
d90f5bfa3ddf
Fix profile loading of cross section diagram.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1122
diff
changeset
|
113 facets.add(wst); |
d90f5bfa3ddf
Fix profile loading of cross section diagram.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1122
diff
changeset
|
114 facets.add(csv); |
2176
65dac9cf6ff5
Issue 138.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2154
diff
changeset
|
115 facets.add(pdf); |
1138
d90f5bfa3ddf
Fix profile loading of cross section diagram.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1122
diff
changeset
|
116 } |
d90f5bfa3ddf
Fix profile loading of cross section diagram.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1122
diff
changeset
|
117 |
6501
7cb247824ed1
Amtl. Linien: Added report if an official line was found in report.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5994
diff
changeset
|
118 Calculation report = res.getReport(); |
7cb247824ed1
Amtl. Linien: Added report if an official line was found in report.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5994
diff
changeset
|
119 |
7cb247824ed1
Amtl. Linien: Added report if an official line was found in report.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5994
diff
changeset
|
120 List<OfficialLineFinder.ValueRange> ols = |
7cb247824ed1
Amtl. Linien: Added report if an official line was found in report.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5994
diff
changeset
|
121 OfficialLineFinder.findOfficialLines(winfo); |
7cb247824ed1
Amtl. Linien: Added report if an official line was found in report.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5994
diff
changeset
|
122 |
7cb247824ed1
Amtl. Linien: Added report if an official line was found in report.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5994
diff
changeset
|
123 if (!ols.isEmpty()) { |
7cb247824ed1
Amtl. Linien: Added report if an official line was found in report.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5994
diff
changeset
|
124 for (OfficialLineFinder.ValueRange ol: ols) { |
7cb247824ed1
Amtl. Linien: Added report if an official line was found in report.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5994
diff
changeset
|
125 report.addProblem(Resources.format( |
7cb247824ed1
Amtl. Linien: Added report if an official line was found in report.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5994
diff
changeset
|
126 cc.getMeta(), |
7cb247824ed1
Amtl. Linien: Added report if an official line was found in report.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5994
diff
changeset
|
127 "official.line.found", |
7cb247824ed1
Amtl. Linien: Added report if an official line was found in report.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5994
diff
changeset
|
128 "Found official line for {0}.", |
7cb247824ed1
Amtl. Linien: Added report if an official line was found in report.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5994
diff
changeset
|
129 ol.getName())); |
7cb247824ed1
Amtl. Linien: Added report if an official line was found in report.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5994
diff
changeset
|
130 } |
7cb247824ed1
Amtl. Linien: Added report if an official line was found in report.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5994
diff
changeset
|
131 } |
7cb247824ed1
Amtl. Linien: Added report if an official line was found in report.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5994
diff
changeset
|
132 |
7cb247824ed1
Amtl. Linien: Added report if an official line was found in report.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5994
diff
changeset
|
133 if (report.hasProblems()) { |
1138
d90f5bfa3ddf
Fix profile loading of cross section diagram.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1122
diff
changeset
|
134 facets.add(new ReportFacet(ComputeType.ADVANCE, hash, id)); |
d90f5bfa3ddf
Fix profile loading of cross section diagram.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1122
diff
changeset
|
135 } |
d90f5bfa3ddf
Fix profile loading of cross section diagram.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1122
diff
changeset
|
136 |
d90f5bfa3ddf
Fix profile loading of cross section diagram.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1122
diff
changeset
|
137 return res; |
d90f5bfa3ddf
Fix profile loading of cross section diagram.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1122
diff
changeset
|
138 } |
d90f5bfa3ddf
Fix profile loading of cross section diagram.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1122
diff
changeset
|
139 |
d90f5bfa3ddf
Fix profile loading of cross section diagram.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1122
diff
changeset
|
140 |
1140
96d7842e80ee
Cosmetics, refactored, resolved todo.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1138
diff
changeset
|
141 /** |
96d7842e80ee
Cosmetics, refactored, resolved todo.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1138
diff
changeset
|
142 * @param context Ignored. |
96d7842e80ee
Cosmetics, refactored, resolved todo.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1138
diff
changeset
|
143 */ |
96d7842e80ee
Cosmetics, refactored, resolved todo.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1138
diff
changeset
|
144 @Override |
96d7842e80ee
Cosmetics, refactored, resolved todo.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1138
diff
changeset
|
145 public Object computeFeed( |
5867
59ff03ff48f1
River artifacts: Renamed FLYSArtifact(Collection) to D4EArtifact(Collection).
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5865
diff
changeset
|
146 D4EArtifact artifact, |
1140
96d7842e80ee
Cosmetics, refactored, resolved todo.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1138
diff
changeset
|
147 String hash, |
96d7842e80ee
Cosmetics, refactored, resolved todo.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1138
diff
changeset
|
148 CallContext context, |
96d7842e80ee
Cosmetics, refactored, resolved todo.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1138
diff
changeset
|
149 List<Facet> facets, |
96d7842e80ee
Cosmetics, refactored, resolved todo.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1138
diff
changeset
|
150 Object old |
96d7842e80ee
Cosmetics, refactored, resolved todo.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1138
diff
changeset
|
151 ) { |
2154
ce9b15673f3f
Use waterlevel state and longitudinal section generator for longitudinal
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2123
diff
changeset
|
152 if (artifact instanceof ChartArtifact) { |
ce9b15673f3f
Use waterlevel state and longitudinal section generator for longitudinal
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2123
diff
changeset
|
153 facets.add(new EmptyFacet()); |
ce9b15673f3f
Use waterlevel state and longitudinal section generator for longitudinal
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2123
diff
changeset
|
154 return null; |
ce9b15673f3f
Use waterlevel state and longitudinal section generator for longitudinal
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2123
diff
changeset
|
155 } |
1664
71d5abde92f2
Bugfix: #176 and #349 Create proper titles for W and Q waterlevel facets.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1158
diff
changeset
|
156 return compute((WINFOArtifact) artifact, context, hash, facets, old); |
1140
96d7842e80ee
Cosmetics, refactored, resolved todo.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1138
diff
changeset
|
157 } |
96d7842e80ee
Cosmetics, refactored, resolved todo.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1138
diff
changeset
|
158 |
96d7842e80ee
Cosmetics, refactored, resolved todo.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1138
diff
changeset
|
159 |
96d7842e80ee
Cosmetics, refactored, resolved todo.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1138
diff
changeset
|
160 /** |
96d7842e80ee
Cosmetics, refactored, resolved todo.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1138
diff
changeset
|
161 * @param context Ignored. |
96d7842e80ee
Cosmetics, refactored, resolved todo.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1138
diff
changeset
|
162 */ |
927
53a2be494765
Enhanced the transition model to continue the parameterization in the waterlevel state to compute flood maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
742
diff
changeset
|
163 @Override |
697
b972eba2ed8a
Removed ComputeCallback because this was thought too complicated. Fixed issue with facets not be re-generated if same state is entered again.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
696
diff
changeset
|
164 public Object computeAdvance( |
5867
59ff03ff48f1
River artifacts: Renamed FLYSArtifact(Collection) to D4EArtifact(Collection).
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5865
diff
changeset
|
165 D4EArtifact artifact, |
697
b972eba2ed8a
Removed ComputeCallback because this was thought too complicated. Fixed issue with facets not be re-generated if same state is entered again.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
696
diff
changeset
|
166 String hash, |
b972eba2ed8a
Removed ComputeCallback because this was thought too complicated. Fixed issue with facets not be re-generated if same state is entered again.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
696
diff
changeset
|
167 CallContext context, |
742
c09c9e05ecfa
Removed trailing whitespace.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
711
diff
changeset
|
168 List<Facet> facets, |
697
b972eba2ed8a
Removed ComputeCallback because this was thought too complicated. Fixed issue with facets not be re-generated if same state is entered again.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
696
diff
changeset
|
169 Object old |
b972eba2ed8a
Removed ComputeCallback because this was thought too complicated. Fixed issue with facets not be re-generated if same state is entered again.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
696
diff
changeset
|
170 ) { |
2154
ce9b15673f3f
Use waterlevel state and longitudinal section generator for longitudinal
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2123
diff
changeset
|
171 if (artifact instanceof ChartArtifact) { |
ce9b15673f3f
Use waterlevel state and longitudinal section generator for longitudinal
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2123
diff
changeset
|
172 facets.add(new EmptyFacet()); |
ce9b15673f3f
Use waterlevel state and longitudinal section generator for longitudinal
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2123
diff
changeset
|
173 return null; |
ce9b15673f3f
Use waterlevel state and longitudinal section generator for longitudinal
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2123
diff
changeset
|
174 } |
1664
71d5abde92f2
Bugfix: #176 and #349 Create proper titles for W and Q waterlevel facets.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1158
diff
changeset
|
175 return compute((WINFOArtifact) artifact, context, hash, facets, old); |
688
dc3613c4daf6
Moved Waterlevel state into the correct package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
176 } |
dc3613c4daf6
Moved Waterlevel state into the correct package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
177 } |
dc3613c4daf6
Moved Waterlevel state into the correct package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
178 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf-8 : |