Mercurial > dive4elements > river
diff flys-artifacts/src/main/java/de/intevation/flys/artifacts/WINFOArtifact.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 | fc351f12b906 |
children | c3cd414982fe |
line wrap: on
line diff
--- a/flys-artifacts/src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java Sat Jul 28 21:48:15 2012 +0000 +++ b/flys-artifacts/src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java Sun Jul 29 11:04:06 2012 +0000 @@ -2,6 +2,10 @@ import de.intevation.artifactdatabase.data.StateData; +import de.intevation.artifactdatabase.state.Facet; +import de.intevation.artifactdatabase.state.FacetActivity; + +import de.intevation.artifacts.Artifact; import de.intevation.artifacts.CallContext; import de.intevation.artifacts.common.utils.StringUtils; @@ -75,6 +79,33 @@ /** The default step width between the start end end kilometer. */ public static final double DEFAULT_KM_STEPS = 0.1; + private static final String [] INACTIVES = new String[] { + LONGITUDINAL_Q, + DURATION_Q + }; + + static { + // TODO: Move to configuration. + FacetActivity.Registry.getInstance().register( + ARTIFACT_NAME, + new FacetActivity() { + @Override + public boolean isInitialActive( + Artifact artifact, + Facet facet, + String outputName + ) { + String fname = facet.getName(); + if ((fname.equals(COMPUTED_DISCHARGE_MAINVALUES_Q) + || fname.equals(COMPUTED_DISCHARGE_MAINVALUES_W)) + && outputName.equals("computed_discharge_curve")) { + return false; + } + return !StringUtils.contains(fname, INACTIVES); + + } + }); + } /** * The default constructor. @@ -1144,40 +1175,6 @@ return values.toNativeArray(); } - - /** - * 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 facetName name of the facet. - * @param index index of the facet. - * @return 0 if not active - */ - @Override - public int getInitialFacetActivity(String outputName, String facetName, int index) { - - logger.debug("WINFOArtifact.active?: " - + outputName - + "/" - + facetName); - - if (facetName.equals(COMPUTED_DISCHARGE_MAINVALUES_Q) || - facetName.equals(COMPUTED_DISCHARGE_MAINVALUES_W) - && outputName.equals("computed_discharge_curve")) - { - return 0; - } - - return StringUtils.contains(facetName, INACTIVES) ? 0 : 1; - } - - private static final String [] INACTIVES = new String[] { - LONGITUDINAL_Q, - DURATION_Q - }; - - /** * Returns the WstValueTable of current river. */