comparison flys-artifacts/src/main/java/de/intevation/flys/artifacts/states/MinMaxState.java @ 2190:2792d2617be9

Introduced an abstract MinMaxState and a concrete class IntRangeState to add min/max value pairs. flys-artifacts/trunk@3800 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Ingo Weinzierl <ingo.weinzierl@intevation.de>
date Fri, 27 Jan 2012 13:23:56 +0000
parents
children d1660809daab
comparison
equal deleted inserted replaced
2189:19518116a49a 2190:2792d2617be9
1 package de.intevation.flys.artifacts.states;
2
3 import org.w3c.dom.Element;
4
5 import de.intevation.artifacts.Artifact;
6 import de.intevation.artifacts.CallContext;
7
8 import de.intevation.artifacts.common.ArtifactNamespaceContext;
9 import de.intevation.artifacts.common.utils.XMLUtils.ElementCreator;
10
11 import de.intevation.artifactdatabase.ProtocolUtils;
12
13 import de.intevation.flys.artifacts.FLYSArtifact;
14
15
16 /**
17 * @author <a href="mailto:ingo.weinzierl@intevation.de">Ingo Weinzierl</a>
18 */
19 public abstract class MinMaxState extends DefaultState {
20
21 @Override
22 protected void appendItems(
23 Artifact artifact,
24 ElementCreator creator,
25 String name,
26 CallContext context,
27 Element select
28 ) {
29 FLYSArtifact flys = (FLYSArtifact) artifact;
30
31 select.setAttributeNS(
32 ArtifactNamespaceContext.NAMESPACE_URI,
33 "art:type",
34 getType());
35
36 Element min = ProtocolUtils.createArtNode(
37 creator,
38 "min",
39 new String[] { "value" },
40 new String[] { String.valueOf(getLower(flys)) });
41
42 Element max = ProtocolUtils.createArtNode(
43 creator,
44 "max",
45 new String[] { "value" },
46 new String[] { String.valueOf(getUpper(flys)) });
47
48 select.appendChild(min);
49 select.appendChild(max);
50 }
51
52
53 protected abstract Object getLower(FLYSArtifact flys);
54
55 protected abstract Object getUpper(FLYSArtifact flys);
56
57 protected abstract String getType();
58 }
59 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf-8 :

http://dive4elements.wald.intevation.org