comparison gnv-artifacts/src/main/java/de/intevation/gnv/transition/TransitionBase.java @ 101:e01c163ea5b0

Inputvalidation for String, Integer and Date Values added. gnv-artifacts/trunk@149 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Tim Englich <tim.englich@intevation.de>
date Tue, 29 Sep 2009 09:50:25 +0000
parents bb45c5097cb6
children 820238357bab
comparison
equal deleted inserted replaced
100:f07637f96312 101:e01c163ea5b0
33 import de.intevation.gnv.transition.describedata.NamedArrayList; 33 import de.intevation.gnv.transition.describedata.NamedArrayList;
34 import de.intevation.gnv.transition.describedata.NamedCollection; 34 import de.intevation.gnv.transition.describedata.NamedCollection;
35 import de.intevation.gnv.transition.describedata.SingleValueDescribeData; 35 import de.intevation.gnv.transition.describedata.SingleValueDescribeData;
36 import de.intevation.gnv.transition.exception.TransitionException; 36 import de.intevation.gnv.transition.exception.TransitionException;
37 import de.intevation.gnv.utils.ArtifactXMLUtilities; 37 import de.intevation.gnv.utils.ArtifactXMLUtilities;
38 import de.intevation.gnv.utils.InputValidator;
38 39
39 /** 40 /**
40 * @author Tim Englich <tim.englich@intevation.de> 41 * @author Tim Englich <tim.englich@intevation.de>
41 * 42 *
42 */ 43 */
182 */ 183 */
183 public void putInputData(Collection<InputData> inputData, String uuid) throws TransitionException { 184 public void putInputData(Collection<InputData> inputData, String uuid) throws TransitionException {
184 log.debug("TransitionBase.putInputData"); 185 log.debug("TransitionBase.putInputData");
185 if (inputData != null){ 186 if (inputData != null){
186 Iterator<InputData> it = inputData.iterator(); 187 Iterator<InputData> it = inputData.iterator();
188 InputValidator iv = new InputValidator();
187 while(it.hasNext()){ 189 while(it.hasNext()){
188 InputData tmpItem = it.next(); 190 InputData tmpItem = it.next();
189 InputValue inputValue = this.inputValues.get(tmpItem.getName()); 191 InputValue inputValue = this.inputValues.get(tmpItem.getName());
190 if (inputValue != null){ 192 if (inputValue != null){
191 if (this.inputData == null){ 193 if (this.inputData == null){
192 this.inputData = new HashMap<String,InputData>(inputData.size()); 194 this.inputData = new HashMap<String,InputData>(inputData.size());
193 } 195 }
194 this.setSelection(tmpItem); 196 boolean valid = iv.isInputValid(tmpItem.getValue(), inputValue.getType());
195 this.inputData.put(tmpItem.getName(),tmpItem); 197 if (valid){
198 this.setSelection(tmpItem);
199 this.inputData.put(tmpItem.getName(),tmpItem);
200 }else{
201 String errMsg = "Wrong input for "+tmpItem.getValue()+"is not an "+inputValue.getType()+" Value.";
202 log.warn(errMsg);
203 throw new TransitionException(errMsg);
204 }
196 205
197 }else{ 206 }else{
198 String errMsg = "No Inputvalue given for Inputdata "+ tmpItem.getName(); 207 String errMsg = "No Inputvalue given for Inputdata "+ tmpItem.getName();
199 log.warn(errMsg+ "Value will be ignored"); 208 log.warn(errMsg+ "Value will be ignored");
200 209

http://dive4elements.wald.intevation.org