annotate flys-client/src/main/java/de/intevation/flys/client/shared/model/DefaultArtifactDescription.java @ 4241:49cb65d5932d

Improved the historical discharge calculation. The calculation now creates new HistoricalWQKms (new subclass of WQKms). Those WQKms are used to create new facets from (new) type 'HistoricalDischargeCurveFacet'. The chart generator is improved to support those facets.
author Ingo Weinzierl <ingo.weinzierl@intevation.de>
date Wed, 24 Oct 2012 14:34:35 +0200
parents e82acd5c86f7
children
rev   line source
12
fa0aad20af53 Adjusted interfaces used for the ArtifactDescription and added default implementations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1 package de.intevation.flys.client.shared.model;
fa0aad20af53 Adjusted interfaces used for the ArtifactDescription and added default implementations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
2
1279
af6ad7522351 Bugfix: #336 Improved determination of min/max KM values - code moved to ArtifactDescription.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 807
diff changeset
3 import java.util.List;
af6ad7522351 Bugfix: #336 Improved determination of min/max KM values - code moved to ArtifactDescription.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 807
diff changeset
4
af6ad7522351 Bugfix: #336 Improved determination of min/max KM values - code moved to ArtifactDescription.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 807
diff changeset
5 import de.intevation.flys.client.shared.DoubleUtils;
af6ad7522351 Bugfix: #336 Improved determination of min/max KM values - code moved to ArtifactDescription.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 807
diff changeset
6
12
fa0aad20af53 Adjusted interfaces used for the ArtifactDescription and added default implementations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
7
fa0aad20af53 Adjusted interfaces used for the ArtifactDescription and added default implementations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
8 /**
fa0aad20af53 Adjusted interfaces used for the ArtifactDescription and added default implementations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
9 * The default implementation of an {@link ArtifactDescription}. This class just
fa0aad20af53 Adjusted interfaces used for the ArtifactDescription and added default implementations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
10 * implements constructors to create new instances and the necessary methods of
fa0aad20af53 Adjusted interfaces used for the ArtifactDescription and added default implementations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
11 * the interface.
fa0aad20af53 Adjusted interfaces used for the ArtifactDescription and added default implementations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
12 *
fa0aad20af53 Adjusted interfaces used for the ArtifactDescription and added default implementations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
13 * @author <a href="mailto:ingo.weinzierl@intevation.de">Ingo Weinzierl</a>
fa0aad20af53 Adjusted interfaces used for the ArtifactDescription and added default implementations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
14 */
fa0aad20af53 Adjusted interfaces used for the ArtifactDescription and added default implementations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
15 public class DefaultArtifactDescription implements ArtifactDescription {
fa0aad20af53 Adjusted interfaces used for the ArtifactDescription and added default implementations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
16
fa0aad20af53 Adjusted interfaces used for the ArtifactDescription and added default implementations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
17 /** Data that have been inserted in former states.*/
51
a2923d63f530 Introduced a data structure DataList to manage to list of Data objects of a single state.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 12
diff changeset
18 protected DataList[] oldData;
12
fa0aad20af53 Adjusted interfaces used for the ArtifactDescription and added default implementations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
19
fa0aad20af53 Adjusted interfaces used for the ArtifactDescription and added default implementations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
20 /** The Data that is allowed to be inserted in the current state.*/
51
a2923d63f530 Introduced a data structure DataList to manage to list of Data objects of a single state.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 12
diff changeset
21 protected DataList currentData;
12
fa0aad20af53 Adjusted interfaces used for the ArtifactDescription and added default implementations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
22
fa0aad20af53 Adjusted interfaces used for the ArtifactDescription and added default implementations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
23 /** The current state name.*/
fa0aad20af53 Adjusted interfaces used for the ArtifactDescription and added default implementations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
24 protected String currentState;
fa0aad20af53 Adjusted interfaces used for the ArtifactDescription and added default implementations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
25
fa0aad20af53 Adjusted interfaces used for the ArtifactDescription and added default implementations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
26 /** The names of reachable states.*/
fa0aad20af53 Adjusted interfaces used for the ArtifactDescription and added default implementations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
27 protected String[] reachableStates;
fa0aad20af53 Adjusted interfaces used for the ArtifactDescription and added default implementations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
28
64
3d646d3e8e27 Enhanced the ArtifactDescription and its default implementation to provide output modes.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 51
diff changeset
29 /** The output modes of this state.*/
3d646d3e8e27 Enhanced the ArtifactDescription and its default implementation to provide output modes.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 51
diff changeset
30 protected OutputMode[] outputModes;
3d646d3e8e27 Enhanced the ArtifactDescription and its default implementation to provide output modes.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 51
diff changeset
31
807
6f65e70fa11d Repaired broken recommendation parsing from Artifact's DESCRIBE document (which structure has changed).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 803
diff changeset
32 /** A list of recommendations suggested by the server.*/
6f65e70fa11d Repaired broken recommendation parsing from Artifact's DESCRIBE document (which structure has changed).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 803
diff changeset
33 protected Recommendation[] recommendations;
803
653ae84533e7 Read/create recommended Artifacts and add them to the current Collection.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 64
diff changeset
34
12
fa0aad20af53 Adjusted interfaces used for the ArtifactDescription and added default implementations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
35
fa0aad20af53 Adjusted interfaces used for the ArtifactDescription and added default implementations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
36 public DefaultArtifactDescription() {
fa0aad20af53 Adjusted interfaces used for the ArtifactDescription and added default implementations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
37 }
fa0aad20af53 Adjusted interfaces used for the ArtifactDescription and added default implementations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
38
fa0aad20af53 Adjusted interfaces used for the ArtifactDescription and added default implementations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
39
fa0aad20af53 Adjusted interfaces used for the ArtifactDescription and added default implementations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
40 /**
fa0aad20af53 Adjusted interfaces used for the ArtifactDescription and added default implementations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
41 * The default constructor.
fa0aad20af53 Adjusted interfaces used for the ArtifactDescription and added default implementations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
42 *
fa0aad20af53 Adjusted interfaces used for the ArtifactDescription and added default implementations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
43 * @param old The data that have been inserted in former states.
fa0aad20af53 Adjusted interfaces used for the ArtifactDescription and added default implementations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
44 * @param current The data that might be inserted in the current state.
fa0aad20af53 Adjusted interfaces used for the ArtifactDescription and added default implementations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
45 * @param state The name of the current state.
fa0aad20af53 Adjusted interfaces used for the ArtifactDescription and added default implementations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
46 * @param reachableStates The names of the reachable states.
fa0aad20af53 Adjusted interfaces used for the ArtifactDescription and added default implementations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
47 */
fa0aad20af53 Adjusted interfaces used for the ArtifactDescription and added default implementations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
48 public DefaultArtifactDescription(
64
3d646d3e8e27 Enhanced the ArtifactDescription and its default implementation to provide output modes.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 51
diff changeset
49 DataList[] old,
3d646d3e8e27 Enhanced the ArtifactDescription and its default implementation to provide output modes.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 51
diff changeset
50 DataList current,
3d646d3e8e27 Enhanced the ArtifactDescription and its default implementation to provide output modes.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 51
diff changeset
51 String state,
3d646d3e8e27 Enhanced the ArtifactDescription and its default implementation to provide output modes.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 51
diff changeset
52 String[] reachableStates)
12
fa0aad20af53 Adjusted interfaces used for the ArtifactDescription and added default implementations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
53 {
fa0aad20af53 Adjusted interfaces used for the ArtifactDescription and added default implementations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
54 this.oldData = old;
fa0aad20af53 Adjusted interfaces used for the ArtifactDescription and added default implementations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
55 this.currentData = current;
fa0aad20af53 Adjusted interfaces used for the ArtifactDescription and added default implementations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
56 this.currentState = state;
fa0aad20af53 Adjusted interfaces used for the ArtifactDescription and added default implementations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
57 this.reachableStates = reachableStates;
fa0aad20af53 Adjusted interfaces used for the ArtifactDescription and added default implementations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
58 }
fa0aad20af53 Adjusted interfaces used for the ArtifactDescription and added default implementations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
59
fa0aad20af53 Adjusted interfaces used for the ArtifactDescription and added default implementations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
60
64
3d646d3e8e27 Enhanced the ArtifactDescription and its default implementation to provide output modes.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 51
diff changeset
61 /**
3d646d3e8e27 Enhanced the ArtifactDescription and its default implementation to provide output modes.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 51
diff changeset
62 * The default constructor.
3d646d3e8e27 Enhanced the ArtifactDescription and its default implementation to provide output modes.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 51
diff changeset
63 *
3d646d3e8e27 Enhanced the ArtifactDescription and its default implementation to provide output modes.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 51
diff changeset
64 * @param old The data that have been inserted in former states.
3d646d3e8e27 Enhanced the ArtifactDescription and its default implementation to provide output modes.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 51
diff changeset
65 * @param current The data that might be inserted in the current state.
3d646d3e8e27 Enhanced the ArtifactDescription and its default implementation to provide output modes.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 51
diff changeset
66 * @param state The name of the current state.
3d646d3e8e27 Enhanced the ArtifactDescription and its default implementation to provide output modes.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 51
diff changeset
67 * @param reachableStates The names of the reachable states.
3d646d3e8e27 Enhanced the ArtifactDescription and its default implementation to provide output modes.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 51
diff changeset
68 * @param outputModes The available output modes of this artifact.
3d646d3e8e27 Enhanced the ArtifactDescription and its default implementation to provide output modes.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 51
diff changeset
69 */
3d646d3e8e27 Enhanced the ArtifactDescription and its default implementation to provide output modes.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 51
diff changeset
70 public DefaultArtifactDescription(
807
6f65e70fa11d Repaired broken recommendation parsing from Artifact's DESCRIBE document (which structure has changed).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 803
diff changeset
71 DataList[] old,
6f65e70fa11d Repaired broken recommendation parsing from Artifact's DESCRIBE document (which structure has changed).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 803
diff changeset
72 DataList current,
6f65e70fa11d Repaired broken recommendation parsing from Artifact's DESCRIBE document (which structure has changed).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 803
diff changeset
73 String state,
6f65e70fa11d Repaired broken recommendation parsing from Artifact's DESCRIBE document (which structure has changed).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 803
diff changeset
74 String[] reachableStates,
6f65e70fa11d Repaired broken recommendation parsing from Artifact's DESCRIBE document (which structure has changed).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 803
diff changeset
75 OutputMode[] outputModes,
6f65e70fa11d Repaired broken recommendation parsing from Artifact's DESCRIBE document (which structure has changed).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 803
diff changeset
76 Recommendation[] recommendations)
64
3d646d3e8e27 Enhanced the ArtifactDescription and its default implementation to provide output modes.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 51
diff changeset
77 {
3d646d3e8e27 Enhanced the ArtifactDescription and its default implementation to provide output modes.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 51
diff changeset
78 this(old, current, state, reachableStates);
807
6f65e70fa11d Repaired broken recommendation parsing from Artifact's DESCRIBE document (which structure has changed).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 803
diff changeset
79 this.outputModes = outputModes;
6f65e70fa11d Repaired broken recommendation parsing from Artifact's DESCRIBE document (which structure has changed).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 803
diff changeset
80 this.recommendations = recommendations;
64
3d646d3e8e27 Enhanced the ArtifactDescription and its default implementation to provide output modes.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 51
diff changeset
81 }
3d646d3e8e27 Enhanced the ArtifactDescription and its default implementation to provide output modes.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 51
diff changeset
82
3d646d3e8e27 Enhanced the ArtifactDescription and its default implementation to provide output modes.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 51
diff changeset
83
51
a2923d63f530 Introduced a data structure DataList to manage to list of Data objects of a single state.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 12
diff changeset
84 public DataList[] getOldData() {
12
fa0aad20af53 Adjusted interfaces used for the ArtifactDescription and added default implementations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
85 return oldData;
fa0aad20af53 Adjusted interfaces used for the ArtifactDescription and added default implementations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
86 }
fa0aad20af53 Adjusted interfaces used for the ArtifactDescription and added default implementations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
87
fa0aad20af53 Adjusted interfaces used for the ArtifactDescription and added default implementations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
88
51
a2923d63f530 Introduced a data structure DataList to manage to list of Data objects of a single state.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 12
diff changeset
89 public DataList getCurrentData() {
12
fa0aad20af53 Adjusted interfaces used for the ArtifactDescription and added default implementations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
90 return currentData;
fa0aad20af53 Adjusted interfaces used for the ArtifactDescription and added default implementations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
91 }
fa0aad20af53 Adjusted interfaces used for the ArtifactDescription and added default implementations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
92
fa0aad20af53 Adjusted interfaces used for the ArtifactDescription and added default implementations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
93
fa0aad20af53 Adjusted interfaces used for the ArtifactDescription and added default implementations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
94 public String getCurrentState() {
fa0aad20af53 Adjusted interfaces used for the ArtifactDescription and added default implementations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
95 return currentState;
fa0aad20af53 Adjusted interfaces used for the ArtifactDescription and added default implementations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
96 }
fa0aad20af53 Adjusted interfaces used for the ArtifactDescription and added default implementations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
97
fa0aad20af53 Adjusted interfaces used for the ArtifactDescription and added default implementations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
98
fa0aad20af53 Adjusted interfaces used for the ArtifactDescription and added default implementations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
99 public String[] getReachableStates() {
fa0aad20af53 Adjusted interfaces used for the ArtifactDescription and added default implementations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
100 return reachableStates;
fa0aad20af53 Adjusted interfaces used for the ArtifactDescription and added default implementations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
101 }
64
3d646d3e8e27 Enhanced the ArtifactDescription and its default implementation to provide output modes.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 51
diff changeset
102
3d646d3e8e27 Enhanced the ArtifactDescription and its default implementation to provide output modes.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 51
diff changeset
103
3d646d3e8e27 Enhanced the ArtifactDescription and its default implementation to provide output modes.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 51
diff changeset
104 public OutputMode[] getOutputModes() {
3d646d3e8e27 Enhanced the ArtifactDescription and its default implementation to provide output modes.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 51
diff changeset
105 return outputModes;
3d646d3e8e27 Enhanced the ArtifactDescription and its default implementation to provide output modes.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 51
diff changeset
106 }
803
653ae84533e7 Read/create recommended Artifacts and add them to the current Collection.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 64
diff changeset
107
653ae84533e7 Read/create recommended Artifacts and add them to the current Collection.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 64
diff changeset
108
807
6f65e70fa11d Repaired broken recommendation parsing from Artifact's DESCRIBE document (which structure has changed).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 803
diff changeset
109 public Recommendation[] getRecommendations() {
6f65e70fa11d Repaired broken recommendation parsing from Artifact's DESCRIBE document (which structure has changed).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 803
diff changeset
110 return recommendations;
803
653ae84533e7 Read/create recommended Artifacts and add them to the current Collection.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 64
diff changeset
111 }
1279
af6ad7522351 Bugfix: #336 Improved determination of min/max KM values - code moved to ArtifactDescription.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 807
diff changeset
112
af6ad7522351 Bugfix: #336 Improved determination of min/max KM values - code moved to ArtifactDescription.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 807
diff changeset
113
af6ad7522351 Bugfix: #336 Improved determination of min/max KM values - code moved to ArtifactDescription.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 807
diff changeset
114 public String getRiver() {
2467
070321cf17e1 Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1279
diff changeset
115 return getDataValueAsString("river");
1279
af6ad7522351 Bugfix: #336 Improved determination of min/max KM values - code moved to ArtifactDescription.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 807
diff changeset
116 }
af6ad7522351 Bugfix: #336 Improved determination of min/max KM values - code moved to ArtifactDescription.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 807
diff changeset
117
af6ad7522351 Bugfix: #336 Improved determination of min/max KM values - code moved to ArtifactDescription.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 807
diff changeset
118
3383
dc48bc58102f commit omitted change.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2467
diff changeset
119 /** Get [min,max] of data items. */
1279
af6ad7522351 Bugfix: #336 Improved determination of min/max KM values - code moved to ArtifactDescription.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 807
diff changeset
120 public double[] getKMRange() {
af6ad7522351 Bugfix: #336 Improved determination of min/max KM values - code moved to ArtifactDescription.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 807
diff changeset
121 Double[] mm = new Double[2];
af6ad7522351 Bugfix: #336 Improved determination of min/max KM values - code moved to ArtifactDescription.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 807
diff changeset
122
af6ad7522351 Bugfix: #336 Improved determination of min/max KM values - code moved to ArtifactDescription.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 807
diff changeset
123 for (DataList list: oldData) {
af6ad7522351 Bugfix: #336 Improved determination of min/max KM values - code moved to ArtifactDescription.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 807
diff changeset
124 List<Data> dataList = list.getAll();
af6ad7522351 Bugfix: #336 Improved determination of min/max KM values - code moved to ArtifactDescription.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 807
diff changeset
125
af6ad7522351 Bugfix: #336 Improved determination of min/max KM values - code moved to ArtifactDescription.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 807
diff changeset
126 for (Data data: dataList) {
af6ad7522351 Bugfix: #336 Improved determination of min/max KM values - code moved to ArtifactDescription.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 807
diff changeset
127 String dataName = data.getLabel();
af6ad7522351 Bugfix: #336 Improved determination of min/max KM values - code moved to ArtifactDescription.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 807
diff changeset
128 DataItem item = data.getItems()[0];
af6ad7522351 Bugfix: #336 Improved determination of min/max KM values - code moved to ArtifactDescription.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 807
diff changeset
129
3383
dc48bc58102f commit omitted change.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2467
diff changeset
130 if (dataName.equals("ld_from") || dataName.equals("from")) {
1279
af6ad7522351 Bugfix: #336 Improved determination of min/max KM values - code moved to ArtifactDescription.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 807
diff changeset
131 Double d = DoubleUtils.getDouble(item.getStringValue());
af6ad7522351 Bugfix: #336 Improved determination of min/max KM values - code moved to ArtifactDescription.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 807
diff changeset
132
af6ad7522351 Bugfix: #336 Improved determination of min/max KM values - code moved to ArtifactDescription.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 807
diff changeset
133 if (d != null) {
af6ad7522351 Bugfix: #336 Improved determination of min/max KM values - code moved to ArtifactDescription.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 807
diff changeset
134 mm[0] = d;
af6ad7522351 Bugfix: #336 Improved determination of min/max KM values - code moved to ArtifactDescription.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 807
diff changeset
135 }
af6ad7522351 Bugfix: #336 Improved determination of min/max KM values - code moved to ArtifactDescription.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 807
diff changeset
136 }
3383
dc48bc58102f commit omitted change.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2467
diff changeset
137 else if (dataName.equals("ld_to") || dataName.equals("to")) {
1279
af6ad7522351 Bugfix: #336 Improved determination of min/max KM values - code moved to ArtifactDescription.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 807
diff changeset
138 Double d = DoubleUtils.getDouble(item.getStringValue());
af6ad7522351 Bugfix: #336 Improved determination of min/max KM values - code moved to ArtifactDescription.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 807
diff changeset
139
af6ad7522351 Bugfix: #336 Improved determination of min/max KM values - code moved to ArtifactDescription.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 807
diff changeset
140 if (d != null) {
af6ad7522351 Bugfix: #336 Improved determination of min/max KM values - code moved to ArtifactDescription.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 807
diff changeset
141 mm[1] = d;
af6ad7522351 Bugfix: #336 Improved determination of min/max KM values - code moved to ArtifactDescription.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 807
diff changeset
142 }
af6ad7522351 Bugfix: #336 Improved determination of min/max KM values - code moved to ArtifactDescription.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 807
diff changeset
143 }
af6ad7522351 Bugfix: #336 Improved determination of min/max KM values - code moved to ArtifactDescription.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 807
diff changeset
144 else if (dataName.equals("ld_locations")) {
af6ad7522351 Bugfix: #336 Improved determination of min/max KM values - code moved to ArtifactDescription.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 807
diff changeset
145 return DoubleUtils.getMinMax(item.getStringValue());
af6ad7522351 Bugfix: #336 Improved determination of min/max KM values - code moved to ArtifactDescription.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 807
diff changeset
146 }
af6ad7522351 Bugfix: #336 Improved determination of min/max KM values - code moved to ArtifactDescription.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 807
diff changeset
147 }
af6ad7522351 Bugfix: #336 Improved determination of min/max KM values - code moved to ArtifactDescription.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 807
diff changeset
148
af6ad7522351 Bugfix: #336 Improved determination of min/max KM values - code moved to ArtifactDescription.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 807
diff changeset
149 if (mm[0] != null && mm[1] != null) {
af6ad7522351 Bugfix: #336 Improved determination of min/max KM values - code moved to ArtifactDescription.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 807
diff changeset
150 return new double[] { mm[0], mm[1] };
af6ad7522351 Bugfix: #336 Improved determination of min/max KM values - code moved to ArtifactDescription.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 807
diff changeset
151 }
af6ad7522351 Bugfix: #336 Improved determination of min/max KM values - code moved to ArtifactDescription.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 807
diff changeset
152 }
af6ad7522351 Bugfix: #336 Improved determination of min/max KM values - code moved to ArtifactDescription.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 807
diff changeset
153
af6ad7522351 Bugfix: #336 Improved determination of min/max KM values - code moved to ArtifactDescription.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 807
diff changeset
154 return null;
af6ad7522351 Bugfix: #336 Improved determination of min/max KM values - code moved to ArtifactDescription.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 807
diff changeset
155 }
2467
070321cf17e1 Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1279
diff changeset
156
070321cf17e1 Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1279
diff changeset
157
070321cf17e1 Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1279
diff changeset
158 public String getReferenceGauge() {
070321cf17e1 Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1279
diff changeset
159 return getDataValueAsString("reference_gauge");
070321cf17e1 Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1279
diff changeset
160 }
070321cf17e1 Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1279
diff changeset
161
070321cf17e1 Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1279
diff changeset
162
070321cf17e1 Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1279
diff changeset
163 public String getDataValueAsString(String name) {
3719
e82acd5c86f7 Merged revisions 5495-5496,5509,5514-5515,5521-5526 via svnmerge from
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3383
diff changeset
164 if (oldData == null) {
e82acd5c86f7 Merged revisions 5495-5496,5509,5514-5515,5521-5526 via svnmerge from
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3383
diff changeset
165 return null;
e82acd5c86f7 Merged revisions 5495-5496,5509,5514-5515,5521-5526 via svnmerge from
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3383
diff changeset
166 }
2467
070321cf17e1 Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1279
diff changeset
167 for (DataList list: oldData) {
070321cf17e1 Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1279
diff changeset
168 List<Data> dataList = list.getAll();
070321cf17e1 Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1279
diff changeset
169
070321cf17e1 Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1279
diff changeset
170 for (Data d: dataList) {
070321cf17e1 Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1279
diff changeset
171 String dataName = d.getLabel();
070321cf17e1 Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1279
diff changeset
172 DataItem item = d.getItems()[0];
070321cf17e1 Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1279
diff changeset
173
070321cf17e1 Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1279
diff changeset
174 if (dataName.equals(name)) {
070321cf17e1 Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1279
diff changeset
175 return item.getStringValue();
070321cf17e1 Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1279
diff changeset
176 }
070321cf17e1 Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1279
diff changeset
177 }
070321cf17e1 Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1279
diff changeset
178 }
070321cf17e1 Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1279
diff changeset
179
070321cf17e1 Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1279
diff changeset
180 return null;
070321cf17e1 Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1279
diff changeset
181 }
12
fa0aad20af53 Adjusted interfaces used for the ArtifactDescription and added default implementations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
182 }
fa0aad20af53 Adjusted interfaces used for the ArtifactDescription and added default implementations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
183 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :

http://dive4elements.wald.intevation.org