Mercurial > dive4elements > river
annotate artifacts/src/main/java/org/dive4elements/river/artifacts/AbstractStaticStateArtifact.java @ 5863:4897a58c8746
River artifacts: Added new copyright headers.
author | Sascha L. Teichmann <teichmann@intevation.de> |
---|---|
date | Sun, 28 Apr 2013 14:40:59 +0200 |
parents | 5aa05a7a34b7 |
children | 59ff03ff48f1 |
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 * |
4897a58c8746
River artifacts: Added new copyright headers.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5838
diff
changeset
|
4 * This file is Free Software under the GNU AGPL (>=v3) |
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 |
4897a58c8746
River artifacts: Added new copyright headers.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5838
diff
changeset
|
6 * documentation coming with Dive4Elements River for details. |
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 |
4158
a699d6c42a8b
Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4157
diff
changeset
|
15 import org.apache.log4j.Logger; |
a699d6c42a8b
Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4157
diff
changeset
|
16 |
a699d6c42a8b
Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4157
diff
changeset
|
17 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
|
18 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
|
19 |
5831
bd047b71ab37
Repaired internal references
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4185
diff
changeset
|
20 import org.dive4elements.artifacts.CallContext; |
bd047b71ab37
Repaired internal references
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4185
diff
changeset
|
21 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
|
22 |
5831
bd047b71ab37
Repaired internal references
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4185
diff
changeset
|
23 import org.dive4elements.artifacts.common.utils.XMLUtils; |
bd047b71ab37
Repaired internal references
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4185
diff
changeset
|
24 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
|
25 |
5831
bd047b71ab37
Repaired internal references
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4185
diff
changeset
|
26 import org.dive4elements.artifactdatabase.ProtocolUtils; |
bd047b71ab37
Repaired internal references
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4185
diff
changeset
|
27 import org.dive4elements.artifactdatabase.data.StateData; |
bd047b71ab37
Repaired internal references
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4185
diff
changeset
|
28 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
|
29 |
5831
bd047b71ab37
Repaired internal references
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4185
diff
changeset
|
30 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
|
31 |
3936
4e1b3b4ef132
Add new Artifacts and State for displaying discharge curves at a gauge
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
32 /** |
4e1b3b4ef132
Add new Artifacts and State for displaying discharge curves at a gauge
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
33 * 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
|
34 * |
4e1b3b4ef132
Add new Artifacts and State for displaying discharge curves at a gauge
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
35 * 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
|
36 * 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
|
37 * |
4e1b3b4ef132
Add new Artifacts and State for displaying discharge curves at a gauge
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
38 * @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
|
39 */ |
4e1b3b4ef132
Add new Artifacts and State for displaying discharge curves at a gauge
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
40 public abstract class AbstractStaticStateArtifact extends StaticFLYSArtifact { |
4e1b3b4ef132
Add new Artifacts and State for displaying discharge curves at a gauge
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
41 |
4157
44d27b8bb0bc
Store a StaticState class in staticstate member variable
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3936
diff
changeset
|
42 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
|
43 |
4158
a699d6c42a8b
Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4157
diff
changeset
|
44 private static final Logger logger = |
a699d6c42a8b
Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4157
diff
changeset
|
45 Logger.getLogger(AbstractStaticStateArtifact.class); |
a699d6c42a8b
Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4157
diff
changeset
|
46 |
3936
4e1b3b4ef132
Add new Artifacts and State for displaying discharge curves at a gauge
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
47 /** |
4e1b3b4ef132
Add new Artifacts and State for displaying discharge curves at a gauge
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
48 * 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
|
49 * @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
|
50 * @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
|
51 */ |
4e1b3b4ef132
Add new Artifacts and State for displaying discharge curves at a gauge
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
52 @Override |
4e1b3b4ef132
Add new Artifacts and State for displaying discharge curves at a gauge
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
53 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
|
54 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
|
55 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
|
56 return states; |
4e1b3b4ef132
Add new Artifacts and State for displaying discharge curves at a gauge
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
57 } |
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 * 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
|
62 * @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
|
63 * @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
|
64 */ |
4e1b3b4ef132
Add new Artifacts and State for displaying discharge curves at a gauge
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
65 @Override |
4e1b3b4ef132
Add new Artifacts and State for displaying discharge curves at a gauge
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
66 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
|
67 return getStaticState(); |
4e1b3b4ef132
Add new Artifacts and State for displaying discharge curves at a gauge
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
68 } |
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 * 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
|
72 */ |
4e1b3b4ef132
Add new Artifacts and State for displaying discharge curves at a gauge
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
73 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
|
74 |
4157
44d27b8bb0bc
Store a StaticState class in staticstate member variable
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3936
diff
changeset
|
75 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
|
76 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
|
77 } |
4e1b3b4ef132
Add new Artifacts and State for displaying discharge curves at a gauge
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
78 |
4157
44d27b8bb0bc
Store a StaticState class in staticstate member variable
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3936
diff
changeset
|
79 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
|
80 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
|
81 initStaticState(); |
4e1b3b4ef132
Add new Artifacts and State for displaying discharge curves at a gauge
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
82 } |
4e1b3b4ef132
Add new Artifacts and State for displaying discharge curves at a gauge
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
83 return staticstate; |
4e1b3b4ef132
Add new Artifacts and State for displaying discharge curves at a gauge
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
84 } |
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 * 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
|
88 * @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
|
89 * @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
|
90 * @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
|
91 */ |
4e1b3b4ef132
Add new Artifacts and State for displaying discharge curves at a gauge
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
92 @Override |
4e1b3b4ef132
Add new Artifacts and State for displaying discharge curves at a gauge
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
93 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
|
94 return getStaticState(); |
4e1b3b4ef132
Add new Artifacts and State for displaying discharge curves at a gauge
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
95 } |
4158
a699d6c42a8b
Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4157
diff
changeset
|
96 |
a699d6c42a8b
Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4157
diff
changeset
|
97 @Override |
a699d6c42a8b
Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4157
diff
changeset
|
98 public Document describe(Document data, CallContext cc) { |
a699d6c42a8b
Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4157
diff
changeset
|
99 logger.debug("Describe artifact: " + identifier()); |
a699d6c42a8b
Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4157
diff
changeset
|
100 |
a699d6c42a8b
Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4157
diff
changeset
|
101 Document desc = XMLUtils.newDocument(); |
a699d6c42a8b
Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4157
diff
changeset
|
102 |
a699d6c42a8b
Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4157
diff
changeset
|
103 ElementCreator creator = new ElementCreator( |
a699d6c42a8b
Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4157
diff
changeset
|
104 desc, |
a699d6c42a8b
Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4157
diff
changeset
|
105 ArtifactNamespaceContext.NAMESPACE_URI, |
a699d6c42a8b
Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4157
diff
changeset
|
106 ArtifactNamespaceContext.NAMESPACE_PREFIX); |
a699d6c42a8b
Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4157
diff
changeset
|
107 |
a699d6c42a8b
Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4157
diff
changeset
|
108 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
|
109 desc.appendChild(root); |
a699d6c42a8b
Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4157
diff
changeset
|
110 |
a699d6c42a8b
Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4157
diff
changeset
|
111 Element name = ProtocolUtils.createArtNode( |
a699d6c42a8b
Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4157
diff
changeset
|
112 creator, "name", |
a699d6c42a8b
Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4157
diff
changeset
|
113 new String[] { "value" }, |
a699d6c42a8b
Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4157
diff
changeset
|
114 new String[] { getName() }); |
a699d6c42a8b
Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4157
diff
changeset
|
115 |
a699d6c42a8b
Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4157
diff
changeset
|
116 root.appendChild(name); |
a699d6c42a8b
Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4157
diff
changeset
|
117 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
|
118 |
a699d6c42a8b
Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4157
diff
changeset
|
119 ProtocolUtils.appendDescribeHeader(creator, root, identifier(), hash()); |
a699d6c42a8b
Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4157
diff
changeset
|
120 |
a699d6c42a8b
Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4157
diff
changeset
|
121 // 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
|
122 Collection<StateData> datas = getAllData(); |
a699d6c42a8b
Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4157
diff
changeset
|
123 if (datas.size() > 0) { |
a699d6c42a8b
Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4157
diff
changeset
|
124 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
|
125 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
|
126 |
a699d6c42a8b
Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4157
diff
changeset
|
127 StaticState current = getStaticState(); |
a699d6c42a8b
Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4157
diff
changeset
|
128 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
|
129 staticE.appendChild(state); |
a699d6c42a8b
Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4157
diff
changeset
|
130 |
a699d6c42a8b
Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4157
diff
changeset
|
131 for (StateData dataItem : datas) { |
a699d6c42a8b
Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4157
diff
changeset
|
132 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
|
133 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
|
134 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
|
135 state.appendChild(itemelent); |
a699d6c42a8b
Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4157
diff
changeset
|
136 Element valuement = creator.create("item"); |
a699d6c42a8b
Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4157
diff
changeset
|
137 creator.addAttr(valuement, "label", dataItem.getDescription(), true); |
a699d6c42a8b
Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4157
diff
changeset
|
138 creator.addAttr(valuement, "value", dataItem.getValue().toString(), true); |
a699d6c42a8b
Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4157
diff
changeset
|
139 itemelent.appendChild(valuement); |
a699d6c42a8b
Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4157
diff
changeset
|
140 } |
a699d6c42a8b
Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4157
diff
changeset
|
141 |
a699d6c42a8b
Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4157
diff
changeset
|
142 ui.appendChild(staticE); |
a699d6c42a8b
Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4157
diff
changeset
|
143 root.appendChild(ui); |
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 return desc; |
a699d6c42a8b
Override describe method to return also a uiprovider.
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4157
diff
changeset
|
147 } |
3936
4e1b3b4ef132
Add new Artifacts and State for displaying discharge curves at a gauge
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
148 } |