Mercurial > dive4elements > river
view flys-artifacts/src/main/java/de/intevation/flys/artifacts/WaterlevelArtifact.java @ 3649:33bfc01410fb
Merged revisions 5375,5379,5382 via svnmerge from
file:///home/clients/bsh/bsh-generischer-viewer/Material/SVN/flys-artifacts/trunk
........
r5375 | ingo | 2012-09-07 11:26:45 +0200 (Fr, 07 Sep 2012) | 1 line
Tagged 'flys-artifacts' as 2.9
........
r5379 | rrenkert | 2012-09-07 13:58:41 +0200 (Fr, 07 Sep 2012) | 4 lines
Issue 791.
Add start km to data to compare reference and target km in next state.
........
r5382 | rrenkert | 2012-09-07 14:03:48 +0200 (Fr, 07 Sep 2012) | 3 lines
Set data for characteristic diameter for use in parameter matrix UI.
........
flys-artifacts/tags/2.9@5388 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Ingo Weinzierl <ingo.weinzierl@intevation.de> |
---|---|
date | Fri, 07 Sep 2012 13:12:08 +0000 |
parents | afc7bfb4800b |
children | 8483d190b2e7 |
line wrap: on
line source
package de.intevation.flys.artifacts; import de.intevation.artifactdatabase.state.DefaultFacet; import de.intevation.artifactdatabase.state.Facet; import de.intevation.artifactdatabase.state.FacetActivity; import de.intevation.artifacts.Artifact; import de.intevation.artifacts.ArtifactFactory; import de.intevation.artifacts.CallMeta; import de.intevation.flys.artifacts.states.DefaultState; import java.util.ArrayList; import java.util.List; import org.apache.log4j.Logger; import org.w3c.dom.Document; /** * Clone of an WINFOArtifact to expose exactly one waterlevel only. * All Facets of the "longitudinal_section" output will be added to the * "w_differences" output and filterFacets adjusted accordingly. * * @TODO Straighten inheritance-line (waterlevel-WINFO or vice versa). */ public class WaterlevelArtifact extends WINFOArtifact { /** The logger for this class. */ private static Logger logger = Logger.getLogger(WaterlevelArtifact.class); /** The name of the artifact. */ public static final String ARTIFACT_NAME = "waterlevel"; static { // TODO: Move to configuration. FacetActivity.Registry.getInstance() .register(ARTIFACT_NAME, FacetActivity.INACTIVE); } /** * The default constructor. */ public WaterlevelArtifact() { } /** * Setup and restate longitudinal_section filterfacets to apply to the * w_differences output, too. Also, for w_differences, add respective q- * filter facets. */ public void setup( String identifier, ArtifactFactory factory, Object context, CallMeta callMeta, Document data) { super.setup(identifier, factory, context, callMeta, data); // For w_differences, also allow q-facets. if(filterFacets != null) { List<Facet> list = new ArrayList<Facet>(); List<Facet> wlist = filterFacets.get("longitudinal_section"); for (Facet f: wlist) { if (!f.getName().equals("longitudinal_section.q")) { DefaultFacet df = new DefaultFacet(f.getIndex(), "longitudinal_section.q", ""); list.add(df); } } list.addAll(wlist); filterFacets.put("w_differences", list); } } /** * Clone important stuff of an WINFOArtifact. * @param artifact the WINFOArtifact to clone stuff from. */ protected void initialize( Artifact artifact, Object context, CallMeta meta) { WINFOArtifact winfo = (WINFOArtifact) artifact; this.data = winfo.cloneData(); logger.debug("Cloned data of winfo artifact."); // Statically add Facets. List<Facet> fs = new ArrayList<Facet>(); DefaultState state = (DefaultState) getCurrentState(context); state.computeInit(this, hash(), context, meta, fs); if (!fs.isEmpty()) { logger.debug("Facets to add in WaterlevelArtifact.initialize ."); facets.put(getCurrentStateId(), fs); } else { logger.debug("No facets to add in WaterlevelArtifact.initialize (" + state.getID() + ")."); } } /** * Returns the name of the concrete artifact. * * @return the name of the concrete artifact. */ public String getName() { return ARTIFACT_NAME; } } // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :