diff flys-artifacts/src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java @ 1809:f6a190f6aaff

Give outputname to artifacts getInitialFacetActivity, generate second pair of MainvalueFacets for discharge curves. flys-artifacts/trunk@3138 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Felix Wolfsteller <felix.wolfsteller@intevation.de>
date Wed, 02 Nov 2011 11:21:57 +0000
parents 51e59f221333
children feef1121e800
line wrap: on
line diff
--- a/flys-artifacts/src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java	Wed Nov 02 11:15:00 2011 +0000
+++ b/flys-artifacts/src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java	Wed Nov 02 11:21:57 2011 +0000
@@ -31,6 +31,7 @@
 import de.intevation.flys.artifacts.model.CalculationResult;
 import de.intevation.flys.artifacts.model.CrossSectionFactory;
 import de.intevation.flys.artifacts.model.DischargeTables;
+import de.intevation.flys.artifacts.model.FacetTypes;
 import de.intevation.flys.artifacts.model.MainValuesFactory;
 import de.intevation.flys.artifacts.model.Segment;
 import de.intevation.flys.artifacts.model.WQKms;
@@ -72,7 +73,10 @@
  *
  * @author <a href="mailto:ingo.weinzierl@intevation.de">Ingo Weinzierl</a>
  */
-public class WINFOArtifact extends FLYSArtifact {
+public class WINFOArtifact
+extends      FLYSArtifact
+implements   FacetTypes
+{
 
     /** The logger for this class. */
     private static Logger logger = Logger.getLogger(WINFOArtifact.class);
@@ -1302,10 +1306,26 @@
      *
      * @param facetName name of the facet.
      * @param index     index of the facet.
+     * @return 0 if not active
      */
-    public int getInitialFacetActivity(String facetName, int index) {
-        return (facetName.startsWith("longitudinal_section")
-                && facetName.endsWith("q"))
+    @Override
+    public int getInitialFacetActivity(String outputName, String facetName, int index) {
+        String [] inactives = new String[] {
+                                            LONGITUDINAL_Q
+                                            };
+
+        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 Arrays.asList(inactives).contains(facetName)
                ? 0
                : 1;
     }

http://dive4elements.wald.intevation.org