Mercurial > dive4elements > river
comparison flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/ReferenceCurveFacet.java @ 2407:dce0cc856357
'Bezugslinien': Added axis labels matching the displayed data.
flys-artifacts/trunk@4036 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Sascha L. Teichmann <sascha.teichmann@intevation.de> |
---|---|
date | Fri, 10 Feb 2012 16:00:57 +0000 |
parents | f008c3335a77 |
children | ba15eb120a02 |
comparison
equal
deleted
inserted
replaced
2406:84cdde4bc482 | 2407:dce0cc856357 |
---|---|
1 package de.intevation.flys.artifacts.model; | 1 package de.intevation.flys.artifacts.model; |
2 | 2 |
3 import java.util.ArrayList; | |
4 import java.util.Arrays; | |
5 import java.util.List; | 3 import java.util.List; |
4 import java.util.Collections; | |
6 | 5 |
7 import de.intevation.artifactdatabase.state.Facet; | 6 import de.intevation.artifactdatabase.state.Facet; |
8 | 7 |
9 import de.intevation.artifacts.Artifact; | 8 import de.intevation.artifacts.Artifact; |
10 import de.intevation.artifacts.CallContext; | 9 import de.intevation.artifacts.CallContext; |
17 | 16 |
18 /** Facet for W-over-Ws. */ | 17 /** Facet for W-over-Ws. */ |
19 public class ReferenceCurveFacet | 18 public class ReferenceCurveFacet |
20 extends DataFacet | 19 extends DataFacet |
21 { | 20 { |
22 public static final String BLACK_BOARD_KEY = "reference.curve.axis.scale"; | 21 private static Logger log = Logger.getLogger(ReferenceCurveFacet.class); |
23 | 22 |
24 public static final List BLACK_BOARD_KEY_LIST = | 23 public static final String CONTEXT_KEY = "reference.curve.axis.scale"; |
25 Arrays.asList(new String [] { BLACK_BOARD_KEY }); | |
26 | |
27 private static Logger log = Logger.getLogger(ReferenceCurveFacet.class); | |
28 | 24 |
29 public ReferenceCurveFacet() { | 25 public ReferenceCurveFacet() { |
30 } | 26 } |
31 | 27 |
32 public ReferenceCurveFacet(int index, String name, String description) { | 28 public ReferenceCurveFacet(int index, String name, String description) { |
80 return copy; | 76 return copy; |
81 } | 77 } |
82 | 78 |
83 @Override | 79 @Override |
84 public List getDataProviderKeys(Artifact art, CallContext context) { | 80 public List getDataProviderKeys(Artifact art, CallContext context) { |
85 // Answer to key only if x or y in meter... | 81 |
86 List keys = new ArrayList(); | |
87 // compute / get data | 82 // compute / get data |
88 Object obj = context.getContextValue("reference.curve.axis.scale"); | 83 Object obj = context.getContextValue(CONTEXT_KEY); |
89 | 84 |
90 if (!(obj instanceof WWAxisTypes)) { | 85 if (!(obj instanceof WWAxisTypes)) { |
91 obj = new WWAxisTypes(getWWQQ(art, context)); | 86 obj = new WWAxisTypes(getWWQQ(art, context)); |
92 context.putContextValue("reference.curve.axis.scale", obj); | 87 context.putContextValue(CONTEXT_KEY, obj); |
93 } | 88 } |
94 else { | 89 else { |
95 ((WWAxisTypes)obj).classify(getWWQQ(art, context)); | 90 ((WWAxisTypes)obj).classify(getWWQQ(art, context)); |
96 } | 91 } |
97 // TODO we do not need to provide data | |
98 return BLACK_BOARD_KEY_LIST; | |
99 } | |
100 | 92 |
101 @Override | 93 return Collections.emptyList(); |
102 public Object provideBlackboardData( | |
103 Artifact artifact, | |
104 Object key, | |
105 Object param, | |
106 CallContext context | |
107 ) { | |
108 // TODO we do not really need to provide data | |
109 if (!key.equals(BLACK_BOARD_KEY)) { | |
110 return null; | |
111 } | |
112 | |
113 Object obj = context.getContextValue("reference.curve.axis.scale"); | |
114 | |
115 if (!(obj instanceof WWAxisTypes)) { | |
116 obj = new WWAxisTypes(getWWQQ(artifact, context)); | |
117 context.putContextValue("reference.curve.axis.scale", obj); | |
118 } | |
119 else { | |
120 ((WWAxisTypes)obj).classify(getWWQQ(artifact, context)); | |
121 } | |
122 | |
123 return obj; | |
124 } | 94 } |
125 } | 95 } |
126 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 : | 96 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 : |