diff artifacts/src/main/java/org/dive4elements/river/artifacts/states/HistoricalDischargeComputeState.java @ 5914:1058b3436dad

D4E river artifacts: Removed historical discharge calculation from WINFO artifact and use access instead.
author Sascha L. Teichmann <teichmann@intevation.de>
date Tue, 07 May 2013 17:32:33 +0200
parents 59ff03ff48f1
children af13ceeba52a
line wrap: on
line diff
--- a/artifacts/src/main/java/org/dive4elements/river/artifacts/states/HistoricalDischargeComputeState.java	Tue May 07 12:47:05 2013 +0200
+++ b/artifacts/src/main/java/org/dive4elements/river/artifacts/states/HistoricalDischargeComputeState.java	Tue May 07 17:32:33 2013 +0200
@@ -13,16 +13,21 @@
 import java.util.List;
 
 import org.apache.log4j.Logger;
-import org.w3c.dom.Element;
 
 import org.dive4elements.artifactdatabase.state.Facet;
+
 import org.dive4elements.artifacts.Artifact;
 import org.dive4elements.artifacts.CallContext;
+
 import org.dive4elements.artifacts.common.utils.XMLUtils.ElementCreator;
+
 import org.dive4elements.river.artifacts.D4EArtifact;
-import org.dive4elements.river.artifacts.WINFOArtifact;
+
+import org.dive4elements.river.artifacts.access.HistoricalDischargeAccess.EvaluationMode;
+
 import org.dive4elements.river.artifacts.access.HistoricalDischargeAccess;
-import org.dive4elements.river.artifacts.access.HistoricalDischargeAccess.EvaluationMode;
+
+import org.dive4elements.river.artifacts.model.Calculation6;
 import org.dive4elements.river.artifacts.model.CalculationResult;
 import org.dive4elements.river.artifacts.model.DataFacet;
 import org.dive4elements.river.artifacts.model.FacetTypes;
@@ -36,9 +41,12 @@
 import org.dive4elements.river.artifacts.model.ReportFacet;
 import org.dive4elements.river.artifacts.model.WQKms;
 import org.dive4elements.river.artifacts.model.WQTimerange;
+
 import org.dive4elements.river.artifacts.resources.Resources;
+
 import org.dive4elements.river.model.TimeInterval;
 
+import org.w3c.dom.Element;
 
 /**
  * State to calculate historical discharge curves.
@@ -46,9 +54,9 @@
  * @author <a href="mailto:ingo.weinzierl@intevation.de">Ingo Weinzierl</a>
  */
 public class HistoricalDischargeComputeState
-extends    DefaultState
-implements FacetTypes {
-
+extends     DefaultState
+implements  FacetTypes
+{
     private static final Logger logger = Logger
         .getLogger(HistoricalDischargeComputeState.class);
 
@@ -67,10 +75,12 @@
         CallContext context, List<Facet> facets, Object old) {
         logger.debug("HistoricalDischargeComputeState.computeAdvance");
 
-        WINFOArtifact winfo = (WINFOArtifact) artifact;
+        HistoricalDischargeAccess access =
+            new HistoricalDischargeAccess(artifact);
 
-        CalculationResult res = old instanceof CalculationResult ? (CalculationResult) old
-            : winfo.getHistoricalDischargeData();
+        CalculationResult res = old instanceof CalculationResult
+            ? (CalculationResult)old
+            : new Calculation6(access).calculate();
 
         if (facets == null) {
             return res;
@@ -81,8 +91,6 @@
         }
 
         HistoricalDischargeData data = (HistoricalDischargeData) res.getData();
-        HistoricalDischargeAccess access = new HistoricalDischargeAccess(
-            artifact);
 
         WQTimerange[] wqts = (WQTimerange[]) data.getWQTimeranges();
         if (wqts != null && wqts.length > 0) {
@@ -103,8 +111,11 @@
         return res;
     }
 
-    protected void prepareFacets(List<Facet> facets, WQTimerange[] wqts,
-        HistoricalDischargeAccess access) {
+    protected void prepareFacets(
+        List<Facet>               facets,
+        WQTimerange[]             wqts,
+        HistoricalDischargeAccess access
+    ) {
         int i = 0;
 
         for (WQTimerange wqt : wqts) {

http://dive4elements.wald.intevation.org