annotate artifacts/src/main/java/org/dive4elements/river/artifacts/AbstractStaticStateArtifact.java @ 9801:1d7a72a50183 3.2.x tip

Assume Compose V2, consistently
author Tom Gottfried <tom@intevation.de>
date Thu, 23 Nov 2023 10:14:13 +0100
parents 0a5239a1e46e
children
rev   line source
5863
4897a58c8746 River artifacts: Added new copyright headers.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
1 /* Copyright (C) 2011, 2012, 2013 by Bundesanstalt für Gewässerkunde
4897a58c8746 River artifacts: Added new copyright headers.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
2 * Software engineering by Intevation GmbH
4897a58c8746 River artifacts: Added new copyright headers.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
3 *
5994
af13ceeba52a Removed trailing whitespace.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 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: 4185
diff changeset
9 package org.dive4elements.river.artifacts;
3936
4e1b3b4ef132 Add new Artifacts and State for displaying discharge curves at a gauge
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
10
4e1b3b4ef132 Add new Artifacts and State for displaying discharge curves at a gauge
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
11 import java.util.ArrayList;
4158
a699d6c42a8b Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents: 4157
diff changeset
12 import java.util.Collection;
3936
4e1b3b4ef132 Add new Artifacts and State for displaying discharge curves at a gauge
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
13 import java.util.List;
4e1b3b4ef132 Add new Artifacts and State for displaying discharge curves at a gauge
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
14
9726
0a5239a1e46e Upgrade to Log4j 2
Tom Gottfried <tom@intevation.de>
parents: 8856
diff changeset
15 import org.apache.logging.log4j.Logger;
0a5239a1e46e Upgrade to Log4j 2
Tom Gottfried <tom@intevation.de>
parents: 8856
diff changeset
16 import org.apache.logging.log4j.LogManager;
4158
a699d6c42a8b Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents: 4157
diff changeset
17
a699d6c42a8b Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents: 4157
diff changeset
18 import org.w3c.dom.Document;
a699d6c42a8b Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents: 4157
diff changeset
19 import org.w3c.dom.Element;
a699d6c42a8b Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents: 4157
diff changeset
20
5831
bd047b71ab37 Repaired internal references
Sascha L. Teichmann <teichmann@intevation.de>
parents: 4185
diff changeset
21 import org.dive4elements.artifacts.CallContext;
bd047b71ab37 Repaired internal references
Sascha L. Teichmann <teichmann@intevation.de>
parents: 4185
diff changeset
22 import org.dive4elements.artifacts.ArtifactNamespaceContext;
4158
a699d6c42a8b Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents: 4157
diff changeset
23
5831
bd047b71ab37 Repaired internal references
Sascha L. Teichmann <teichmann@intevation.de>
parents: 4185
diff changeset
24 import org.dive4elements.artifacts.common.utils.XMLUtils;
bd047b71ab37 Repaired internal references
Sascha L. Teichmann <teichmann@intevation.de>
parents: 4185
diff changeset
25 import org.dive4elements.artifacts.common.utils.XMLUtils.ElementCreator;
4158
a699d6c42a8b Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents: 4157
diff changeset
26
5831
bd047b71ab37 Repaired internal references
Sascha L. Teichmann <teichmann@intevation.de>
parents: 4185
diff changeset
27 import org.dive4elements.artifactdatabase.ProtocolUtils;
bd047b71ab37 Repaired internal references
Sascha L. Teichmann <teichmann@intevation.de>
parents: 4185
diff changeset
28 import org.dive4elements.artifactdatabase.data.StateData;
bd047b71ab37 Repaired internal references
Sascha L. Teichmann <teichmann@intevation.de>
parents: 4185
diff changeset
29 import org.dive4elements.artifactdatabase.state.State;
3936
4e1b3b4ef132 Add new Artifacts and State for displaying discharge curves at a gauge
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
30
5831
bd047b71ab37 Repaired internal references
Sascha L. Teichmann <teichmann@intevation.de>
parents: 4185
diff changeset
31 import org.dive4elements.river.artifacts.states.StaticState;
4157
44d27b8bb0bc Store a StaticState class in staticstate member variable
Björn Ricks <bjoern.ricks@intevation.de>
parents: 3936
diff changeset
32
3936
4e1b3b4ef132 Add new Artifacts and State for displaying discharge curves at a gauge
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
33 /**
4e1b3b4ef132 Add new Artifacts and State for displaying discharge curves at a gauge
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
34 * A abstract baseclass for Artifacts which are using only one static state.
4e1b3b4ef132 Add new Artifacts and State for displaying discharge curves at a gauge
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
35 *
4e1b3b4ef132 Add new Artifacts and State for displaying discharge curves at a gauge
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
36 * This class is intended to be used without the config/stateengine to generate
4e1b3b4ef132 Add new Artifacts and State for displaying discharge curves at a gauge
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
37 * the static state.
4e1b3b4ef132 Add new Artifacts and State for displaying discharge curves at a gauge
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
38 *
4e1b3b4ef132 Add new Artifacts and State for displaying discharge curves at a gauge
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
39 * @author <a href="mailto:bjoern.ricks@intevation.de">Björn Ricks</a>
4e1b3b4ef132 Add new Artifacts and State for displaying discharge curves at a gauge
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
40 */
5867
59ff03ff48f1 River artifacts: Renamed FLYSArtifact(Collection) to D4EArtifact(Collection).
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5863
diff changeset
41 public abstract class AbstractStaticStateArtifact extends StaticD4EArtifact {
3936
4e1b3b4ef132 Add new Artifacts and State for displaying discharge curves at a gauge
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
42
4157
44d27b8bb0bc Store a StaticState class in staticstate member variable
Björn Ricks <bjoern.ricks@intevation.de>
parents: 3936
diff changeset
43 private transient StaticState staticstate;
3936
4e1b3b4ef132 Add new Artifacts and State for displaying discharge curves at a gauge
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
44
8202
e4606eae8ea5 sed src/**/*.java 's/logger/log/g'
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5994
diff changeset
45 private static final Logger log =
9726
0a5239a1e46e Upgrade to Log4j 2
Tom Gottfried <tom@intevation.de>
parents: 8856
diff changeset
46 LogManager.getLogger(AbstractStaticStateArtifact.class);
4158
a699d6c42a8b Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents: 4157
diff changeset
47
3936
4e1b3b4ef132 Add new Artifacts and State for displaying discharge curves at a gauge
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
48 /**
4e1b3b4ef132 Add new Artifacts and State for displaying discharge curves at a gauge
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
49 * Get a list containing the one and only State.
4e1b3b4ef132 Add new Artifacts and State for displaying discharge curves at a gauge
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
50 * @param context ignored.
4e1b3b4ef132 Add new Artifacts and State for displaying discharge curves at a gauge
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
51 * @return list with one and only state.
4e1b3b4ef132 Add new Artifacts and State for displaying discharge curves at a gauge
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
52 */
4e1b3b4ef132 Add new Artifacts and State for displaying discharge curves at a gauge
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
53 @Override
4e1b3b4ef132 Add new Artifacts and State for displaying discharge curves at a gauge
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
54 protected List<State> getStates(Object context) {
4e1b3b4ef132 Add new Artifacts and State for displaying discharge curves at a gauge
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
55 ArrayList<State> states = new ArrayList<State>();
4e1b3b4ef132 Add new Artifacts and State for displaying discharge curves at a gauge
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
56 states.add(getStaticState());
4e1b3b4ef132 Add new Artifacts and State for displaying discharge curves at a gauge
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
57 return states;
4e1b3b4ef132 Add new Artifacts and State for displaying discharge curves at a gauge
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
58 }
4e1b3b4ef132 Add new Artifacts and State for displaying discharge curves at a gauge
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
59
4e1b3b4ef132 Add new Artifacts and State for displaying discharge curves at a gauge
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
60
4e1b3b4ef132 Add new Artifacts and State for displaying discharge curves at a gauge
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
61 /**
4e1b3b4ef132 Add new Artifacts and State for displaying discharge curves at a gauge
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
62 * Get the "current" state.
4e1b3b4ef132 Add new Artifacts and State for displaying discharge curves at a gauge
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
63 * @param cc ignored.
4e1b3b4ef132 Add new Artifacts and State for displaying discharge curves at a gauge
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
64 * @return always the set static state.
4e1b3b4ef132 Add new Artifacts and State for displaying discharge curves at a gauge
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
65 */
4e1b3b4ef132 Add new Artifacts and State for displaying discharge curves at a gauge
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
66 @Override
4e1b3b4ef132 Add new Artifacts and State for displaying discharge curves at a gauge
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
67 public State getCurrentState(Object cc) {
4e1b3b4ef132 Add new Artifacts and State for displaying discharge curves at a gauge
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
68 return getStaticState();
4e1b3b4ef132 Add new Artifacts and State for displaying discharge curves at a gauge
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
69 }
4e1b3b4ef132 Add new Artifacts and State for displaying discharge curves at a gauge
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
70
4e1b3b4ef132 Add new Artifacts and State for displaying discharge curves at a gauge
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
71 /**
4e1b3b4ef132 Add new Artifacts and State for displaying discharge curves at a gauge
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
72 * A child class must override this method to set its static state
4e1b3b4ef132 Add new Artifacts and State for displaying discharge curves at a gauge
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
73 */
4e1b3b4ef132 Add new Artifacts and State for displaying discharge curves at a gauge
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
74 protected abstract void initStaticState();
4e1b3b4ef132 Add new Artifacts and State for displaying discharge curves at a gauge
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
75
4157
44d27b8bb0bc Store a StaticState class in staticstate member variable
Björn Ricks <bjoern.ricks@intevation.de>
parents: 3936
diff changeset
76 protected void setStaticState(StaticState state) {
3936
4e1b3b4ef132 Add new Artifacts and State for displaying discharge curves at a gauge
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
77 this.staticstate = state;
4e1b3b4ef132 Add new Artifacts and State for displaying discharge curves at a gauge
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
78 }
4e1b3b4ef132 Add new Artifacts and State for displaying discharge curves at a gauge
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
79
4157
44d27b8bb0bc Store a StaticState class in staticstate member variable
Björn Ricks <bjoern.ricks@intevation.de>
parents: 3936
diff changeset
80 protected StaticState getStaticState() {
3936
4e1b3b4ef132 Add new Artifacts and State for displaying discharge curves at a gauge
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
81 if (staticstate == null) {
4e1b3b4ef132 Add new Artifacts and State for displaying discharge curves at a gauge
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
82 initStaticState();
4e1b3b4ef132 Add new Artifacts and State for displaying discharge curves at a gauge
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
83 }
4e1b3b4ef132 Add new Artifacts and State for displaying discharge curves at a gauge
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
84 return staticstate;
4e1b3b4ef132 Add new Artifacts and State for displaying discharge curves at a gauge
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
85 }
4e1b3b4ef132 Add new Artifacts and State for displaying discharge curves at a gauge
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
86
4e1b3b4ef132 Add new Artifacts and State for displaying discharge curves at a gauge
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
87 /**
4e1b3b4ef132 Add new Artifacts and State for displaying discharge curves at a gauge
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
88 * Get the state.
4e1b3b4ef132 Add new Artifacts and State for displaying discharge curves at a gauge
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
89 * @param context ignored.
4e1b3b4ef132 Add new Artifacts and State for displaying discharge curves at a gauge
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
90 * @param stateID ignored.
4e1b3b4ef132 Add new Artifacts and State for displaying discharge curves at a gauge
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
91 * @return the state.
4e1b3b4ef132 Add new Artifacts and State for displaying discharge curves at a gauge
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
92 */
4e1b3b4ef132 Add new Artifacts and State for displaying discharge curves at a gauge
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
93 @Override
4e1b3b4ef132 Add new Artifacts and State for displaying discharge curves at a gauge
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
94 protected State getState(Object context, String stateID) {
4e1b3b4ef132 Add new Artifacts and State for displaying discharge curves at a gauge
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
95 return getStaticState();
4e1b3b4ef132 Add new Artifacts and State for displaying discharge curves at a gauge
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
96 }
4158
a699d6c42a8b Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents: 4157
diff changeset
97
a699d6c42a8b Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents: 4157
diff changeset
98 @Override
a699d6c42a8b Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents: 4157
diff changeset
99 public Document describe(Document data, CallContext cc) {
8202
e4606eae8ea5 sed src/**/*.java 's/logger/log/g'
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5994
diff changeset
100 log.debug("Describe artifact: " + identifier());
4158
a699d6c42a8b Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents: 4157
diff changeset
101
a699d6c42a8b Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents: 4157
diff changeset
102 Document desc = XMLUtils.newDocument();
a699d6c42a8b Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents: 4157
diff changeset
103
a699d6c42a8b Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents: 4157
diff changeset
104 ElementCreator creator = new ElementCreator(
a699d6c42a8b Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents: 4157
diff changeset
105 desc,
a699d6c42a8b Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents: 4157
diff changeset
106 ArtifactNamespaceContext.NAMESPACE_URI,
a699d6c42a8b Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents: 4157
diff changeset
107 ArtifactNamespaceContext.NAMESPACE_PREFIX);
a699d6c42a8b Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents: 4157
diff changeset
108
a699d6c42a8b Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents: 4157
diff changeset
109 Element root = ProtocolUtils.createRootNode(creator);
a699d6c42a8b Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents: 4157
diff changeset
110 desc.appendChild(root);
a699d6c42a8b Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents: 4157
diff changeset
111
a699d6c42a8b Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents: 4157
diff changeset
112 Element name = ProtocolUtils.createArtNode(
a699d6c42a8b Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents: 4157
diff changeset
113 creator, "name",
a699d6c42a8b Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents: 4157
diff changeset
114 new String[] { "value" },
a699d6c42a8b Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents: 4157
diff changeset
115 new String[] { getName() });
a699d6c42a8b Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents: 4157
diff changeset
116
a699d6c42a8b Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents: 4157
diff changeset
117 root.appendChild(name);
a699d6c42a8b Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents: 4157
diff changeset
118 root.appendChild(createOutputModes(cc, desc, creator));
a699d6c42a8b Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents: 4157
diff changeset
119
8856
5e38e2924c07 Fix code style.
Tom Gottfried <tom@intevation.de>
parents: 8202
diff changeset
120 ProtocolUtils.appendDescribeHeader(
5e38e2924c07 Fix code style.
Tom Gottfried <tom@intevation.de>
parents: 8202
diff changeset
121 creator, root, identifier(), hash());
4158
a699d6c42a8b Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents: 4157
diff changeset
122
a699d6c42a8b Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents: 4157
diff changeset
123 // Add the data to an anonymous state.
a699d6c42a8b Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents: 4157
diff changeset
124 Collection<StateData> datas = getAllData();
a699d6c42a8b Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents: 4157
diff changeset
125 if (datas.size() > 0) {
a699d6c42a8b Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents: 4157
diff changeset
126 Element ui = creator.create("ui");
a699d6c42a8b Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents: 4157
diff changeset
127 Element staticE = creator.create("static");
a699d6c42a8b Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents: 4157
diff changeset
128
a699d6c42a8b Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents: 4157
diff changeset
129 StaticState current = getStaticState();
a699d6c42a8b Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents: 4157
diff changeset
130 Element state = current.describeStatic(this, desc, root, cc, null);
a699d6c42a8b Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents: 4157
diff changeset
131 staticE.appendChild(state);
a699d6c42a8b Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents: 4157
diff changeset
132
a699d6c42a8b Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents: 4157
diff changeset
133 for (StateData dataItem : datas) {
a699d6c42a8b Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents: 4157
diff changeset
134 Element itemelent = creator.create("data");
a699d6c42a8b Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents: 4157
diff changeset
135 creator.addAttr(itemelent, "name", dataItem.getName(), true);
a699d6c42a8b Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents: 4157
diff changeset
136 creator.addAttr(itemelent, "type", dataItem.getType(), true);
a699d6c42a8b Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents: 4157
diff changeset
137 state.appendChild(itemelent);
a699d6c42a8b Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents: 4157
diff changeset
138 Element valuement = creator.create("item");
8856
5e38e2924c07 Fix code style.
Tom Gottfried <tom@intevation.de>
parents: 8202
diff changeset
139 creator.addAttr(
5e38e2924c07 Fix code style.
Tom Gottfried <tom@intevation.de>
parents: 8202
diff changeset
140 valuement, "label", dataItem.getDescription(), true);
5e38e2924c07 Fix code style.
Tom Gottfried <tom@intevation.de>
parents: 8202
diff changeset
141 creator.addAttr(
5e38e2924c07 Fix code style.
Tom Gottfried <tom@intevation.de>
parents: 8202
diff changeset
142 valuement, "value", dataItem.getValue().toString(), true);
4158
a699d6c42a8b Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents: 4157
diff changeset
143 itemelent.appendChild(valuement);
a699d6c42a8b Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents: 4157
diff changeset
144 }
a699d6c42a8b Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents: 4157
diff changeset
145
a699d6c42a8b Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents: 4157
diff changeset
146 ui.appendChild(staticE);
a699d6c42a8b Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents: 4157
diff changeset
147 root.appendChild(ui);
a699d6c42a8b Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents: 4157
diff changeset
148 }
a699d6c42a8b Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents: 4157
diff changeset
149
a699d6c42a8b Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents: 4157
diff changeset
150 return desc;
a699d6c42a8b Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents: 4157
diff changeset
151 }
3936
4e1b3b4ef132 Add new Artifacts and State for displaying discharge curves at a gauge
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
152 }

http://dive4elements.wald.intevation.org