Mercurial > dive4elements > river
comparison flys-artifacts/src/main/java/de/intevation/flys/artifacts/states/DefaultState.java @ 142:b43671a551d1
Append human readable strings of the selected values to the DESCRIBE output.
flys-artifacts/trunk@1525 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Ingo Weinzierl <ingo.weinzierl@intevation.de> |
---|---|
date | Mon, 21 Mar 2011 09:18:04 +0000 |
parents | 2e510c998adb |
children | 35301cc3b875 |
comparison
equal
deleted
inserted
replaced
141:7f909429ccc8 | 142:b43671a551d1 |
---|---|
7 | 7 |
8 import org.w3c.dom.Document; | 8 import org.w3c.dom.Document; |
9 import org.w3c.dom.Element; | 9 import org.w3c.dom.Element; |
10 import org.w3c.dom.Node; | 10 import org.w3c.dom.Node; |
11 | 11 |
12 import de.intevation.artifacts.ArtifactNamespaceContext; | |
12 import de.intevation.artifacts.CallContext; | 13 import de.intevation.artifacts.CallContext; |
13 import de.intevation.artifacts.ArtifactNamespaceContext; | 14 import de.intevation.artifacts.CallMeta; |
14 | 15 |
15 import de.intevation.artifacts.common.utils.XMLUtils; | 16 import de.intevation.artifacts.common.utils.XMLUtils; |
16 | 17 |
17 import de.intevation.artifactdatabase.ProtocolUtils; | 18 import de.intevation.artifactdatabase.ProtocolUtils; |
18 import de.intevation.artifactdatabase.data.StateData; | 19 import de.intevation.artifactdatabase.data.StateData; |
39 XMLUtils.ElementCreator creator = new XMLUtils.ElementCreator( | 40 XMLUtils.ElementCreator creator = new XMLUtils.ElementCreator( |
40 document, | 41 document, |
41 ArtifactNamespaceContext.NAMESPACE_URI, | 42 ArtifactNamespaceContext.NAMESPACE_URI, |
42 ArtifactNamespaceContext.NAMESPACE_PREFIX); | 43 ArtifactNamespaceContext.NAMESPACE_PREFIX); |
43 | 44 |
44 String label = Resources.getMsg(context.getMeta(), getID(), getID()); | 45 CallMeta meta = context.getMeta(); |
46 | |
47 String label = Resources.getMsg(meta, getID(), getID()); | |
45 Element ui = ProtocolUtils.createArtNode( | 48 Element ui = ProtocolUtils.createArtNode( |
46 creator, "state", | 49 creator, "state", |
47 new String[] { "name", "uiprovider", "label" }, | 50 new String[] { "name", "uiprovider", "label" }, |
48 new String[] { getID(), getUIProvider(), label }); | 51 new String[] { getID(), getUIProvider(), label }); |
49 | 52 |
53 } | 56 } |
54 | 57 |
55 Collection<StateData> dataItems = theData.values(); | 58 Collection<StateData> dataItems = theData.values(); |
56 | 59 |
57 for (StateData data: dataItems) { | 60 for (StateData data: dataItems) { |
58 String name = data.getName(); | 61 String name = data.getName(); |
62 String value = (String) data.getValue(); | |
63 | |
64 logger.debug("Append element '" + name + "' (" + value + ")"); | |
59 | 65 |
60 Element dataElement = creator.create("data"); | 66 Element dataElement = creator.create("data"); |
61 creator.addAttr(dataElement, "name", name, true); | 67 creator.addAttr(dataElement, "name", name, true); |
62 creator.addAttr(dataElement, "type", data.getType(), true); | 68 creator.addAttr(dataElement, "type", data.getType(), true); |
63 | 69 |
64 Element itemElement = creator.create("item"); | 70 Element itemElement = creator.create("item"); |
65 creator.addAttr(itemElement, "value", (String) data.getValue(), true); | 71 creator.addAttr(itemElement, "value", value, true); |
66 // TODO Description (human readable) is missing | 72 creator.addAttr( |
73 itemElement, | |
74 "label", | |
75 Resources.getMsg(meta, value, value), | |
76 true); | |
67 | 77 |
68 dataElement.appendChild(itemElement); | 78 dataElement.appendChild(itemElement); |
69 ui.appendChild(dataElement); | 79 ui.appendChild(dataElement); |
70 } | 80 } |
71 | 81 |