comparison flys-artifacts/src/main/java/de/intevation/flys/artifacts/states/DurationCurveState.java @ 697:b972eba2ed8a facets-slt

Removed ComputeCallback because this was thought too complicated. Fixed issue with facets not be re-generated if same state is entered again. flys-artifacts/branches/facets-slt@2143 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Sascha L. Teichmann <sascha.teichmann@intevation.de>
date Fri, 17 Jun 2011 10:40:54 +0000
parents 708b270dfd30
children af3b5d9e91a4
comparison
equal deleted inserted replaced
696:708b270dfd30 697:b972eba2ed8a
8 8
9 import de.intevation.artifactdatabase.state.Facet; 9 import de.intevation.artifactdatabase.state.Facet;
10 10
11 import de.intevation.flys.artifacts.FLYSArtifact; 11 import de.intevation.flys.artifacts.FLYSArtifact;
12 import de.intevation.flys.artifacts.WINFOArtifact; 12 import de.intevation.flys.artifacts.WINFOArtifact;
13 import de.intevation.flys.artifacts.model.ComputeCallback;
14 import de.intevation.flys.artifacts.model.ComputeCallbackAdapter;
15 import de.intevation.flys.artifacts.model.DurationCurveFacet; 13 import de.intevation.flys.artifacts.model.DurationCurveFacet;
16 import de.intevation.flys.artifacts.model.FacetTypes; 14 import de.intevation.flys.artifacts.model.FacetTypes;
17 import de.intevation.flys.artifacts.model.WQDay; 15 import de.intevation.flys.artifacts.model.WQDay;
18 import de.intevation.flys.artifacts.resources.Resources; 16 import de.intevation.flys.artifacts.resources.Resources;
19 17
33 public DurationCurveState() { 31 public DurationCurveState() {
34 } 32 }
35 33
36 34
37 @Override 35 @Override
38 public ComputeCallback createComputeCallback( 36 public Object computeAdvance(
39 String hash, FLYSArtifact flys) 37 FLYSArtifact artifact,
40 { 38 String hash,
41 final WINFOArtifact winfo = (WINFOArtifact) flys; 39 CallContext context,
40 List<Facet> facets,
41 Object old
42 ) {
43 WINFOArtifact winfo = (WINFOArtifact)artifact;
42 44
43 return new ComputeCallbackAdapter() { 45 WQDay res;
44 46
45 @Override 47 if (old instanceof WQDay []) {
46 public Object computeAdvance( 48 res = ((WQDay [])old)[0];
47 CallContext context, 49 }
48 List<Facet> facets) 50 else {
49 { 51 res = winfo.getDurationCurveData();
50 WQDay res = winfo.getDurationCurveData(); 52 if (res == null) {
53 logger.debug("No results given.");
54 return null;
55 }
56 }
51 57
52 if (res == null) { 58 Object[] args = new Object[] {
53 logger.debug("No results given."); 59 winfo.getRiver().getName()
54 return null; 60 };
55 }
56 61
57 Object[] args = new Object[] { 62 String nameW = Resources.getMsg(
58 winfo.getRiver().getName() 63 context.getMeta(),
59 }; 64 "chart.duration.curve.curve.w",
65 "",
66 args);
60 67
61 String nameW = Resources.getMsg( 68 String nameQ = Resources.getMsg(
62 context.getMeta(), 69 context.getMeta(),
63 "chart.duration.curve.curve.w", 70 "chart.duration.curve.curve.q",
64 "", 71 "",
65 args); 72 args);
66 73
67 String nameQ = Resources.getMsg( 74 Facet w = new DurationCurveFacet(0, DURATION_W, nameW);
68 context.getMeta(), 75 Facet q = new DurationCurveFacet(0, DURATION_Q, nameQ);
69 "chart.duration.curve.curve.q",
70 "",
71 args);
72 76
73 Facet w = new DurationCurveFacet(0, DURATION_W, nameW); 77 facets.add(w);
74 Facet q = new DurationCurveFacet(0, DURATION_Q, nameQ); 78 facets.add(q);
75 79
76 facets.add(w); 80 return new WQDay[] { res };
77 facets.add(q);
78
79 return new WQDay[] { res };
80 }
81 };
82 } 81 }
83 } 82 }
84 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf-8 : 83 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf-8 :

http://dive4elements.wald.intevation.org