diff flys-artifacts/src/main/java/de/intevation/flys/artifacts/states/LocationDistanceSelect.java @ 624:929137ee8154

ISSUE-62 (part I/II) States are no longer filled with data - if a state needs user input, it needs to query the owner artifact. flys-artifacts/trunk@1982 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Ingo Weinzierl <ingo.weinzierl@intevation.de>
date Mon, 23 May 2011 15:11:55 +0000
parents c21fb8de54f8
children 833290f16f09
line wrap: on
line diff
--- a/flys-artifacts/src/main/java/de/intevation/flys/artifacts/states/LocationDistanceSelect.java	Mon May 23 14:32:17 2011 +0000
+++ b/flys-artifacts/src/main/java/de/intevation/flys/artifacts/states/LocationDistanceSelect.java	Mon May 23 15:11:55 2011 +0000
@@ -1,7 +1,5 @@
 package de.intevation.flys.artifacts.states;
 
-import java.util.Map;
-
 import org.apache.log4j.Logger;
 
 import org.w3c.dom.Element;
@@ -140,9 +138,9 @@
 
     protected double[] getMinMaxDistance(Artifact artifact) {
         FLYSArtifact flysArtifact = (FLYSArtifact) artifact;
-        StateData    data         = flysArtifact.getData("river");
+        StateData    data         = getData(flysArtifact, "river");
 
-        String name = (String) data.getValue();
+        String name = data != null ? (String) data.getValue() : "";
 
         logger.debug("Search for the min/max distances of '" + name + "'");
 
@@ -158,11 +156,15 @@
     {
         logger.debug("LocationDistanceSelect.validate");
 
-        Map<String, StateData> data = getData();
+        FLYSArtifact flys = (FLYSArtifact) artifact;
 
-        String fromStr = (String) data.get(FROM).getValue();
-        String toStr   = (String) data.get(TO).getValue();
-        String stepStr = (String) data.get(STEP).getValue();
+        StateData dFrom = getData(flys, FROM);
+        StateData dTo   = getData(flys, TO);
+        StateData dStep = getData(flys, STEP);
+
+        String fromStr = dFrom != null ? (String) dFrom.getValue() : null;
+        String toStr   = dTo != null ? (String) dTo.getValue() : null;
+        String stepStr = dStep != null ? (String) dStep.getValue() : null;
 
         if (fromStr == null || toStr == null || stepStr == null) {
             throw new IllegalArgumentException("error_empty_state");

http://dive4elements.wald.intevation.org