Mercurial > dive4elements > river
diff flys-artifacts/src/main/java/de/intevation/flys/artifacts/states/StaticWQKmsState.java @ 2124:a202a9e048a5
Made StaticWQKmsArtifact a fully featured Artifact.
flys-artifacts/trunk@3694 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Felix Wolfsteller <felix.wolfsteller@intevation.de> |
---|---|
date | Tue, 17 Jan 2012 08:17:50 +0000 |
parents | |
children | d626ae185305 |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/flys-artifacts/src/main/java/de/intevation/flys/artifacts/states/StaticWQKmsState.java Tue Jan 17 08:17:50 2012 +0000 @@ -0,0 +1,140 @@ +package de.intevation.flys.artifacts.states; + +import java.util.List; + +import org.apache.log4j.Logger; + +import de.intevation.artifacts.CallContext; +import de.intevation.artifacts.CallMeta; + +import de.intevation.artifactdatabase.state.Facet; + +import de.intevation.flys.artifacts.FLYSArtifact; +import de.intevation.flys.artifacts.StaticWQKmsArtifact; + +import de.intevation.flys.artifacts.model.DataFacet; +import de.intevation.flys.artifacts.model.FacetTypes; +import de.intevation.flys.artifacts.model.WQKms; +import de.intevation.flys.artifacts.model.WQKmsFacet; + +import de.intevation.flys.artifacts.resources.Resources; + + +/** + * Only state of WQKmsArtifact. + */ +public class StaticWQKmsState +extends DefaultState +implements FacetTypes +{ + /** The logger that is used in this state. */ + private static Logger logger = Logger.getLogger(StaticWQKmsState.class); + + + /** + * From this state can not be continued. + */ + @Override + protected String getUIProvider() { + return "noinput"; + } + + + /** + * Compute, create Facets, do the same stuff as all the other states do. + */ + protected Object compute( + StaticWQKmsArtifact winfo, + CallMeta metaLocale, + String hash, + List<Facet> facets, + Object old + ) { + String id = getID(); + + WQKms res = old instanceof WQKms + ? (WQKms)old + : winfo.getWQKms(); + + WQKms wqkms = res; + + if (facets == null) { + return res; + } + + /* + * TODO: re-enable HEIGHTMARKS_POINTS-thing + + String name; + if (parts[0].equals(HEIGHTMARKS_POINTS)) { + name = HEIGHTMARKS_POINTS; + } + else { + name = STATIC_WQKMS; + } + */ + + String wkmsName = wqkms.getName(); + Facet qfacet = new WQKmsFacet( + STATIC_WQKMS_Q, + wkmsName + // TODO re-enable translations. + /* + Resources.getMsg( + metaLocale, + wkmsName, + wkmsName)*/); + facets.add(qfacet); + + wkmsName = "W (" + wkmsName + ")"; + + Facet wfacet = new WQKmsFacet( + STATIC_WQKMS_W, + wkmsName + /* + // TODO re-enable translations. + Resources.getMsg( + metaLocale, + wkmsName, + wkmsName)*/); + facets.add(wfacet); + + return res; + } + + + /** + * Get data, create the facets. + * + * @param context Ignored. + */ + @Override + public Object computeFeed( + FLYSArtifact artifact, + String hash, + CallContext context, + List<Facet> facets, + Object old + ) { + return compute((StaticWQKmsArtifact) artifact, context.getMeta(), + hash, facets, old); + } + + + /** + * Create the facets. + * @param context Ignored. + */ + @Override + public Object computeInit( + FLYSArtifact artifact, + String hash, + Object context, + CallMeta meta, + List<Facet> facets + ) { + return compute((StaticWQKmsArtifact) artifact, meta, hash, facets, + null); + } +} +// vim:set ts=4 sw=4 si et sta sts=4 fenc=utf-8 :