annotate artifacts/src/main/java/org/dive4elements/river/artifacts/model/ReferenceCurveFacet.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: 3076
diff changeset
9 package org.dive4elements.river.artifacts.model;
2196
5f3726f31f00 "Bezugslinienverfahren": Added facet classes.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
10
2756
ba15eb120a02 Expose reference curve parameters via blackboard.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2407
diff changeset
11 import java.util.ArrayList;
2256
dd93a8e1377a First steps to serve the data in cm if we are are gauges only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2221
diff changeset
12 import java.util.List;
2407
dce0cc856357 'Bezugslinien': Added axis labels matching the displayed data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2405
diff changeset
13 import java.util.Collections;
2256
dd93a8e1377a First steps to serve the data in cm if we are are gauges only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2221
diff changeset
14
5831
bd047b71ab37 Repaired internal references
Sascha L. Teichmann <teichmann@intevation.de>
parents: 3076
diff changeset
15 import org.dive4elements.artifactdatabase.state.Facet;
2196
5f3726f31f00 "Bezugslinienverfahren": Added facet classes.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
16
5831
bd047b71ab37 Repaired internal references
Sascha L. Teichmann <teichmann@intevation.de>
parents: 3076
diff changeset
17 import org.dive4elements.artifacts.Artifact;
bd047b71ab37 Repaired internal references
Sascha L. Teichmann <teichmann@intevation.de>
parents: 3076
diff changeset
18 import org.dive4elements.artifacts.CallContext;
2196
5f3726f31f00 "Bezugslinienverfahren": Added facet classes.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
19
5831
bd047b71ab37 Repaired internal references
Sascha L. Teichmann <teichmann@intevation.de>
parents: 3076
diff changeset
20 import org.dive4elements.river.artifacts.FLYSArtifact;
bd047b71ab37 Repaired internal references
Sascha L. Teichmann <teichmann@intevation.de>
parents: 3076
diff changeset
21 import org.dive4elements.river.artifacts.WINFOArtifact;
2196
5f3726f31f00 "Bezugslinienverfahren": Added facet classes.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
22
5831
bd047b71ab37 Repaired internal references
Sascha L. Teichmann <teichmann@intevation.de>
parents: 3076
diff changeset
23 import org.dive4elements.river.artifacts.states.DefaultState.ComputeType;
2196
5f3726f31f00 "Bezugslinienverfahren": Added facet classes.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
24
5f3726f31f00 "Bezugslinienverfahren": Added facet classes.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
25 import org.apache.log4j.Logger;
5f3726f31f00 "Bezugslinienverfahren": Added facet classes.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
26
2756
ba15eb120a02 Expose reference curve parameters via blackboard.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2407
diff changeset
27
2221
fdeb6d61c24c Cosmetics.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2198
diff changeset
28 /** Facet for W-over-Ws. */
3076
5642a83420f2 FLYS artifacts: Removed trailing whitespace.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2756
diff changeset
29 public class ReferenceCurveFacet
2196
5f3726f31f00 "Bezugslinienverfahren": Added facet classes.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
30 extends DataFacet
5f3726f31f00 "Bezugslinienverfahren": Added facet classes.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
31 {
2407
dce0cc856357 'Bezugslinien': Added axis labels matching the displayed data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2405
diff changeset
32 private static Logger log = Logger.getLogger(ReferenceCurveFacet.class);
2256
dd93a8e1377a First steps to serve the data in cm if we are are gauges only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2221
diff changeset
33
2407
dce0cc856357 'Bezugslinien': Added axis labels matching the displayed data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2405
diff changeset
34 public static final String CONTEXT_KEY = "reference.curve.axis.scale";
2196
5f3726f31f00 "Bezugslinienverfahren": Added facet classes.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
35
2756
ba15eb120a02 Expose reference curve parameters via blackboard.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2407
diff changeset
36 /** Blackboard data provider key for reference curves start km. */
ba15eb120a02 Expose reference curve parameters via blackboard.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2407
diff changeset
37 public static final String BB_REFERENCECURVE_STARTKM =
ba15eb120a02 Expose reference curve parameters via blackboard.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2407
diff changeset
38 "reference_curve.startkm";
ba15eb120a02 Expose reference curve parameters via blackboard.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2407
diff changeset
39
ba15eb120a02 Expose reference curve parameters via blackboard.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2407
diff changeset
40 /** Blackboard data provider key for reference curves end kms. */
ba15eb120a02 Expose reference curve parameters via blackboard.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2407
diff changeset
41 public static final String BB_REFERENCECURVE_ENDKMS =
ba15eb120a02 Expose reference curve parameters via blackboard.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2407
diff changeset
42 "reference_curve.endkms";
ba15eb120a02 Expose reference curve parameters via blackboard.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2407
diff changeset
43
ba15eb120a02 Expose reference curve parameters via blackboard.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2407
diff changeset
44
2196
5f3726f31f00 "Bezugslinienverfahren": Added facet classes.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
45 public ReferenceCurveFacet() {
5f3726f31f00 "Bezugslinienverfahren": Added facet classes.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
46 }
5f3726f31f00 "Bezugslinienverfahren": Added facet classes.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
47
2756
ba15eb120a02 Expose reference curve parameters via blackboard.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2407
diff changeset
48
2196
5f3726f31f00 "Bezugslinienverfahren": Added facet classes.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
49 public ReferenceCurveFacet(int index, String name, String description) {
5f3726f31f00 "Bezugslinienverfahren": Added facet classes.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
50 super(index, name, description, ComputeType.ADVANCE, null, null);
5f3726f31f00 "Bezugslinienverfahren": Added facet classes.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
51 }
5f3726f31f00 "Bezugslinienverfahren": Added facet classes.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
52
2756
ba15eb120a02 Expose reference curve parameters via blackboard.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2407
diff changeset
53
2196
5f3726f31f00 "Bezugslinienverfahren": Added facet classes.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
54 public ReferenceCurveFacet(
5f3726f31f00 "Bezugslinienverfahren": Added facet classes.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
55 int index,
5f3726f31f00 "Bezugslinienverfahren": Added facet classes.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
56 String name,
5f3726f31f00 "Bezugslinienverfahren": Added facet classes.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
57 String description,
5f3726f31f00 "Bezugslinienverfahren": Added facet classes.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
58 ComputeType type,
5f3726f31f00 "Bezugslinienverfahren": Added facet classes.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
59 String stateID,
5f3726f31f00 "Bezugslinienverfahren": Added facet classes.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
60 String hash
5f3726f31f00 "Bezugslinienverfahren": Added facet classes.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
61 ) {
5f3726f31f00 "Bezugslinienverfahren": Added facet classes.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
62 super(index, name, description, type, hash, stateID);
5f3726f31f00 "Bezugslinienverfahren": Added facet classes.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
63 }
5f3726f31f00 "Bezugslinienverfahren": Added facet classes.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
64
2756
ba15eb120a02 Expose reference curve parameters via blackboard.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2407
diff changeset
65
2196
5f3726f31f00 "Bezugslinienverfahren": Added facet classes.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
66 public Object getData(Artifact artifact, CallContext context) {
5f3726f31f00 "Bezugslinienverfahren": Added facet classes.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
67
5f3726f31f00 "Bezugslinienverfahren": Added facet classes.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
68 if (log.isDebugEnabled()) {
5f3726f31f00 "Bezugslinienverfahren": Added facet classes.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
69 log.debug("Get data for reference curve at index: " + index +
5f3726f31f00 "Bezugslinienverfahren": Added facet classes.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
70 " /stateId: " + stateId);
5f3726f31f00 "Bezugslinienverfahren": Added facet classes.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
71 }
5f3726f31f00 "Bezugslinienverfahren": Added facet classes.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
72
2283
d4330439be3a Let reference curve calculation result in wwqq.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2256
diff changeset
73 return getWWQQ(artifact, context);
2256
dd93a8e1377a First steps to serve the data in cm if we are are gauges only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2221
diff changeset
74 }
dd93a8e1377a First steps to serve the data in cm if we are are gauges only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2221
diff changeset
75
2756
ba15eb120a02 Expose reference curve parameters via blackboard.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2407
diff changeset
76
ba15eb120a02 Expose reference curve parameters via blackboard.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2407
diff changeset
77 /**
ba15eb120a02 Expose reference curve parameters via blackboard.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2407
diff changeset
78 * Can provide parameters of reference curve
ba15eb120a02 Expose reference curve parameters via blackboard.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2407
diff changeset
79 * @param key will respond on BB_REFERENCECURVE START/ENDKMS
ba15eb120a02 Expose reference curve parameters via blackboard.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2407
diff changeset
80 * @param param ignored
ba15eb120a02 Expose reference curve parameters via blackboard.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2407
diff changeset
81 * @param context ignored
ba15eb120a02 Expose reference curve parameters via blackboard.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2407
diff changeset
82 * @return whatever parameters for reference curve
ba15eb120a02 Expose reference curve parameters via blackboard.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2407
diff changeset
83 */
ba15eb120a02 Expose reference curve parameters via blackboard.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2407
diff changeset
84 @Override
ba15eb120a02 Expose reference curve parameters via blackboard.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2407
diff changeset
85 public Object provideBlackboardData(Artifact artifact,
ba15eb120a02 Expose reference curve parameters via blackboard.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2407
diff changeset
86 Object key,
ba15eb120a02 Expose reference curve parameters via blackboard.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2407
diff changeset
87 Object param,
ba15eb120a02 Expose reference curve parameters via blackboard.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2407
diff changeset
88 CallContext context
ba15eb120a02 Expose reference curve parameters via blackboard.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2407
diff changeset
89 ) {
ba15eb120a02 Expose reference curve parameters via blackboard.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2407
diff changeset
90 WINFOArtifact winfo = (WINFOArtifact) artifact;
ba15eb120a02 Expose reference curve parameters via blackboard.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2407
diff changeset
91 if (key.equals(BB_REFERENCECURVE_STARTKM)) {
ba15eb120a02 Expose reference curve parameters via blackboard.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2407
diff changeset
92 return winfo.getReferenceStartKm();
ba15eb120a02 Expose reference curve parameters via blackboard.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2407
diff changeset
93 }
ba15eb120a02 Expose reference curve parameters via blackboard.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2407
diff changeset
94 else if (key.equals(BB_REFERENCECURVE_ENDKMS)) {
ba15eb120a02 Expose reference curve parameters via blackboard.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2407
diff changeset
95 return winfo.getReferenceEndKms();
ba15eb120a02 Expose reference curve parameters via blackboard.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2407
diff changeset
96 }
ba15eb120a02 Expose reference curve parameters via blackboard.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2407
diff changeset
97 else {
ba15eb120a02 Expose reference curve parameters via blackboard.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2407
diff changeset
98 return null;
ba15eb120a02 Expose reference curve parameters via blackboard.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2407
diff changeset
99 }
ba15eb120a02 Expose reference curve parameters via blackboard.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2407
diff changeset
100 }
ba15eb120a02 Expose reference curve parameters via blackboard.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2407
diff changeset
101
ba15eb120a02 Expose reference curve parameters via blackboard.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2407
diff changeset
102
2283
d4330439be3a Let reference curve calculation result in wwqq.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2256
diff changeset
103 protected WWQQ getWWQQ(Artifact artifact, CallContext context) {
2196
5f3726f31f00 "Bezugslinienverfahren": Added facet classes.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
104 FLYSArtifact winfo = (FLYSArtifact)artifact;
5f3726f31f00 "Bezugslinienverfahren": Added facet classes.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
105
5f3726f31f00 "Bezugslinienverfahren": Added facet classes.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
106 CalculationResult res = (CalculationResult)
5f3726f31f00 "Bezugslinienverfahren": Added facet classes.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
107 winfo.compute(context, hash, stateId, type, false);
5f3726f31f00 "Bezugslinienverfahren": Added facet classes.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
108
2283
d4330439be3a Let reference curve calculation result in wwqq.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2256
diff changeset
109 return ((WWQQ [])res.getData())[index];
2196
5f3726f31f00 "Bezugslinienverfahren": Added facet classes.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
110 }
5f3726f31f00 "Bezugslinienverfahren": Added facet classes.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
111
2756
ba15eb120a02 Expose reference curve parameters via blackboard.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2407
diff changeset
112
2196
5f3726f31f00 "Bezugslinienverfahren": Added facet classes.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
113 @Override
5f3726f31f00 "Bezugslinienverfahren": Added facet classes.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
114 public void set(Facet other) {
5f3726f31f00 "Bezugslinienverfahren": Added facet classes.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
115 super.set(other);
2405
f008c3335a77 Towards fixe of flys/issue495.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2402
diff changeset
116 ReferenceCurveFacet o = (ReferenceCurveFacet)other;
f008c3335a77 Towards fixe of flys/issue495.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2402
diff changeset
117 type = o.type;
f008c3335a77 Towards fixe of flys/issue495.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2402
diff changeset
118 hash = o.hash;
f008c3335a77 Towards fixe of flys/issue495.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2402
diff changeset
119 stateId = o.stateId;
2196
5f3726f31f00 "Bezugslinienverfahren": Added facet classes.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
120 }
5f3726f31f00 "Bezugslinienverfahren": Added facet classes.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
121
2756
ba15eb120a02 Expose reference curve parameters via blackboard.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2407
diff changeset
122
2196
5f3726f31f00 "Bezugslinienverfahren": Added facet classes.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
123 /** Copy deeply. */
5f3726f31f00 "Bezugslinienverfahren": Added facet classes.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
124 @Override
5f3726f31f00 "Bezugslinienverfahren": Added facet classes.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
125 public Facet deepCopy() {
5f3726f31f00 "Bezugslinienverfahren": Added facet classes.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
126 ReferenceCurveFacet copy = new ReferenceCurveFacet();
5f3726f31f00 "Bezugslinienverfahren": Added facet classes.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
127 copy.set(this);
5f3726f31f00 "Bezugslinienverfahren": Added facet classes.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
128 return copy;
5f3726f31f00 "Bezugslinienverfahren": Added facet classes.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
129 }
2256
dd93a8e1377a First steps to serve the data in cm if we are are gauges only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2221
diff changeset
130
2756
ba15eb120a02 Expose reference curve parameters via blackboard.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2407
diff changeset
131
ba15eb120a02 Expose reference curve parameters via blackboard.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2407
diff changeset
132 @Override
ba15eb120a02 Expose reference curve parameters via blackboard.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2407
diff changeset
133 public List getStaticDataProviderKeys(Artifact art) {
ba15eb120a02 Expose reference curve parameters via blackboard.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2407
diff changeset
134 List list = new ArrayList();
ba15eb120a02 Expose reference curve parameters via blackboard.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2407
diff changeset
135 list.add(BB_REFERENCECURVE_STARTKM);
ba15eb120a02 Expose reference curve parameters via blackboard.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2407
diff changeset
136 list.add(BB_REFERENCECURVE_ENDKMS);
ba15eb120a02 Expose reference curve parameters via blackboard.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2407
diff changeset
137 return list;
ba15eb120a02 Expose reference curve parameters via blackboard.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2407
diff changeset
138 }
ba15eb120a02 Expose reference curve parameters via blackboard.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2407
diff changeset
139
ba15eb120a02 Expose reference curve parameters via blackboard.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2407
diff changeset
140
2256
dd93a8e1377a First steps to serve the data in cm if we are are gauges only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2221
diff changeset
141 @Override
2405
f008c3335a77 Towards fixe of flys/issue495.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2402
diff changeset
142 public List getDataProviderKeys(Artifact art, CallContext context) {
2407
dce0cc856357 'Bezugslinien': Added axis labels matching the displayed data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2405
diff changeset
143
2405
f008c3335a77 Towards fixe of flys/issue495.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2402
diff changeset
144 // compute / get data
2407
dce0cc856357 'Bezugslinien': Added axis labels matching the displayed data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2405
diff changeset
145 Object obj = context.getContextValue(CONTEXT_KEY);
2405
f008c3335a77 Towards fixe of flys/issue495.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2402
diff changeset
146
f008c3335a77 Towards fixe of flys/issue495.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2402
diff changeset
147 if (!(obj instanceof WWAxisTypes)) {
f008c3335a77 Towards fixe of flys/issue495.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2402
diff changeset
148 obj = new WWAxisTypes(getWWQQ(art, context));
2407
dce0cc856357 'Bezugslinien': Added axis labels matching the displayed data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2405
diff changeset
149 context.putContextValue(CONTEXT_KEY, obj);
2405
f008c3335a77 Towards fixe of flys/issue495.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2402
diff changeset
150 }
f008c3335a77 Towards fixe of flys/issue495.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2402
diff changeset
151 else {
f008c3335a77 Towards fixe of flys/issue495.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2402
diff changeset
152 ((WWAxisTypes)obj).classify(getWWQQ(art, context));
f008c3335a77 Towards fixe of flys/issue495.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2402
diff changeset
153 }
2256
dd93a8e1377a First steps to serve the data in cm if we are are gauges only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2221
diff changeset
154
2756
ba15eb120a02 Expose reference curve parameters via blackboard.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2407
diff changeset
155 return getStaticDataProviderKeys(art);//Collections.emptyList();
2256
dd93a8e1377a First steps to serve the data in cm if we are are gauges only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2221
diff changeset
156 }
2196
5f3726f31f00 "Bezugslinienverfahren": Added facet classes.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
157 }
5f3726f31f00 "Bezugslinienverfahren": Added facet classes.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
158 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :

http://dive4elements.wald.intevation.org