comparison flys-artifacts/src/main/java/de/intevation/flys/artifacts/states/DurationCurveState.java @ 692:22e4bffbe240 facets-slt

Generated facets for each output aspect. flys-artifacts/branches/facets-slt@2132 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Ingo Weinzierl <ingo.weinzierl@intevation.de>
date Thu, 16 Jun 2011 10:05:44 +0000
parents f8ac04b2dbd0
children 708b270dfd30
comparison
equal deleted inserted replaced
691:2600aa2c7319 692:22e4bffbe240
2 2
3 import java.util.List; 3 import java.util.List;
4 4
5 import org.apache.log4j.Logger; 5 import org.apache.log4j.Logger;
6 6
7 import de.intevation.artifacts.CallContext;
8
9 import de.intevation.artifactdatabase.state.DefaultFacet;
7 import de.intevation.artifactdatabase.state.Facet; 10 import de.intevation.artifactdatabase.state.Facet;
8 11
9 import de.intevation.flys.artifacts.FLYSArtifact; 12 import de.intevation.flys.artifacts.FLYSArtifact;
10 import de.intevation.flys.artifacts.WINFOArtifact; 13 import de.intevation.flys.artifacts.WINFOArtifact;
11 import de.intevation.flys.artifacts.model.ComputeCallback; 14 import de.intevation.flys.artifacts.model.ComputeCallback;
12 import de.intevation.flys.artifacts.model.ComputeCallbackAdapter; 15 import de.intevation.flys.artifacts.model.ComputeCallbackAdapter;
16 import de.intevation.flys.artifacts.model.FacetTypes;
17 import de.intevation.flys.artifacts.model.WQDay;
18 import de.intevation.flys.artifacts.resources.Resources;
13 19
14 /** 20 /**
15 * The final state that will be reached after the duration curve calculation 21 * The final state that will be reached after the duration curve calculation
16 * mode has been chosen. 22 * mode has been chosen.
17 * 23 *
18 * @author <a href="mailto:ingo.weinzierl@intevation.de">Ingo Weinzierl</a> 24 * @author <a href="mailto:ingo.weinzierl@intevation.de">Ingo Weinzierl</a>
19 */ 25 */
20 public class DurationCurveState extends DefaultState { 26 public class DurationCurveState
21 27 extends DefaultState
28 implements FacetTypes
29 {
22 /** The logger that is used in this state.*/ 30 /** The logger that is used in this state.*/
23 private static Logger logger = Logger.getLogger(DurationCurveState.class); 31 private static Logger logger = Logger.getLogger(DurationCurveState.class);
24 32
25 public DurationCurveState() { 33 public DurationCurveState() {
26 } 34 }
33 final WINFOArtifact winfo = (WINFOArtifact) flys; 41 final WINFOArtifact winfo = (WINFOArtifact) flys;
34 42
35 return new ComputeCallbackAdapter() { 43 return new ComputeCallbackAdapter() {
36 44
37 @Override 45 @Override
38 public Object computeAdvance(List<Facet> facets) { 46 public Object computeAdvance(
39 return winfo.getDurationCurveData(); 47 CallContext context,
48 List<Facet> facets)
49 {
50 WQDay res = winfo.getDurationCurveData();
51
52 if (res == null) {
53 logger.debug("No results given.");
54 return null;
55 }
56
57 Object[] args = new Object[] {
58 winfo.getRiver().getName()
59 };
60
61 String nameW = Resources.getMsg(
62 context.getMeta(),
63 "chart.duration.curve.curve.w",
64 "",
65 args);
66
67 String nameQ = Resources.getMsg(
68 context.getMeta(),
69 "chart.duration.curve.curve.q",
70 "",
71 args);
72
73 Facet w = new DefaultFacet(0, DURATION_W, nameW);
74 Facet q = new DefaultFacet(0, DURATION_Q, nameQ);
75
76 facets.add(w);
77 facets.add(q);
78
79 return res;
40 } 80 }
41 }; 81 };
42 } 82 }
43 } 83 }
44 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf-8 : 84 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf-8 :

http://dive4elements.wald.intevation.org