comparison flys-artifacts/src/main/java/de/intevation/flys/artifacts/states/ComputedDischargeCurveState.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.FacetTypes; 13 import de.intevation.flys.artifacts.model.FacetTypes;
16 import de.intevation.flys.artifacts.model.WaterlevelFacet; 14 import de.intevation.flys.artifacts.model.WaterlevelFacet;
17 import de.intevation.flys.artifacts.model.WQKms; 15 import de.intevation.flys.artifacts.model.WQKms;
18 import de.intevation.flys.artifacts.resources.Resources; 16 import de.intevation.flys.artifacts.resources.Resources;
19 17
34 public ComputedDischargeCurveState() { 32 public ComputedDischargeCurveState() {
35 } 33 }
36 34
37 35
38 @Override 36 @Override
39 public ComputeCallback createComputeCallback( 37 public Object computeAdvance(
40 String hash, FLYSArtifact flys) 38 FLYSArtifact artifact,
41 { 39 String hash,
42 final WINFOArtifact winfo = (WINFOArtifact) flys; 40 CallContext context,
41 List<Facet> facets,
42 Object old
43 ) {
44 WINFOArtifact winfo = (WINFOArtifact)artifact;
43 45
44 return new ComputeCallbackAdapter() { 46 WQKms res;
45 47
46 @Override 48 if (old instanceof WQKms []) {
47 public Object computeAdvance( 49 res = ((WQKms [])old)[0];
48 CallContext context, 50 }
49 List<Facet> facets) 51 else {
50 { 52 res = winfo.getComputedDischargeCurveData();
51 WQKms res = winfo.getComputedDischargeCurveData();
52 53
53 if (res == null) { 54 if (res == null) {
54 logger.debug("No results given."); 55 logger.debug("No results given.");
55 return null; 56 return null;
56 } 57 }
58 }
57 59
58 Object[] args = new Object[] { 60 Object[] args = new Object[] {
59 winfo.getRiver().getName(), 61 winfo.getRiver().getName(),
60 res.getName() 62 res.getName()
61 }; 63 };
62 64
63 String name = Resources.getMsg( 65 String name = Resources.getMsg(
64 context.getMeta(), 66 context.getMeta(),
65 "chart.computed.discharge.curve.curve.label", 67 "chart.computed.discharge.curve.curve.label",
66 "", 68 "",
67 args); 69 args);
68 70
69 Facet q = new WaterlevelFacet(0, COMPUTED_DISCHARGE_Q, name); 71 Facet q = new WaterlevelFacet(0, COMPUTED_DISCHARGE_Q, name);
70 72
71 facets.add(q); 73 facets.add(q);
72 74
73 return new WQKms[] { res }; 75 return new WQKms[] { res };
74 }
75 };
76 } 76 }
77 } 77 }
78 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf-8 : 78 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf-8 :

http://dive4elements.wald.intevation.org