Mercurial > dive4elements > river
comparison flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/fixings/FixAnalysisPeriodsFacet.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 | e3c7a3228bc2 |
children | acfd48384835 |
comparison
equal
deleted
inserted
replaced
4441:093f9333f66b | 4442:26774405c884 |
---|---|
6 import de.intevation.flys.artifacts.FLYSArtifact; | 6 import de.intevation.flys.artifacts.FLYSArtifact; |
7 | 7 |
8 import de.intevation.flys.artifacts.access.FixAnalysisAccess; | 8 import de.intevation.flys.artifacts.access.FixAnalysisAccess; |
9 | 9 |
10 import de.intevation.flys.artifacts.model.CalculationResult; | 10 import de.intevation.flys.artifacts.model.CalculationResult; |
11 import de.intevation.flys.artifacts.model.DataFacet; | |
12 import de.intevation.flys.artifacts.model.DateRange; | 11 import de.intevation.flys.artifacts.model.DateRange; |
13 import de.intevation.flys.artifacts.model.FacetTypes; | 12 import de.intevation.flys.artifacts.model.FacetTypes; |
14 | 13 |
15 import de.intevation.flys.artifacts.states.DefaultState.ComputeType; | 14 import de.intevation.flys.artifacts.states.DefaultState.ComputeType; |
16 | 15 |
22 * Facet to show W values for Q values at km for a date. | 21 * Facet to show W values for Q values at km for a date. |
23 * | 22 * |
24 * @author <a href="mailto:raimund.renkert@intevation.de">Raimund Renkert</a> | 23 * @author <a href="mailto:raimund.renkert@intevation.de">Raimund Renkert</a> |
25 */ | 24 */ |
26 public class FixAnalysisPeriodsFacet | 25 public class FixAnalysisPeriodsFacet |
27 extends DataFacet | 26 extends FixingsFacet |
28 implements FacetTypes { | 27 implements FacetTypes { |
29 | 28 |
30 /** House logger. */ | 29 /** House logger. */ |
31 private static Logger logger = Logger.getLogger(FixAnalysisPeriodsFacet.class); | 30 private static Logger logger = Logger.getLogger(FixAnalysisPeriodsFacet.class); |
32 | 31 |
68 (CalculationResult) flys.compute(context, | 67 (CalculationResult) flys.compute(context, |
69 ComputeType.ADVANCE, | 68 ComputeType.ADVANCE, |
70 false); | 69 false); |
71 | 70 |
72 FixAnalysisResult result = (FixAnalysisResult) res.getData(); | 71 FixAnalysisResult result = (FixAnalysisResult) res.getData(); |
73 double currentKm = | 72 double currentKm = getCurrentKm(context); |
74 ((Double)context.getContextValue("currentKm")).doubleValue(); | |
75 | 73 |
76 KMIndex<AnalysisPeriod []> kmPeriods = result.getAnalysisPeriods(); | 74 KMIndex<AnalysisPeriod []> kmPeriods = result.getAnalysisPeriods(); |
77 KMIndex.Entry<AnalysisPeriod []> kmPeriodsEntry = | 75 KMIndex.Entry<AnalysisPeriod []> kmPeriodsEntry = |
78 kmPeriods.binarySearch(currentKm); | 76 kmPeriods.binarySearch(currentKm); |
79 | 77 |