Mercurial > dive4elements > river
comparison flys-artifacts/src/main/java/de/intevation/flys/artifacts/states/ComputationRangeState.java @ 1712:7e19449d7826
#253 Modified the title creation of chart curves - titles will now equal the Facet's description.
flys-artifacts/trunk@2984 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Ingo Weinzierl <ingo.weinzierl@intevation.de> |
---|---|
date | Mon, 17 Oct 2011 10:47:36 +0000 |
parents | 022f62c75878 |
children | 9144e5a5027b |
comparison
equal
deleted
inserted
replaced
1711:f708120cb7bc | 1712:7e19449d7826 |
---|---|
1 package de.intevation.flys.artifacts.states; | 1 package de.intevation.flys.artifacts.states; |
2 | 2 |
3 import java.util.Date; | |
3 import java.util.List; | 4 import java.util.List; |
4 | 5 |
5 import org.apache.log4j.Logger; | 6 import org.apache.log4j.Logger; |
6 | 7 |
7 import org.w3c.dom.Element; | 8 import org.w3c.dom.Element; |
13 | 14 |
14 import de.intevation.artifactdatabase.ProtocolUtils; | 15 import de.intevation.artifactdatabase.ProtocolUtils; |
15 import de.intevation.artifactdatabase.data.StateData; | 16 import de.intevation.artifactdatabase.data.StateData; |
16 import de.intevation.artifactdatabase.state.Facet; | 17 import de.intevation.artifactdatabase.state.Facet; |
17 | 18 |
19 import de.intevation.flys.model.DischargeTable; | |
20 import de.intevation.flys.model.Gauge; | |
18 import de.intevation.flys.model.River; | 21 import de.intevation.flys.model.River; |
22 import de.intevation.flys.model.TimeInterval; | |
19 | 23 |
20 import de.intevation.flys.artifacts.FLYSArtifact; | 24 import de.intevation.flys.artifacts.FLYSArtifact; |
21 import de.intevation.flys.artifacts.WINFOArtifact; | 25 import de.intevation.flys.artifacts.WINFOArtifact; |
22 import de.intevation.flys.artifacts.model.CalculationResult; | 26 import de.intevation.flys.artifacts.model.CalculationResult; |
23 import de.intevation.flys.artifacts.model.FacetTypes; | 27 import de.intevation.flys.artifacts.model.FacetTypes; |
28 import de.intevation.flys.artifacts.model.GaugesFactory; | |
24 import de.intevation.flys.artifacts.model.RiverFactory; | 29 import de.intevation.flys.artifacts.model.RiverFactory; |
25 import de.intevation.flys.artifacts.model.WaterlevelFacet; | 30 import de.intevation.flys.artifacts.model.WaterlevelFacet; |
26 import de.intevation.flys.artifacts.model.WQKms; | 31 import de.intevation.flys.artifacts.model.WQKms; |
27 import de.intevation.flys.artifacts.resources.Resources; | 32 import de.intevation.flys.artifacts.resources.Resources; |
28 | 33 |
171 logger.debug("generate " + wqkms.length + " facets."); | 176 logger.debug("generate " + wqkms.length + " facets."); |
172 | 177 |
173 String stateID = winfo.getCurrentStateId(); | 178 String stateID = winfo.getCurrentStateId(); |
174 | 179 |
175 for (int i = 0; i < wqkms.length; ++i) { | 180 for (int i = 0; i < wqkms.length; ++i) { |
176 String name = wqkms[i].getName(); | 181 String name = getSeriesName(context, wqkms[i].getName()); |
177 facets.add(new WaterlevelFacet( | 182 facets.add(new WaterlevelFacet( |
178 i, DISCHARGE_CURVE, name, ComputeType.FEED, stateID, hash)); | 183 i, DISCHARGE_CURVE, name, ComputeType.FEED, stateID, hash)); |
179 } | 184 } |
180 | 185 |
181 | 186 |
182 return res; | 187 return res; |
188 } | |
189 | |
190 protected String getSeriesName(CallContext cc, String gaugeName) { | |
191 Gauge gauge = GaugesFactory.getGauge(gaugeName); | |
192 | |
193 if (gauge == null) { | |
194 logger.warn("Cannot determine Gauge for name: " + gaugeName); | |
195 return gaugeName; | |
196 } | |
197 | |
198 List<DischargeTable> dts = gauge.getDischargeTables(); | |
199 | |
200 for (DischargeTable dt: dts) { | |
201 if (dt.getKind() == 0) { | |
202 TimeInterval ti = dt.getTimeInterval(); | |
203 | |
204 Date start = ti.getStartTime(); | |
205 Date end = ti.getStopTime(); | |
206 | |
207 String name = gauge.getName(); | |
208 | |
209 if (end == null) { | |
210 Object[] args = new Object[] { name, start }; | |
211 return Resources.getMsg( | |
212 cc.getMeta(), | |
213 "chart.discharge.curve.curve.valid.from", | |
214 "", | |
215 args); | |
216 } | |
217 else { | |
218 Object[] args = new Object[] { name, start, end }; | |
219 return Resources.getMsg( | |
220 cc.getMeta(), | |
221 "chart.discharge.curve.curve.valid.range", | |
222 "", | |
223 args); | |
224 } | |
225 } | |
226 } | |
227 | |
228 return gauge.getName(); | |
183 } | 229 } |
184 | 230 |
185 | 231 |
186 @Override | 232 @Override |
187 protected double[] getMinMax(Artifact artifact) { | 233 protected double[] getMinMax(Artifact artifact) { |