diff flys-artifacts/src/main/java/de/intevation/flys/artifacts/states/ComputedDischargeCurveState.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 fdc898a134a7
children f8ac04b2dbd0
line wrap: on
line diff
--- a/flys-artifacts/src/main/java/de/intevation/flys/artifacts/states/ComputedDischargeCurveState.java	Wed Jun 15 15:28:54 2011 +0000
+++ b/flys-artifacts/src/main/java/de/intevation/flys/artifacts/states/ComputedDischargeCurveState.java	Thu Jun 16 07:50:56 2011 +0000
@@ -1,7 +1,15 @@
 package de.intevation.flys.artifacts.states;
 
+import java.util.List;
+
 import org.apache.log4j.Logger;
 
+import de.intevation.artifactdatabase.state.Facet;
+
+import de.intevation.flys.artifacts.FLYSArtifact;
+import de.intevation.flys.artifacts.WINFOArtifact;
+import de.intevation.flys.artifacts.model.ComputeCallback;
+
 /**
  * The final state that will be reached after the discharge curve calculation
  * mode has been chosen.
@@ -16,5 +24,19 @@
 
     public ComputedDischargeCurveState() {
     }
+
+
+    @Override
+    public ComputeCallback createComputeCallback(
+        String hash, FLYSArtifact flys)
+    {
+        final WINFOArtifact winfo = (WINFOArtifact) flys;
+
+        return new ComputeCallback() {
+            public Object compute(List<Facet> facets) {
+                return winfo.getComputedDischargeCurveData();
+            }
+        };
+    }
 }
 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf-8 :

http://dive4elements.wald.intevation.org