Mercurial > dive4elements > river
diff artifacts/src/main/java/org/dive4elements/river/artifacts/states/StaticState.java @ 5838:5aa05a7a34b7
Rename modules to more fitting names.
author | Sascha L. Teichmann <teichmann@intevation.de> |
---|---|
date | Thu, 25 Apr 2013 15:23:37 +0200 |
parents | flys-artifacts/src/main/java/org/dive4elements/river/artifacts/states/StaticState.java@bd047b71ab37 |
children | 4897a58c8746 |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/artifacts/src/main/java/org/dive4elements/river/artifacts/states/StaticState.java Thu Apr 25 15:23:37 2013 +0200 @@ -0,0 +1,134 @@ +package org.dive4elements.river.artifacts.states; + +import java.util.List; + +import org.apache.log4j.Logger; + +import org.dive4elements.river.artifacts.model.FacetTypes; + +import org.dive4elements.artifactdatabase.state.Facet; +import org.dive4elements.artifactdatabase.state.DefaultOutput; +import org.dive4elements.artifactdatabase.state.Output; + +import org.dive4elements.river.artifacts.FLYSArtifact; + +import org.dive4elements.artifacts.CallContext; +import org.dive4elements.artifacts.CallMeta; + +/** + * Yet, a non-abstract DefaultState. + */ +public class StaticState +extends DefaultState +implements FacetTypes +{ + /** The logger that is used in this state. */ + private static final Logger logger = Logger.getLogger(StaticState.class); + + private static String uiprovider; + + + public StaticState() { + super(); + } + + /** + * Trivial constructor, sets id and description. + * @param id String used for both id and description. + */ + public StaticState(String id) { + this(id, id); + } + + + public StaticState(String id, String description) { + super(); + setID(id); + setDescription(description); + } + + public void addDefaultChartOutput(String nameDesc, List<Facet> facets) { + DefaultOutput output = new DefaultOutput(nameDesc, + nameDesc, "image/png", facets, "chart"); + getOutputs().add(output); + } + + public static void addDefaultChartOutput( + DefaultState state, + String nameDesc, + List<Facet> facets + ) { + DefaultOutput output = new DefaultOutput(nameDesc, + nameDesc, "image/png", facets, "chart"); + state.getOutputs().add(output); + } + + + /** + * Do nothing (override to include your logic). + * @param facets List of facets (to add to). + */ + public Object staticCompute(List<Facet> facets, FLYSArtifact artifact) { + return staticCompute(facets); + } + + public Object staticCompute(List<Facet> facets) { + return null; + } + + + /** Call staticCompute to allow easy adjustments. */ + @Override + public Object computeAdvance( + FLYSArtifact artifact, + String hash, + CallContext context, + List<Facet> facets, + Object old + ) { + return staticCompute(facets, artifact); + } + + + /** Call staticCompute to allow easy adjustments. */ + @Override + public Object computeFeed( + FLYSArtifact artifact, + String hash, + CallContext context, + List<Facet> facets, + Object old + ) { + return staticCompute(facets, artifact); + } + + + /** Call staticCompute to allow easy adjustments. */ + @Override + public Object computeInit( + FLYSArtifact artifact, + String hash, + Object context, + CallMeta meta, + List<Facet> facets + ) { + return staticCompute(facets, artifact); + } + + public void addOutput(Output out) { + super.addOutput(out); + } + + @Override + protected String getUIProvider() { + return this.uiprovider; + } + + /** + * Allow to set the uiprovider for displaying the static data + */ + public void setUIProvider(String uiprovider) { + this.uiprovider = uiprovider; + } +} +// vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :