changeset 4233:d952372e7083

Added getQs() and getWs() to HistoricalDischargeAccess class and added some Javadoc to its methods.
author Ingo Weinzierl <ingo.weinzierl@intevation.de>
date Wed, 24 Oct 2012 08:04:20 +0200
parents b3aa91e45010
children 640adb7bced5
files flys-artifacts/src/main/java/de/intevation/flys/artifacts/access/HistoricalDischargeAccess.java
diffstat 1 files changed, 63 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/flys-artifacts/src/main/java/de/intevation/flys/artifacts/access/HistoricalDischargeAccess.java	Wed Oct 24 07:25:35 2012 +0200
+++ b/flys-artifacts/src/main/java/de/intevation/flys/artifacts/access/HistoricalDischargeAccess.java	Wed Oct 24 08:04:20 2012 +0200
@@ -13,23 +13,43 @@
     }
 
     public static final String DATA_EVALUATION_TIME = "year_range";
+    public static final String DATA_EVALUATION_MODE = "historical_mode";
+    public static final String DATA_INPUT_VALUES = "historical_values";
 
     private Timerange evaluationTimerange;
     private EvaluationMode evaluationMode;
 
+    private double[] qs;
+    private double[] ws;
+
     public HistoricalDischargeAccess(FLYSArtifact artifact) {
         super(artifact);
     }
 
+    /**
+     * This method returns the evaluation mode. The evaluation mode W is set, if
+     * the <b>DATA_EVALUATION_MODE</b> is 0. Otherwise, the evaluation mode Q is
+     * set.
+     * 
+     * @return EvaluationMode.W if the parameter <i>historical_mode</i> is set
+     *         to 0, otherwise EvaluationMode.Q.
+     */
     public EvaluationMode getEvaluationMode() {
         if (evaluationMode == null) {
-            int mode = getInteger("historical_mode");
+            int mode = getInteger(DATA_EVALUATION_MODE);
             evaluationMode = mode == 0 ? EvaluationMode.W : EvaluationMode.Q;
         }
 
         return evaluationMode;
     }
 
+    /**
+     * This method returns the time range specified by <i>year_range</i>
+     * parameter. This parameter has to be a string that consists of two long
+     * values (time millis since 1970) separated by a ';'.
+     * 
+     * @return the evaluation time range specified by <i>year_range</i>.
+     */
     public Timerange getEvaluationTimerange() {
         if (evaluationTimerange == null) {
             long[] startend = getLongArray(DATA_EVALUATION_TIME);
@@ -44,4 +64,46 @@
 
         return evaluationTimerange;
     }
+
+    /**
+     * This method returns the input Q values if the evaluation mode Q is set.
+     * Otherwise, this method will return a double array of length 0. The values
+     * returned by this method are extracted from string parameter
+     * <i>historical_values</i>.
+     * 
+     * @return the input Q values or a double array of length 0.
+     */
+    public double[] getQs() {
+        if (qs == null) {
+            if (getEvaluationMode() == EvaluationMode.Q) {
+                qs = getDoubleArray(DATA_INPUT_VALUES);
+            }
+            else {
+                qs = new double[0];
+            }
+        }
+
+        return qs;
+    }
+
+    /**
+     * This method returns the input W values if the evaluation mode W is set.
+     * Otherwise, this method will return a double array of length 0. The values
+     * returned by this method are extracted from string parameter
+     * <i>historical_values</i>.
+     * 
+     * @return the input W values or a double array of length 0.
+     */
+    public double[] getWs() {
+        if (ws == null) {
+            if (getEvaluationMode() == EvaluationMode.W) {
+                ws = getDoubleArray(DATA_INPUT_VALUES);
+            }
+            else {
+                ws = new double[0];
+            }
+        }
+
+        return ws;
+    }
 }

http://dive4elements.wald.intevation.org