Mercurial > dive4elements > river
comparison artifacts/src/main/java/org/dive4elements/river/artifacts/states/WQFixing.java @ 6062:1a169e10c0f3 3.0.5
Add WQFixing sanity check.
Just ensure that values are > 0
author | Andre Heinecke <aheinecke@intevation.de> |
---|---|
date | Wed, 22 May 2013 18:32:51 +0200 |
parents | 0a200ba54461 |
children | e4606eae8ea5 |
comparison
equal
deleted
inserted
replaced
6061:e9a76ffa0f9a | 6062:1a169e10c0f3 |
---|---|
6 * documentation coming with Dive4Elements River for details. | 6 * documentation coming with Dive4Elements River for details. |
7 */ | 7 */ |
8 package org.dive4elements.river.artifacts.states; | 8 package org.dive4elements.river.artifacts.states; |
9 | 9 |
10 import org.dive4elements.artifacts.Artifact; | 10 import org.dive4elements.artifacts.Artifact; |
11 import org.dive4elements.river.artifacts.D4EArtifact; | |
12 import org.dive4elements.river.artifacts.model.RangeWithValues; | |
11 | 13 |
12 import org.apache.log4j.Logger; | 14 import org.apache.log4j.Logger; |
13 | 15 |
14 /** | 16 /** |
15 * State to input W/Q data for fixings | 17 * State to input W/Q data for fixings |
18 public class WQFixing extends WQAdapted { | 20 public class WQFixing extends WQAdapted { |
19 | 21 |
20 /** The logger used in this state.*/ | 22 /** The logger used in this state.*/ |
21 private static Logger logger = Logger.getLogger(WQFixing.class); | 23 private static Logger logger = Logger.getLogger(WQFixing.class); |
22 | 24 |
25 /** Simple sanity check if values are positive numbers **/ | |
23 @Override | 26 @Override |
24 public boolean validate(Artifact artifact) | 27 public boolean validate(Artifact artifact) |
25 throws IllegalArgumentException | 28 throws IllegalArgumentException |
26 { | 29 { |
27 logger.debug("WQFixing.validate"); | 30 logger.debug("WQFixing.validate"); |
28 // A check for positive values is already done by the client | 31 |
29 // all positive values are valid | 32 RangeWithValues[] rwvs = extractInput(getData((D4EArtifact) artifact, "wq_values")); |
33 | |
34 if (rwvs == null) { | |
35 throw new IllegalArgumentException("error_missing_wq_data"); | |
36 } | |
37 | |
38 for (RangeWithValues rwv: rwvs) { | |
39 double[] values = rwv.getValues(); | |
40 for (double val: values) { | |
41 if (val <= 0) { | |
42 throw new IllegalArgumentException("error_validate_positive"); | |
43 } | |
44 } | |
45 } | |
46 | |
30 return true; | 47 return true; |
31 } | 48 } |
32 | 49 |
33 @Override | 50 @Override |
34 protected String getUIProvider() { | 51 protected String getUIProvider() { |