diff flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/minfo/BedQualityResult.java @ 3867:d8c99ff18db8

Refactor MINFO bed quality resultsets and facets. flys-artifacts/trunk@5498 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Raimund Renkert <raimund.renkert@intevation.de>
date Mon, 17 Sep 2012 14:38:47 +0000
parents 5a8f8fd5310c
children 44e68dc1d87e
line wrap: on
line diff
--- a/flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/minfo/BedQualityResult.java	Mon Sep 17 13:58:37 2012 +0000
+++ b/flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/minfo/BedQualityResult.java	Mon Sep 17 14:38:47 2012 +0000
@@ -1,87 +1,67 @@
 package de.intevation.flys.artifacts.model.minfo;
 
-import gnu.trove.TDoubleArrayList;
-
 import java.io.Serializable;
+import java.util.LinkedList;
+import java.util.List;
 
 import de.intevation.flys.artifacts.model.DateRange;
 
-public class BedQualityResult implements Serializable {
+import gnu.trove.TDoubleArrayList;
 
-    public static enum DIAMETER_TYPE {
-        D90,
-        D84,
-        D80,
-        D75,
-        D70,
-        D60,
-        D50,
-        D40,
-        D30,
-        D25,
-        D20,
-        D16,
-        D10,
-        DMIN,
-        DMAX
-    }
+public class BedQualityResult
+implements Serializable
+{
 
-    protected DIAMETER_TYPE type;
-    protected TDoubleArrayList diameter;
-    protected TDoubleArrayList kms;
+    protected List<BedDiameterResult> bedResults;
+    protected List<BedloadDiameterResult> bedloadResults;
+    protected List<BedParametersResult> bedParameters;
     protected DateRange dateRange;
-    protected boolean empty;
 
     public BedQualityResult () {
-        empty = true;
-    }
+        bedResults = new LinkedList<BedDiameterResult>();
+        bedloadResults = new LinkedList<BedloadDiameterResult>();
+        bedParameters = new LinkedList<BedParametersResult>();
+    };
 
     public BedQualityResult (
-        String type,
-        TDoubleArrayList diameter,
-        TDoubleArrayList km,
+        List<BedDiameterResult> bedResults,
+        List<BedloadDiameterResult> bedloadResults,
+        List<BedParametersResult> bedParameters,
         DateRange range
     ) {
-        if (km.size() > 0) {
-            empty = false;
-        }
-        this.type = DIAMETER_TYPE.valueOf(type.toUpperCase());
-        this.diameter = diameter;
-        this.kms = km;
         this.dateRange = range;
+        this.bedResults = bedResults;
+        this.bedloadResults = bedloadResults;
+        this.bedParameters = bedParameters;
     }
 
-    public DIAMETER_TYPE getType() {
-        return this.type;
+    public BedParametersResult[] getParameters() {
+        return bedParameters.toArray(
+            new BedParametersResult[bedParameters.size()]);
     }
 
-    public TDoubleArrayList getKms() {
-        return this.kms;
+    public BedDiameterResult[] getBedResults() {
+        return bedResults.toArray(new BedDiameterResult[bedResults.size()]);
     }
 
-    public double getDiameter(int ndx) {
-        if (diameter != null) {
-            return this.diameter.get(ndx);
-        }
-        return Double.NaN;
+    public BedloadDiameterResult[] getBedloadResults() {
+        return bedloadResults.toArray(
+            new BedloadDiameterResult[bedloadResults.size()]);
+    }
+
+    public void add(BedloadDiameterResult result) {
+        bedloadResults.add(result);
+    }
+
+    public void add(BedDiameterResult result) {
+        bedResults.add(result);
+    }
+
+    public void add(BedParametersResult result) {
+        bedParameters.add(result);
     }
 
     public DateRange getDateRange() {
-        return this.dateRange;
-    }
-
-    public void setType(DIAMETER_TYPE type) {
-        this.type = type;
-    }
-
-    public boolean isEmpty() {
-        return empty;
-    }
-
-    public double[][] getDiameterData() {
-        return new double[][] {
-            kms.toNativeArray(),
-            diameter.toNativeArray()
-        };
+        return dateRange;
     }
 }

http://dive4elements.wald.intevation.org