Mercurial > dive4elements > river
diff flys-artifacts/src/main/java/de/intevation/flys/artifacts/CrossSectionArtifact.java @ 3556:afc7bfb4800b
Use the new infrastructure to figure out if a facet should
be initially active or not.
flys-artifacts/trunk@5152 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Sascha L. Teichmann <sascha.teichmann@intevation.de> |
---|---|
date | Sun, 29 Jul 2012 11:04:06 +0000 |
parents | b0ba96bbf01d |
children | c3cd414982fe |
line wrap: on
line diff
--- a/flys-artifacts/src/main/java/de/intevation/flys/artifacts/CrossSectionArtifact.java Sat Jul 28 21:48:15 2012 +0000 +++ b/flys-artifacts/src/main/java/de/intevation/flys/artifacts/CrossSectionArtifact.java Sun Jul 29 11:04:06 2012 +0000 @@ -24,6 +24,7 @@ import de.intevation.flys.artifacts.states.StaticState; import de.intevation.artifactdatabase.state.Facet; +import de.intevation.artifactdatabase.state.FacetActivity; import de.intevation.artifactdatabase.state.State; import de.intevation.flys.utils.FLYSUtils; @@ -64,6 +65,26 @@ private static final Logger logger = Logger.getLogger(CrossSectionArtifact.class); + static { + // TODO: Move to configuration. + FacetActivity.Registry.getInstance().register( + CS_ARTIFACT_NAME, + new FacetActivity() { + @Override + public boolean isInitialActive( + Artifact artifact, + Facet facet, + String outputName + ) { + if (artifact instanceof FLYSArtifact) { + FLYSArtifact flys = (FLYSArtifact)artifact; + String data = flys.getDataAsString(DATA_IS_NEWEST); + return data != null && data.equals("1"); + } + return false; + } + }); + } /** Return given name. */ @Override @@ -320,22 +341,5 @@ return FastCrossSectionLineFactory .getCrossSectionLine(crossSection, km); } - - - /** - * Determines Facets initial disposition regarding activity (think of - * selection in Client ThemeList GUI). This will be checked one time - * when the facet enters a collections describe document. - * - * @param outputName Ignored. - * @param facetName Ignored. - * @param index Ignored. - * @return 0 if not active - */ - @Override - public int getInitialFacetActivity(String outputName, String facetName, int index) { - return (getDataAsString(DATA_IS_NEWEST) != null - && getDataAsString(DATA_IS_NEWEST).equals("1")) ? 1 : 0; - } } // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :