annotate artifacts/src/main/java/org/dive4elements/river/artifacts/FlowVelocityModelArtifact.java @ 8755:30b1ddadf275

(issue1801) Unify reference gauge finding code The basic way as described in the method comment of the determineRefGauge method is now used in the WINFOArtifact, MainValuesService and RiverUtils.getGauge method. RiverUtils.getGauge previously just returned the first gauge found. While this is now a behavior change I believe that it is always more correct then the undeterministic behavior of the previous implmenentation.
author Andre Heinecke <andre.heinecke@intevation.de>
date Wed, 24 Jun 2015 14:07:26 +0200
parents e4606eae8ea5
children 5e38e2924c07
rev   line source
7285
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
1 /* Copyright (C) 2011, 2012, 2013 by Bundesanstalt für Gewässerkunde
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
2 * Software engineering by Intevation GmbH
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
3 *
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
4 * This file is Free Software under the GNU AGPL (>=v3)
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
5 * and comes with ABSOLUTELY NO WARRANTY! Check out the
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
6 * documentation coming with Dive4Elements River for details.
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
7 */
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
8
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
9 package org.dive4elements.river.artifacts;
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
10
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
11 import java.util.ArrayList;
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
12 import java.util.List;
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
13
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
14 import org.apache.log4j.Logger;
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
15 import org.w3c.dom.Document;
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
16
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
17 import org.dive4elements.artifactdatabase.state.DefaultOutput;
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
18 import org.dive4elements.artifactdatabase.state.Facet;
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
19 import org.dive4elements.artifactdatabase.state.FacetActivity;
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
20 import org.dive4elements.artifactdatabase.state.State;
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
21 import org.dive4elements.artifacts.Artifact;
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
22 import org.dive4elements.artifacts.ArtifactFactory;
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
23 import org.dive4elements.artifacts.CallMeta;
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
24 import org.dive4elements.artifacts.common.utils.XMLUtils;
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
25 import org.dive4elements.river.artifacts.model.Calculation;
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
26 import org.dive4elements.river.artifacts.model.CalculationResult;
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
27 import org.dive4elements.river.artifacts.states.DefaultState.ComputeType;
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
28 import org.dive4elements.river.model.FlowVelocityModel;
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
29 import org.dive4elements.river.artifacts.model.FlowVelocityCalculation;
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
30 import org.dive4elements.river.artifacts.model.FlowVelocityData;
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
31 import org.dive4elements.river.artifacts.model.FlowVelocityFacet;
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
32 import org.dive4elements.river.artifacts.states.StaticState;
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
33
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
34 import org.dive4elements.river.artifacts.model.FacetTypes;
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
35
7534
00950f79b0d9 issue1512: i18n.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 7368
diff changeset
36 import org.dive4elements.river.artifacts.resources.Resources;
7285
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
37
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
38 /** Artifact to access flow velocity models. */
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
39 public class FlowVelocityModelArtifact
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
40 extends StaticD4EArtifact
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
41 implements FacetTypes
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
42 {
8202
e4606eae8ea5 sed src/**/*.java 's/logger/log/g'
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7842
diff changeset
43 /** The log for this class. */
e4606eae8ea5 sed src/**/*.java 's/logger/log/g'
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7842
diff changeset
44 private static Logger log =
7285
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
45 Logger.getLogger(FlowVelocityModelArtifact.class);
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
46
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
47 /** Artifact key name. */
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
48 private static final String NAME = "flowvelocitymodel";
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
49
7534
00950f79b0d9 issue1512: i18n.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 7368
diff changeset
50 private static final String I18N_MAINCHANNEL =
00950f79b0d9 issue1512: i18n.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 7368
diff changeset
51 "facet.flow_velocity.model.mainchannel";
00950f79b0d9 issue1512: i18n.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 7368
diff changeset
52
00950f79b0d9 issue1512: i18n.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 7368
diff changeset
53 private static final String I18N_TAU =
00950f79b0d9 issue1512: i18n.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 7368
diff changeset
54 "facet.flow_velocity.model.tau";
00950f79b0d9 issue1512: i18n.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 7368
diff changeset
55
00950f79b0d9 issue1512: i18n.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 7368
diff changeset
56 private static final String I18N_TOTALCHANNEL =
00950f79b0d9 issue1512: i18n.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 7368
diff changeset
57 "facet.flow_velocity.model.totalchannel";
00950f79b0d9 issue1512: i18n.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 7368
diff changeset
58
00950f79b0d9 issue1512: i18n.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 7368
diff changeset
59 private static final String I18N_Q =
00950f79b0d9 issue1512: i18n.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 7368
diff changeset
60 "facet.flow_velocity.model.q";
00950f79b0d9 issue1512: i18n.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 7368
diff changeset
61
7285
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
62 /** Spawn only inactive facets. */
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
63 static {
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
64 // TODO: Move to configuration.
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
65 FacetActivity.Registry.getInstance()
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
66 .register(NAME, FacetActivity.INACTIVE);
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
67 }
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
68
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
69 /** Need to give the state an id. */
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
70 public static final String STATIC_STATE_NAME =
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
71 "state.flowvelocitymodel.static";
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
72
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
73 /** One and only state to be in. */
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
74 protected transient State state = null;
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
75
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
76 protected String DATA_ID = "ID";
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
77
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
78 /**
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
79 * Trivial Constructor.
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
80 */
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
81 public FlowVelocityModelArtifact() {
8202
e4606eae8ea5 sed src/**/*.java 's/logger/log/g'
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7842
diff changeset
82 log.debug("FlowVelocityModelArtifact.FlowVelocityModelArtifact");
7285
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
83 }
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
84
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
85
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
86 /** Get artifact key name. */
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
87 @Override
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
88 public String getName() {
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
89 return NAME;
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
90 }
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
91
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
92
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
93 private Object getFlowVelocity() {
8202
e4606eae8ea5 sed src/**/*.java 's/logger/log/g'
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7842
diff changeset
94 log.debug("FlowVelocityModelArtifact.getFlowVelocity");
7285
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
95 Integer id = getDataAsInteger(DATA_ID);
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
96
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
97 FlowVelocityModel model = FlowVelocityModel.getModel(id);
7367
9ef09d285b1e Cosmetics.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 7285
diff changeset
98 FlowVelocityData data = new FlowVelocityData();
7285
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
99
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
100 // TODO rangeaccess
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
101 FlowVelocityCalculation.prepareData(data, model, 0d, 1000d);
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
102
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
103 return new CalculationResult(
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
104 new FlowVelocityData[] {data} , new Calculation());
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
105 }
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
106
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
107
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
108 /** Create a static state. */
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
109 private State newState() {
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
110 return new StaticState(STATIC_STATE_NAME) {
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
111 public Object staticCompute(List<Facet> facets) {
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
112 return getFlowVelocity();
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
113 }
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
114 };
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
115 }
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
116
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
117
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
118 /** Create a new state with bogus output. */
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
119 protected State spawnState() {
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
120 state = newState();
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
121 List<Facet> fs = getFacets(STATIC_STATE_NAME);
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
122 DefaultOutput output = new DefaultOutput(
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
123 "general",
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
124 "general",
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
125 "image/png",
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
126 fs,
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
127 "chart");
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
128
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
129 state.getOutputs().add(output);
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
130
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
131 return state;
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
132 }
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
133
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
134
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
135 /**
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
136 * Gets called from factory, to set things up.
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
137 */
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
138 @Override
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
139 public void setup(
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
140 String identifier,
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
141 ArtifactFactory factory,
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
142 Object context,
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
143 CallMeta callMeta,
7842
8d5ca5175038 Updated signature of artifacts setup method; Removed unnecessary setup overrides.
Raimund Renkert <rrenkert@intevation.de>
parents: 7534
diff changeset
144 Document data,
8d5ca5175038 Updated signature of artifacts setup method; Removed unnecessary setup overrides.
Raimund Renkert <rrenkert@intevation.de>
parents: 7534
diff changeset
145 List<Class> loadFacets)
7285
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
146 {
8202
e4606eae8ea5 sed src/**/*.java 's/logger/log/g'
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7842
diff changeset
147 log.debug("FlowVelocityModelArtifact.setup");
7285
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
148
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
149 state = newState();
8202
e4606eae8ea5 sed src/**/*.java 's/logger/log/g'
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7842
diff changeset
150 if (log.isDebugEnabled()) {
e4606eae8ea5 sed src/**/*.java 's/logger/log/g'
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7842
diff changeset
151 log.debug(XMLUtils.toString(data));
7285
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
152 }
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
153
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
154 List<Facet> fs = new ArrayList<Facet>();
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
155
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
156 String code = getDatacageIDValue(data);
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
157
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
158 if (code != null) {
7368
9eef5004ff21 FlowVelocityModelArtifact: Slightly improve facet names.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 7367
diff changeset
159 String name = FlowVelocityModel.getModelDescription(Integer.valueOf(code));
9eef5004ff21 FlowVelocityModelArtifact: Slightly improve facet names.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 7367
diff changeset
160
7285
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
161 Facet facet = new FlowVelocityFacet(
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
162 0,
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
163 FLOW_VELOCITY_MAINCHANNEL,
7534
00950f79b0d9 issue1512: i18n.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 7368
diff changeset
164 Resources.getMsg(callMeta,
00950f79b0d9 issue1512: i18n.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 7368
diff changeset
165 I18N_MAINCHANNEL,
00950f79b0d9 issue1512: i18n.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 7368
diff changeset
166 new Object[] { name } ),
7285
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
167 ComputeType.ADVANCE, state.getID(), "hash"
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
168 );
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
169 fs.add(facet);
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
170 Facet tauFacet = new FlowVelocityFacet(
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
171 0,
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
172 FLOW_VELOCITY_TAU,
7534
00950f79b0d9 issue1512: i18n.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 7368
diff changeset
173 Resources.getMsg(callMeta,
00950f79b0d9 issue1512: i18n.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 7368
diff changeset
174 I18N_TAU,
00950f79b0d9 issue1512: i18n.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 7368
diff changeset
175 new Object[] { name} ),
7285
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
176 ComputeType.ADVANCE, state.getID(), "hash"
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
177 );
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
178 fs.add(tauFacet);
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
179 Facet qFacet = new FlowVelocityFacet(
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
180 0,
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
181 FLOW_VELOCITY_DISCHARGE,
7534
00950f79b0d9 issue1512: i18n.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 7368
diff changeset
182 Resources.getMsg(callMeta,
00950f79b0d9 issue1512: i18n.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 7368
diff changeset
183 I18N_Q,
00950f79b0d9 issue1512: i18n.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 7368
diff changeset
184 new Object[] { name} ),
7285
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
185 ComputeType.ADVANCE, state.getID(), "hash"
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
186 );
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
187 fs.add(qFacet);
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
188 Facet tFacet = new FlowVelocityFacet(
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
189 0,
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
190 FLOW_VELOCITY_TOTALCHANNEL,
7534
00950f79b0d9 issue1512: i18n.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 7368
diff changeset
191 Resources.getMsg(callMeta,
00950f79b0d9 issue1512: i18n.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 7368
diff changeset
192 I18N_TOTALCHANNEL,
00950f79b0d9 issue1512: i18n.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 7368
diff changeset
193 new Object[] { name} ),
7285
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
194 ComputeType.ADVANCE, state.getID(), "hash"
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
195 );
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
196 fs.add(tFacet);
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
197 addFacets(state.getID(), fs);
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
198 addStringData(DATA_ID, code);
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
199 }
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
200 else {
8202
e4606eae8ea5 sed src/**/*.java 's/logger/log/g'
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7842
diff changeset
201 log.error("No id given.");
7285
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
202 }
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
203
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
204 spawnState();
7842
8d5ca5175038 Updated signature of artifacts setup method; Removed unnecessary setup overrides.
Raimund Renkert <rrenkert@intevation.de>
parents: 7534
diff changeset
205 super.setup(identifier, factory, context, callMeta, data, loadFacets);
7285
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
206 }
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
207
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
208
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
209 /**
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
210 * Get a list containing the one and only State.
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
211 * @param context ignored.
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
212 * @return list with one and only state.
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
213 */
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
214 @Override
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
215 protected List<State> getStates(Object context) {
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
216 ArrayList<State> states = new ArrayList<State>();
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
217 states.add(getState());
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
218 return states;
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
219 }
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
220
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
221
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
222 /**
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
223 * Get the "current" state (there is but one).
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
224 * @param cc ignored.
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
225 * @return the "current" (only possible) state.
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
226 */
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
227 @Override
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
228 public State getCurrentState(Object cc) {
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
229 return getState();
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
230 }
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
231
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
232
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
233 /**
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
234 * Get the only possible state.
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
235 * @return the state.
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
236 */
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
237 protected State getState() {
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
238 return getState(null, null);
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
239 }
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
240
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
241
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
242 /**
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
243 * Get the state.
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
244 * @param context ignored.
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
245 * @param stateID ignored.
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
246 * @return the state.
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
247 */
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
248 @Override
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
249 protected State getState(Object context, String stateID) {
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
250 return (state != null)
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
251 ? state
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
252 : spawnState();
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
253 }
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
254
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
255
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
256 /**
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
257 * Called via setup. Overridden to avoid cloning all data.
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
258 *
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
259 * @param artifact The master-artifact.
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
260 */
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
261 @Override
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
262 protected void initialize(
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
263 Artifact artifact,
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
264 Object context,
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
265 CallMeta meta)
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
266 {
8202
e4606eae8ea5 sed src/**/*.java 's/logger/log/g'
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7842
diff changeset
267 log.debug("FlowVelocityModelArtifact.initialize");
7285
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
268 }
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
269 }
8c315b6bbc8a issue1512: Initial commit of FlowVelocityModelArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
270 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf-8 :

http://dive4elements.wald.intevation.org