diff artifacts/src/main/java/org/dive4elements/river/artifacts/states/fixation/FunctionSelect.java @ 9274:1c8eeaf6031f

bundu.wst workflow
author gernotbelger
date Thu, 19 Jul 2018 17:33:24 +0200
parents af13ceeba52a
children
line wrap: on
line diff
--- a/artifacts/src/main/java/org/dive4elements/river/artifacts/states/fixation/FunctionSelect.java	Thu Jul 19 17:32:27 2018 +0200
+++ b/artifacts/src/main/java/org/dive4elements/river/artifacts/states/fixation/FunctionSelect.java	Thu Jul 19 17:33:24 2018 +0200
@@ -10,14 +10,16 @@
 
 import java.util.Collection;
 
-import org.w3c.dom.Element;
-
+import org.dive4elements.artifactdatabase.data.StateData;
 import org.dive4elements.artifacts.Artifact;
 import org.dive4elements.artifacts.CallContext;
 import org.dive4elements.artifacts.common.utils.XMLUtils;
+import org.dive4elements.river.artifacts.bundu.BUNDUArtifact;
 import org.dive4elements.river.artifacts.math.fitting.Function;
 import org.dive4elements.river.artifacts.math.fitting.FunctionFactory;
 import org.dive4elements.river.artifacts.states.DefaultState;
+import org.dive4elements.river.artifacts.uinfo.salix.ScenarioTypeState;
+import org.w3c.dom.Element;
 
 /**
  * @author <a href="mailto:raimund.renkert@intevation.de">Raimund Renkert</a>
@@ -36,25 +38,31 @@
     }
 
     @Override
-    protected Element[] createItems(
-        XMLUtils.ElementCreator ec,
-        Artifact                artifact,
-        String                  name,
-        CallContext             context)
-    {
-        FunctionFactory ff = FunctionFactory.getInstance();
-        Collection<Function> fc = ff.getFunctions();
-        Element[] functions = new Element[fc.size()];
+    protected Element[] createItems(final XMLUtils.ElementCreator ec, final Artifact artifact, final String name, final CallContext context) {
+        final FunctionFactory ff = FunctionFactory.getInstance();
+        final Collection<Function> fc = ff.getFunctions();
+        final Element[] functions = new Element[fc.size()];
 
         int j = 0;
-        for (Function f: fc) {
-            String n = f.getName();
-            String d = f.getDescription();
-            functions[j] = createItem(ec, new String[] {d, n});
+        for (final Function f : fc) {
+            final String n = f.getName();
+            final String d = f.getDescription();
+            functions[j] = createItem(ec, new String[] { d, n });
             j++;
         }
 
         return functions;
     }
+
+    @Override
+    protected Element createData(final XMLUtils.ElementCreator cr, final Artifact artifact, final StateData data, final CallContext context) {
+        if (artifact instanceof BUNDUArtifact) {
+            if (((BUNDUArtifact) artifact).getCurrentStateId().equals("state.bundu.wst.load.function")) {
+                return ScenarioTypeState.changeHeaderForCurrentState("state.bundu.wst.function", data.getName(), cr, context);
+            }
+
+        }
+        return super.createData(cr, artifact, data, context);
+    }
 }
 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf-8 :

http://dive4elements.wald.intevation.org