Mercurial > dive4elements > river
comparison flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/fixings/FixAnalysisEventsFacet.java @ 4442:26774405c884
Introduce a new FixingsFacet to add save access to the current Km
Values which are accessed by a String like a map must be checked for null. The
new FixingsFacet adds a getCurrentKm method that abstracts the direct access to
the CallContext and always returns a valid double value.
author | Björn Ricks <bjoern.ricks@intevation.de> |
---|---|
date | Wed, 07 Nov 2012 14:06:03 +0100 |
parents | 66f539df4e8b |
children |
comparison
equal
deleted
inserted
replaced
4441:093f9333f66b | 4442:26774405c884 |
---|---|
4 import de.intevation.artifacts.CallContext; | 4 import de.intevation.artifacts.CallContext; |
5 | 5 |
6 import de.intevation.flys.artifacts.FLYSArtifact; | 6 import de.intevation.flys.artifacts.FLYSArtifact; |
7 | 7 |
8 import de.intevation.flys.artifacts.model.CalculationResult; | 8 import de.intevation.flys.artifacts.model.CalculationResult; |
9 import de.intevation.flys.artifacts.model.DataFacet; | |
10 import de.intevation.flys.artifacts.model.FacetTypes; | 9 import de.intevation.flys.artifacts.model.FacetTypes; |
11 | 10 |
12 import de.intevation.flys.artifacts.states.DefaultState.ComputeType; | 11 import de.intevation.flys.artifacts.states.DefaultState.ComputeType; |
13 | 12 |
14 import de.intevation.flys.utils.KMIndex; | 13 import de.intevation.flys.utils.KMIndex; |
19 * Facet to show W values for Q values at km for a date. | 18 * Facet to show W values for Q values at km for a date. |
20 * | 19 * |
21 * @author <a href="mailto:raimund.renkert@intevation.de">Raimund Renkert</a> | 20 * @author <a href="mailto:raimund.renkert@intevation.de">Raimund Renkert</a> |
22 */ | 21 */ |
23 public class FixAnalysisEventsFacet | 22 public class FixAnalysisEventsFacet |
24 extends DataFacet | 23 extends FixingsFacet |
25 implements FacetTypes { | 24 implements FacetTypes { |
26 | 25 |
27 /** House logger. */ | 26 /** House logger. */ |
28 private static Logger logger = Logger.getLogger(FixAnalysisEventsFacet.class); | 27 private static Logger logger = Logger.getLogger(FixAnalysisEventsFacet.class); |
29 | 28 |
64 (CalculationResult) flys.compute(context, | 63 (CalculationResult) flys.compute(context, |
65 ComputeType.ADVANCE, | 64 ComputeType.ADVANCE, |
66 false); | 65 false); |
67 | 66 |
68 FixAnalysisResult result = (FixAnalysisResult) res.getData(); | 67 FixAnalysisResult result = (FixAnalysisResult) res.getData(); |
69 double currentKm = | 68 double currentKm = getCurrentKm(context); |
70 ((Double)context.getContextValue("currentKm")).doubleValue(); | |
71 | 69 |
72 KMIndex<AnalysisPeriod []> kmPeriods = result.getAnalysisPeriods(); | 70 KMIndex<AnalysisPeriod []> kmPeriods = result.getAnalysisPeriods(); |
73 KMIndex.Entry<AnalysisPeriod []> kmPeriodsEntry = | 71 KMIndex.Entry<AnalysisPeriod []> kmPeriodsEntry = |
74 kmPeriods.binarySearch(currentKm); | 72 kmPeriods.binarySearch(currentKm); |
75 | 73 |