diff flys-artifacts/src/main/java/de/intevation/flys/artifacts/states/LocationDistanceSelect.java @ 687:06689035024c facets-slt

Added a compute() method to WINFOArtifact which acts as a dispatcher for different computations. It triggers a calculation based on ComputeCallbacks that are generated by the current states. flys-artifacts/branches/facets-slt@2127 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Ingo Weinzierl <ingo.weinzierl@intevation.de>
date Thu, 16 Jun 2011 07:50:56 +0000
parents 627be3ca1ab6
children f8ac04b2dbd0
line wrap: on
line diff
--- a/flys-artifacts/src/main/java/de/intevation/flys/artifacts/states/LocationDistanceSelect.java	Wed Jun 15 15:28:54 2011 +0000
+++ b/flys-artifacts/src/main/java/de/intevation/flys/artifacts/states/LocationDistanceSelect.java	Thu Jun 16 07:50:56 2011 +0000
@@ -1,5 +1,7 @@
 package de.intevation.flys.artifacts.states;
 
+import java.util.List;
+
 import org.apache.log4j.Logger;
 
 import org.w3c.dom.Element;
@@ -13,10 +15,13 @@
 
 import de.intevation.artifactdatabase.ProtocolUtils;
 import de.intevation.artifactdatabase.data.StateData;
+import de.intevation.artifactdatabase.state.Facet;
 
 import de.intevation.flys.model.River;
 
 import de.intevation.flys.artifacts.FLYSArtifact;
+import de.intevation.flys.artifacts.WINFOArtifact;
+import de.intevation.flys.artifacts.model.ComputeCallback;
 import de.intevation.flys.artifacts.model.RiverFactory;
 import de.intevation.flys.artifacts.resources.Resources;
 
@@ -290,5 +295,19 @@
 
         return values.toNativeArray();
     }
+
+
+    @Override
+    public ComputeCallback createComputeCallback(
+        String hash, FLYSArtifact flys)
+    {
+        final WINFOArtifact winfo = (WINFOArtifact) flys;
+
+        return new ComputeCallback() {
+            public Object compute(List<Facet> facets) {
+                return winfo.getDischargeCurveData();
+            }
+        };
+    }
 }
 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf-8 :

http://dive4elements.wald.intevation.org