annotate artifacts/src/main/java/org/dive4elements/river/artifacts/sinfo/flood_duration/FloodInfrastructure.java @ 9624:02ca823ec9c6

zu Pos 20 Nachtrag; infrastructureChoice
author dnt_bjoernsen <d.tironi@bjoernsen.de>
date Fri, 11 Oct 2019 18:30:36 +0200
parents 8ed6c45136fa
children f51e23eb036a
rev   line source
9611
dnt_bjoernsen <d.tironi@bjoernsen.de>
parents:
diff changeset
1 /* Copyright (C) 2011, 2012, 2013 by Bundesanstalt für Gewässerkunde
dnt_bjoernsen <d.tironi@bjoernsen.de>
parents:
diff changeset
2 * Software engineering by Intevation GmbH
dnt_bjoernsen <d.tironi@bjoernsen.de>
parents:
diff changeset
3 *
dnt_bjoernsen <d.tironi@bjoernsen.de>
parents:
diff changeset
4 * This file is Free Software under the GNU AGPL (>=v3)
dnt_bjoernsen <d.tironi@bjoernsen.de>
parents:
diff changeset
5 * and comes with ABSOLUTELY NO WARRANTY! Check out the
dnt_bjoernsen <d.tironi@bjoernsen.de>
parents:
diff changeset
6 * documentation coming with Dive4Elements River for details.
dnt_bjoernsen <d.tironi@bjoernsen.de>
parents:
diff changeset
7 */
dnt_bjoernsen <d.tironi@bjoernsen.de>
parents:
diff changeset
8
dnt_bjoernsen <d.tironi@bjoernsen.de>
parents:
diff changeset
9 package org.dive4elements.river.artifacts.sinfo.flood_duration;
dnt_bjoernsen <d.tironi@bjoernsen.de>
parents:
diff changeset
10
9624
02ca823ec9c6 zu Pos 20 Nachtrag; infrastructureChoice
dnt_bjoernsen <d.tironi@bjoernsen.de>
parents: 9611
diff changeset
11 import org.dive4elements.artifactdatabase.ProtocolUtils;
02ca823ec9c6 zu Pos 20 Nachtrag; infrastructureChoice
dnt_bjoernsen <d.tironi@bjoernsen.de>
parents: 9611
diff changeset
12 import org.dive4elements.artifacts.Artifact;
02ca823ec9c6 zu Pos 20 Nachtrag; infrastructureChoice
dnt_bjoernsen <d.tironi@bjoernsen.de>
parents: 9611
diff changeset
13 import org.dive4elements.artifacts.CallContext;
02ca823ec9c6 zu Pos 20 Nachtrag; infrastructureChoice
dnt_bjoernsen <d.tironi@bjoernsen.de>
parents: 9611
diff changeset
14 import org.dive4elements.artifacts.common.utils.XMLUtils.ElementCreator;
02ca823ec9c6 zu Pos 20 Nachtrag; infrastructureChoice
dnt_bjoernsen <d.tironi@bjoernsen.de>
parents: 9611
diff changeset
15 import org.dive4elements.river.artifacts.D4EArtifact;
02ca823ec9c6 zu Pos 20 Nachtrag; infrastructureChoice
dnt_bjoernsen <d.tironi@bjoernsen.de>
parents: 9611
diff changeset
16 import org.dive4elements.river.artifacts.access.RiverAccess;
9611
dnt_bjoernsen <d.tironi@bjoernsen.de>
parents:
diff changeset
17 import org.dive4elements.river.artifacts.states.DefaultState;
9624
02ca823ec9c6 zu Pos 20 Nachtrag; infrastructureChoice
dnt_bjoernsen <d.tironi@bjoernsen.de>
parents: 9611
diff changeset
18 import org.dive4elements.river.model.River;
02ca823ec9c6 zu Pos 20 Nachtrag; infrastructureChoice
dnt_bjoernsen <d.tironi@bjoernsen.de>
parents: 9611
diff changeset
19 import org.w3c.dom.Element;
9611
dnt_bjoernsen <d.tironi@bjoernsen.de>
parents:
diff changeset
20
dnt_bjoernsen <d.tironi@bjoernsen.de>
parents:
diff changeset
21 /**
dnt_bjoernsen <d.tironi@bjoernsen.de>
parents:
diff changeset
22 * @author <a href="mailto:ingo.weinzierl@intevation.de">Ingo Weinzierl</a>
dnt_bjoernsen <d.tironi@bjoernsen.de>
parents:
diff changeset
23 */
dnt_bjoernsen <d.tironi@bjoernsen.de>
parents:
diff changeset
24 public class FloodInfrastructure extends DefaultState {
dnt_bjoernsen <d.tironi@bjoernsen.de>
parents:
diff changeset
25
dnt_bjoernsen <d.tironi@bjoernsen.de>
parents:
diff changeset
26 private static final long serialVersionUID = 1L;
dnt_bjoernsen <d.tironi@bjoernsen.de>
parents:
diff changeset
27
dnt_bjoernsen <d.tironi@bjoernsen.de>
parents:
diff changeset
28 protected final String getDatakey() {
dnt_bjoernsen <d.tironi@bjoernsen.de>
parents:
diff changeset
29 return "flood_infrastructure";
dnt_bjoernsen <d.tironi@bjoernsen.de>
parents:
diff changeset
30 }
dnt_bjoernsen <d.tironi@bjoernsen.de>
parents:
diff changeset
31
dnt_bjoernsen <d.tironi@bjoernsen.de>
parents:
diff changeset
32 @Override
dnt_bjoernsen <d.tironi@bjoernsen.de>
parents:
diff changeset
33 protected String getUIProvider() {
dnt_bjoernsen <d.tironi@bjoernsen.de>
parents:
diff changeset
34
dnt_bjoernsen <d.tironi@bjoernsen.de>
parents:
diff changeset
35 return "flood_infrastructure_panel";
dnt_bjoernsen <d.tironi@bjoernsen.de>
parents:
diff changeset
36 }
9624
02ca823ec9c6 zu Pos 20 Nachtrag; infrastructureChoice
dnt_bjoernsen <d.tironi@bjoernsen.de>
parents: 9611
diff changeset
37
02ca823ec9c6 zu Pos 20 Nachtrag; infrastructureChoice
dnt_bjoernsen <d.tironi@bjoernsen.de>
parents: 9611
diff changeset
38 @Override
02ca823ec9c6 zu Pos 20 Nachtrag; infrastructureChoice
dnt_bjoernsen <d.tironi@bjoernsen.de>
parents: 9611
diff changeset
39 protected Element[] createItems(final ElementCreator cr, final Artifact artifact, final String name, final CallContext context) {
02ca823ec9c6 zu Pos 20 Nachtrag; infrastructureChoice
dnt_bjoernsen <d.tironi@bjoernsen.de>
parents: 9611
diff changeset
40 if (name.equals(getDatakey())) {
02ca823ec9c6 zu Pos 20 Nachtrag; infrastructureChoice
dnt_bjoernsen <d.tironi@bjoernsen.de>
parents: 9611
diff changeset
41 final Element item = ProtocolUtils.createArtNode(cr, "item", null, null);
02ca823ec9c6 zu Pos 20 Nachtrag; infrastructureChoice
dnt_bjoernsen <d.tironi@bjoernsen.de>
parents: 9611
diff changeset
42 final Element label = ProtocolUtils.createArtNode(cr, "label", null, null);
02ca823ec9c6 zu Pos 20 Nachtrag; infrastructureChoice
dnt_bjoernsen <d.tironi@bjoernsen.de>
parents: 9611
diff changeset
43 final Element value = ProtocolUtils.createArtNode(cr, "value", null, null);
02ca823ec9c6 zu Pos 20 Nachtrag; infrastructureChoice
dnt_bjoernsen <d.tironi@bjoernsen.de>
parents: 9611
diff changeset
44 final D4EArtifact flys = (D4EArtifact) artifact;
02ca823ec9c6 zu Pos 20 Nachtrag; infrastructureChoice
dnt_bjoernsen <d.tironi@bjoernsen.de>
parents: 9611
diff changeset
45 final River river = new RiverAccess(flys).getRiver();
02ca823ec9c6 zu Pos 20 Nachtrag; infrastructureChoice
dnt_bjoernsen <d.tironi@bjoernsen.de>
parents: 9611
diff changeset
46 final String s = flys.getDataAsString(getDatakey());
02ca823ec9c6 zu Pos 20 Nachtrag; infrastructureChoice
dnt_bjoernsen <d.tironi@bjoernsen.de>
parents: 9611
diff changeset
47
02ca823ec9c6 zu Pos 20 Nachtrag; infrastructureChoice
dnt_bjoernsen <d.tironi@bjoernsen.de>
parents: 9611
diff changeset
48 value.setTextContent(s);
02ca823ec9c6 zu Pos 20 Nachtrag; infrastructureChoice
dnt_bjoernsen <d.tironi@bjoernsen.de>
parents: 9611
diff changeset
49 item.appendChild(label);
02ca823ec9c6 zu Pos 20 Nachtrag; infrastructureChoice
dnt_bjoernsen <d.tironi@bjoernsen.de>
parents: 9611
diff changeset
50 item.appendChild(value);
02ca823ec9c6 zu Pos 20 Nachtrag; infrastructureChoice
dnt_bjoernsen <d.tironi@bjoernsen.de>
parents: 9611
diff changeset
51 return new Element[] { item };
02ca823ec9c6 zu Pos 20 Nachtrag; infrastructureChoice
dnt_bjoernsen <d.tironi@bjoernsen.de>
parents: 9611
diff changeset
52 }
02ca823ec9c6 zu Pos 20 Nachtrag; infrastructureChoice
dnt_bjoernsen <d.tironi@bjoernsen.de>
parents: 9611
diff changeset
53 return new Element[] {};
02ca823ec9c6 zu Pos 20 Nachtrag; infrastructureChoice
dnt_bjoernsen <d.tironi@bjoernsen.de>
parents: 9611
diff changeset
54 }
9611
dnt_bjoernsen <d.tironi@bjoernsen.de>
parents:
diff changeset
55 }

http://dive4elements.wald.intevation.org