comparison flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/CrossSectionWaterLineFacet.java @ 1975:b30e1710df1d

Server-side of interactive cross-section diagrams. flys-artifacts/trunk@3394 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Felix Wolfsteller <felix.wolfsteller@intevation.de>
date Tue, 13 Dec 2011 09:10:48 +0000
parents 26d7077e42d2
children bf62cc7052d4
comparison
equal deleted inserted replaced
1974:cdeb31ef20a1 1975:b30e1710df1d
1 package de.intevation.flys.artifacts.model; 1 package de.intevation.flys.artifacts.model;
2 2
3 import org.apache.log4j.Logger; 3 import org.apache.log4j.Logger;
4
5 import java.util.List;
6
7 import de.intevation.flys.model.CrossSectionLine;
4 8
5 import de.intevation.artifacts.Artifact; 9 import de.intevation.artifacts.Artifact;
6 import de.intevation.artifacts.CallContext; 10 import de.intevation.artifacts.CallContext;
7 11
8 import de.intevation.artifactdatabase.state.DefaultFacet; 12 import de.intevation.artifactdatabase.state.DefaultFacet;
9 import de.intevation.artifactdatabase.state.Facet; 13 import de.intevation.artifactdatabase.state.Facet;
14 import de.intevation.artifacts.DataProvider;
10 15
11 import de.intevation.flys.artifacts.WINFOArtifact; 16 import de.intevation.flys.artifacts.WINFOArtifact;
12 17
13 18
14 /** 19 /**
26 super(idx, CROSS_SECTION_WATER_LINE, description); 31 super(idx, CROSS_SECTION_WATER_LINE, description);
27 } 32 }
28 33
29 34
30 /** 35 /**
31 * Gets dummy data. 36 * Gets waterline (crossed with cross section) of waterlevel.
32 */ 37 */
33 public Object getData(Artifact artifact, CallContext context) { 38 public Object getData(Artifact artifact, CallContext context) {
34 logger.debug("Get data for cross section water line"); 39 logger.debug("Get data for cross section water line");
35 40
41 List<DataProvider> providers = context.
42 getDataProvider(CrossSectionFacet.BLACKBOARD_CS_MASTER_DATA);
43 if (providers.size() < 1) {
44 logger.warn("Could not find Cross-Section data provider.");
45 return new double[][] {};
46 }
47
48 Object crossSection = providers.get(0)
49 .provideData(CrossSectionFacet.BLACKBOARD_CS_MASTER_DATA, null, context);
50
36 WINFOArtifact winfo = (WINFOArtifact)artifact; 51 WINFOArtifact winfo = (WINFOArtifact)artifact;
37 52
38 return winfo.getWaterLines(this.getIndex()); 53 return winfo.getWaterLines(this.getIndex(), (CrossSectionLine) crossSection);
39 } 54 }
40 55
41 56
42 /** Do a deep copy. */ 57 /** Do a deep copy. */
43 @Override 58 @Override
44 public Facet deepCopy() { 59 public Facet deepCopy() {
45 CrossSectionWaterLineFacet copy = new CrossSectionWaterLineFacet(this.getIndex(), this.description); 60 CrossSectionWaterLineFacet copy = new CrossSectionWaterLineFacet(
61 this.getIndex(),
62 this.description);
46 copy.set(this); 63 copy.set(this);
47 return copy; 64 return copy;
48 } 65 }
49 } 66 }
50 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 : 67 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :
51

http://dive4elements.wald.intevation.org