diff flys-artifacts/src/main/java/de/intevation/flys/artifacts/states/fixation/FixationCompute.java @ 3028:77b5f5a26700

Added facets for fix analysis. flys-artifacts/trunk@4597 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Raimund Renkert <raimund.renkert@intevation.de>
date Wed, 06 Jun 2012 08:07:32 +0000
parents 0abdede5a0b8
children b388d888330d
line wrap: on
line diff
--- a/flys-artifacts/src/main/java/de/intevation/flys/artifacts/states/fixation/FixationCompute.java	Tue Jun 05 17:17:26 2012 +0000
+++ b/flys-artifacts/src/main/java/de/intevation/flys/artifacts/states/fixation/FixationCompute.java	Wed Jun 06 08:07:32 2012 +0000
@@ -14,6 +14,14 @@
 
 import de.intevation.flys.artifacts.model.fixings.FixCalculation;
 
+import de.intevation.flys.artifacts.model.fixings.FixAvSectorFacet;
+import de.intevation.flys.artifacts.model.fixings.FixEventsFacet;
+import de.intevation.flys.artifacts.model.fixings.FixOutlierFacet;
+import de.intevation.flys.artifacts.model.fixings.FixWQCurveFacet;
+
+
+import de.intevation.flys.artifacts.model.fixings.DateRange;
+
 import de.intevation.flys.artifacts.states.DefaultState;
 
 import java.util.List;
@@ -50,13 +58,13 @@
 
         CalculationResult res;
 
+        FixationArtifactAccess access =
+            new FixationArtifactAccess(artifact);
+
         if (old instanceof CalculationResult) {
             res = (CalculationResult)old;
         }
         else {
-            FixationArtifactAccess access =
-                new FixationArtifactAccess(artifact);
-
             FixCalculation calc =
                 new FixCalculation(access);
 
@@ -73,6 +81,29 @@
         facets.add(
             new DataFacet(CSV, "CSV data", ComputeType.ADVANCE, hash, id));
 
+        int count = access.getAnalysisPeriods().length;
+        for (int i = 0; i < count; i++) {
+            DateRange period = access.getAnalysisPeriods()[i];
+            for (int j = access.getQSectorStart().intValue();
+                 j < access.getQSectorEnd().intValue();
+                 j++) {
+                //TODO: replace j with q sector string.
+                String description = j + ": " +
+                                     period.getFrom().toString() + " - " +
+                                     period.getTo().toString();
+                facets.add(
+                    new FixAvSectorFacet(j - access.getQSectorStart().intValue(),
+                                         description));
+            }
+            String eventDesc = period.getFrom().toString() +
+                               " - " +
+                               period.getTo().toString();
+            facets.add(new FixEventsFacet(i, eventDesc));
+        }
+        facets.add(new FixEventsFacet(0, "Referenceperiod"));
+        facets.add(new FixWQCurveFacet("W/Q"));
+        facets.add(new FixOutlierFacet("Outlier"));
+
         return res;
     }
 }

http://dive4elements.wald.intevation.org