Mercurial > dive4elements > river
diff backend/src/main/java/org/dive4elements/river/importer/ImportRange.java @ 7221:70ab9e8cdefb double-precision
Range importer: Do not allow to set invalid a or b.
author | Tom Gottfried <tom@intevation.de> |
---|---|
date | Tue, 01 Oct 2013 18:32:01 +0200 |
parents | 3d83a4cf33ba |
children | 4b26fd60105f |
line wrap: on
line diff
--- a/backend/src/main/java/org/dive4elements/river/importer/ImportRange.java Fri Sep 27 17:45:18 2013 +0200 +++ b/backend/src/main/java/org/dive4elements/river/importer/ImportRange.java Tue Oct 01 18:32:01 2013 +0200 @@ -49,7 +49,7 @@ this.b = null; } else { - if (a.compareTo(b) == 1) { + if (a.compareTo(b) > 0) { BigDecimal t = a; a = b; b = t; } this.a = a; @@ -81,7 +81,12 @@ } public void setA(BigDecimal a) { - this.a = a; + if (this.b != null && a.compareTo(b) >= 0) { + throw new IllegalArgumentException("a (" + a + ") must be smaller than b (" + b + ")."); + } + else { + this.a = a; + } } public BigDecimal getB() { @@ -89,7 +94,12 @@ } public void setB(BigDecimal b) { - this.b = b; + if (b != null && b.compareTo(a) <= 0) { + throw new IllegalArgumentException("b (" + b + ") must be greater than a (" + a + ") or null."); + } + else { + this.b = b; + } } public Range getPeer(River river) {