Mercurial > dive4elements > river
view flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/WaterlevelFacet.java @ 2089:0da8874bd378
Added initial state to map artifact to be able to advance and step back.
The map artifact overrides describe() to have the complete UI information in the
describe response document.
flys-artifacts/trunk@3613 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Raimund Renkert <raimund.renkert@intevation.de> |
---|---|
date | Fri, 06 Jan 2012 12:02:10 +0000 |
parents | 9d79f6ceefca |
children | 81312f84689a |
line wrap: on
line source
package de.intevation.flys.artifacts.model; import org.apache.log4j.Logger; import de.intevation.artifacts.Artifact; import de.intevation.artifacts.CallContext; import de.intevation.artifactdatabase.state.Facet; import de.intevation.flys.artifacts.WINFOArtifact; import de.intevation.flys.artifacts.states.DefaultState.ComputeType; /** * Facet of a Waterlevel (WQKms). */ public class WaterlevelFacet extends BlackboardDataFacet { private static Logger logger = Logger.getLogger(WaterlevelFacet.class); protected ComputeType type; protected String stateID; protected String hash; public WaterlevelFacet(int index, String name, String description) { this(index, name, description, ComputeType.ADVANCE, null, null); } public WaterlevelFacet() { } public WaterlevelFacet( int index, String name, String description, ComputeType type, String stateID, String hash ) { super(index, name, description); this.type = type; this.stateID = stateID; this.hash = hash; } /** * Get waterlevel data. * @return a WQKms at given index. */ public Object getData(Artifact artifact, CallContext context) { logger.debug("Get data for waterlevels at index: " + index); WINFOArtifact winfo = (WINFOArtifact)artifact; CalculationResult res = (CalculationResult) winfo.compute(context, hash, stateID, type, false); WQKms [] wqkms = (WQKms [])res.getData(); return wqkms[index]; } /** Copy deeply. */ @Override public Facet deepCopy() { WaterlevelFacet copy = new WaterlevelFacet(); copy.set(this); copy.type = type; copy.stateID = stateID; copy.hash = hash; return copy; } } // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :