You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@turbine.apache.org by se...@apache.org on 2003/09/11 11:53:14 UTC
cvs commit: jakarta-turbine-2/src/java/org/apache/turbine/services/intake/validator DateStringValidator.java IntegerValidator.java BigDecimalValidator.java LongValidator.java DoubleValidator.java ShortValidator.java StringValidator.java DefaultValidator.java BooleanValidator.java FloatValidator.java
seade 2003/09/11 02:53:14
Modified: src/java/org/apache/turbine/services/intake/validator
DateStringValidator.java IntegerValidator.java
BigDecimalValidator.java LongValidator.java
DoubleValidator.java ShortValidator.java
StringValidator.java DefaultValidator.java
BooleanValidator.java FloatValidator.java
Log:
Submitted by: J�rgen Hoffmann
Reviewed by: Scott Eade
Fixes the intake validators so that validation halts when when the required rule has a value of false and nothing has been entered.
I also changed DefaultValidator so that a minLength > 0 does not equate to required = true - IMHO the minLength should only apply when a value is required.
Thanks J�rgen.
Revision Changes Path
1.8 +12 -8 jakarta-turbine-2/src/java/org/apache/turbine/services/intake/validator/DateStringValidator.java
Index: DateStringValidator.java
===================================================================
RCS file: /home/cvs/jakarta-turbine-2/src/java/org/apache/turbine/services/intake/validator/DateStringValidator.java,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -r1.7 -r1.8
--- DateStringValidator.java 19 Jun 2003 16:55:17 -0000 1.7
+++ DateStringValidator.java 11 Sep 2003 09:53:14 -0000 1.8
@@ -87,6 +87,7 @@
* @author <a href="mailto:jmcnally@collab.net">John McNally</a>
* @author <a href="mailto:quintonm@bellsouth.net">Quinton McCombs</a>
* @author <a href="mailto:Colin.Chalmers@maxware.nl">Colin Chalmers</a>
+ * @author <a href="mailto:jh@byteaction.de">Jürgen Hoffmann</a>
* @version $Id$
*/
public class DateStringValidator
@@ -193,14 +194,17 @@
{
super.assertValidity(testValue);
- try
+ if ((required) || ((testValue != null) && (testValue.length() > 0)))
{
- parse(testValue);
- }
- catch (ParseException e)
- {
- errorMessage = dateFormatMessage;
- throw new ValidationException(dateFormatMessage);
+ try
+ {
+ parse(testValue);
+ }
+ catch (ParseException e)
+ {
+ errorMessage = dateFormatMessage;
+ throw new ValidationException(dateFormatMessage);
+ }
}
}
1.9 +24 -20 jakarta-turbine-2/src/java/org/apache/turbine/services/intake/validator/IntegerValidator.java
Index: IntegerValidator.java
===================================================================
RCS file: /home/cvs/jakarta-turbine-2/src/java/org/apache/turbine/services/intake/validator/IntegerValidator.java,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -r1.8 -r1.9
--- IntegerValidator.java 19 Jun 2003 16:55:17 -0000 1.8
+++ IntegerValidator.java 11 Sep 2003 09:53:14 -0000 1.9
@@ -72,6 +72,7 @@
*
* @author <a href="mailto:jmcnally@collab.net">John McNally</a>
* @author <a href="mailto:Colin.Chalmers@maxware.nl">Colin Chalmers</a>
+ * @author <a href="mailto:jh@byteaction.de">Jürgen Hoffmann</a>
* @version $Id$
*/
public class IntegerValidator
@@ -144,26 +145,29 @@
{
super.assertValidity(testValue);
- int i = 0;
- try
+ if ((required) || ((testValue != null) && (testValue.length() > 0)))
{
- i = Integer.parseInt(testValue);
- }
- catch (RuntimeException e)
- {
- errorMessage = invalidNumberMessage;
- throw new ValidationException(invalidNumberMessage);
- }
-
- if (i < minValue)
- {
- errorMessage = minValueMessage;
-
- }
- if (i > maxValue)
- {
- errorMessage = maxValueMessage;
- throw new ValidationException(maxValueMessage);
+ int i = 0;
+ try
+ {
+ i = Integer.parseInt(testValue);
+ }
+ catch (RuntimeException e)
+ {
+ errorMessage = invalidNumberMessage;
+ throw new ValidationException(invalidNumberMessage);
+ }
+
+ if (i < minValue)
+ {
+ errorMessage = minValueMessage;
+ throw new ValidationException(minValueMessage);
+ }
+ if (i > maxValue)
+ {
+ errorMessage = maxValueMessage;
+ throw new ValidationException(maxValueMessage);
+ }
}
}
1.3 +24 -20 jakarta-turbine-2/src/java/org/apache/turbine/services/intake/validator/BigDecimalValidator.java
Index: BigDecimalValidator.java
===================================================================
RCS file: /home/cvs/jakarta-turbine-2/src/java/org/apache/turbine/services/intake/validator/BigDecimalValidator.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- BigDecimalValidator.java 19 Jun 2003 16:55:17 -0000 1.2
+++ BigDecimalValidator.java 11 Sep 2003 09:53:14 -0000 1.3
@@ -73,6 +73,7 @@
*
* @author <a href="mailto:jmcnally@collab.net">John McNally</a>
* @author <a href="mailto:Colin.Chalmers@maxware.nl">Colin Chalmers</a>
+ * @author <a href="mailto:jh@byteaction.de">Jürgen Hoffmann</a>
* @version $Id$
*/
public class BigDecimalValidator
@@ -142,26 +143,29 @@
{
super.assertValidity(testValue);
- BigDecimal bd = null;
- try
+ if ((required) || ((testValue != null) && (testValue.length() > 0)))
{
- bd = new BigDecimal(testValue);
- }
- catch (RuntimeException e)
- {
- errorMessage = invalidNumberMessage;
- throw new ValidationException(invalidNumberMessage);
- }
-
- if (minValue != null && bd.compareTo(minValue) < 0)
- {
- errorMessage = minValueMessage;
- throw new ValidationException(minValueMessage);
- }
- if (maxValue != null && bd.compareTo(maxValue) > 0)
- {
- errorMessage = maxValueMessage;
- throw new ValidationException(maxValueMessage);
+ BigDecimal bd = null;
+ try
+ {
+ bd = new BigDecimal(testValue);
+ }
+ catch (RuntimeException e)
+ {
+ errorMessage = invalidNumberMessage;
+ throw new ValidationException(invalidNumberMessage);
+ }
+
+ if (minValue != null && bd.compareTo(minValue) < 0)
+ {
+ errorMessage = minValueMessage;
+ throw new ValidationException(minValueMessage);
+ }
+ if (maxValue != null && bd.compareTo(maxValue) > 0)
+ {
+ errorMessage = maxValueMessage;
+ throw new ValidationException(maxValueMessage);
+ }
}
}
1.3 +24 -20 jakarta-turbine-2/src/java/org/apache/turbine/services/intake/validator/LongValidator.java
Index: LongValidator.java
===================================================================
RCS file: /home/cvs/jakarta-turbine-2/src/java/org/apache/turbine/services/intake/validator/LongValidator.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- LongValidator.java 19 Jun 2003 16:55:17 -0000 1.2
+++ LongValidator.java 11 Sep 2003 09:53:14 -0000 1.3
@@ -72,6 +72,7 @@
*
* @author <a href="mailto:jmcnally@collab.net">John McNally</a>
* @author <a href="mailto:Colin.Chalmers@maxware.nl">Colin Chalmers</a>
+ * @author <a href="mailto:jh@byteaction.de">Jürgen Hoffmann</a>
* @version $Id$
*/
public class LongValidator
@@ -144,26 +145,29 @@
{
super.assertValidity(testValue);
- long l = 0L;
- try
+ if ((required) || ((testValue != null) && (testValue.length() > 0)))
{
- l = Long.parseLong(testValue);
- }
- catch (RuntimeException e)
- {
- errorMessage = invalidNumberMessage;
- throw new ValidationException(invalidNumberMessage);
- }
-
- if (l < minValue)
- {
- errorMessage = minValueMessage;
- throw new ValidationException(minValueMessage);
- }
- if (l > maxValue)
- {
- errorMessage = maxValueMessage;
- throw new ValidationException(maxValueMessage);
+ long l = 0L;
+ try
+ {
+ l = Long.parseLong(testValue);
+ }
+ catch (RuntimeException e)
+ {
+ errorMessage = invalidNumberMessage;
+ throw new ValidationException(invalidNumberMessage);
+ }
+
+ if (l < minValue)
+ {
+ errorMessage = minValueMessage;
+ throw new ValidationException(minValueMessage);
+ }
+ if (l > maxValue)
+ {
+ errorMessage = maxValueMessage;
+ throw new ValidationException(maxValueMessage);
+ }
}
}
1.4 +23 -19 jakarta-turbine-2/src/java/org/apache/turbine/services/intake/validator/DoubleValidator.java
Index: DoubleValidator.java
===================================================================
RCS file: /home/cvs/jakarta-turbine-2/src/java/org/apache/turbine/services/intake/validator/DoubleValidator.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- DoubleValidator.java 10 Sep 2003 12:09:30 -0000 1.3
+++ DoubleValidator.java 11 Sep 2003 09:53:14 -0000 1.4
@@ -72,6 +72,7 @@
*
* @author <a href="mailto:jmcnally@collab.net">John McNally</a>
* @author <a href="mailto:Colin.Chalmers@maxware.nl">Colin Chalmers</a>
+ * @author <a href="mailto:jh@byteaction.de">Jürgen Hoffmann</a>
* @version $Id$
*/
public class DoubleValidator
@@ -146,25 +147,28 @@
double d = 0.0D;
- try
+ if ((required) || ((testValue != null) && (testValue.length() > 0)))
{
- d = Double.parseDouble(testValue);
- }
- catch (RuntimeException e)
- {
- errorMessage = invalidNumberMessage;
- throw new ValidationException(invalidNumberMessage);
- }
-
- if (d < minValue)
- {
- errorMessage = minValueMessage;
- throw new ValidationException(minValueMessage);
- }
- if (d > maxValue)
- {
- errorMessage = maxValueMessage;
- throw new ValidationException(maxValueMessage);
+ try
+ {
+ d = Double.parseDouble(testValue);
+ }
+ catch (RuntimeException e)
+ {
+ errorMessage = invalidNumberMessage;
+ throw new ValidationException(invalidNumberMessage);
+ }
+
+ if (d < minValue)
+ {
+ errorMessage = minValueMessage;
+ throw new ValidationException(minValueMessage);
+ }
+ if (d > maxValue)
+ {
+ errorMessage = maxValueMessage;
+ throw new ValidationException(maxValueMessage);
+ }
}
}
1.3 +24 -20 jakarta-turbine-2/src/java/org/apache/turbine/services/intake/validator/ShortValidator.java
Index: ShortValidator.java
===================================================================
RCS file: /home/cvs/jakarta-turbine-2/src/java/org/apache/turbine/services/intake/validator/ShortValidator.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- ShortValidator.java 19 Jun 2003 16:55:17 -0000 1.2
+++ ShortValidator.java 11 Sep 2003 09:53:14 -0000 1.3
@@ -72,6 +72,7 @@
*
* @author <a href="mailto:jmcnally@collab.net">John McNally</a>
* @author <a href="mailto:Colin.Chalmers@maxware.nl">Colin Chalmers</a>
+ * @author <a href="mailto:jh@byteaction.de">Jürgen Hoffmann</a>
* @version $Id$
*/
public class ShortValidator
@@ -144,26 +145,29 @@
{
super.assertValidity(testValue);
- short s = 0;
- try
+ if ((required) || ((testValue != null) && (testValue.length() > 0)))
{
- s = Short.parseShort(testValue);
- }
- catch (RuntimeException e)
- {
- errorMessage = invalidNumberMessage;
- throw new ValidationException(invalidNumberMessage);
- }
-
- if (s < minValue)
- {
- errorMessage = minValueMessage;
- throw new ValidationException(minValueMessage);
- }
- if (s > maxValue)
- {
- errorMessage = maxValueMessage;
- throw new ValidationException(maxValueMessage);
+ short s = 0;
+ try
+ {
+ s = Short.parseShort(testValue);
+ }
+ catch (RuntimeException e)
+ {
+ errorMessage = invalidNumberMessage;
+ throw new ValidationException(invalidNumberMessage);
+ }
+
+ if (s < minValue)
+ {
+ errorMessage = minValueMessage;
+ throw new ValidationException(minValueMessage);
+ }
+ if (s > maxValue)
+ {
+ errorMessage = maxValueMessage;
+ throw new ValidationException(maxValueMessage);
+ }
}
}
1.3 +18 -14 jakarta-turbine-2/src/java/org/apache/turbine/services/intake/validator/StringValidator.java
Index: StringValidator.java
===================================================================
RCS file: /home/cvs/jakarta-turbine-2/src/java/org/apache/turbine/services/intake/validator/StringValidator.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- StringValidator.java 19 Jun 2003 16:55:17 -0000 1.2
+++ StringValidator.java 11 Sep 2003 09:53:14 -0000 1.3
@@ -77,6 +77,7 @@
* @author <a href="mailto:jmcnally@collab.net">John McNally</a>
* @author <a href="mailto:quintonm@bellsouth.net">Quinton McCombs</a>
* @author <a href="mailto:Colin.Chalmers@maxware.nl">Colin Chalmers</a>
+ * @author <a href="mailto:jh@byteaction.de">Jürgen Hoffmann</a>
* @version $Id$
*/
public class StringValidator
@@ -171,21 +172,24 @@
{
super.assertValidity(testValue);
- /** perl5 matcher */
- Perl5Matcher patternMatcher = new Perl5Matcher();
-
- if (maskPattern != null)
+ if ((required) || ((testValue != null) && (testValue.length() > 0)))
{
- boolean patternMatch =
- patternMatcher.matches(testValue, maskPattern);
-
- log.debug("Trying to match " + testValue
- + " to pattern " + maskString);
-
- if (!patternMatch)
+ if (maskPattern != null)
{
- errorMessage = maskMessage;
- throw new ValidationException(maskMessage);
+ /** perl5 matcher */
+ Perl5Matcher patternMatcher = new Perl5Matcher();
+
+ boolean patternMatch =
+ patternMatcher.matches(testValue, maskPattern);
+
+ log.debug("Trying to match " + testValue
+ + " to pattern " + maskString);
+
+ if (!patternMatch)
+ {
+ errorMessage = maskMessage;
+ throw new ValidationException(maskMessage);
+ }
}
}
}
1.10 +2 -3 jakarta-turbine-2/src/java/org/apache/turbine/services/intake/validator/DefaultValidator.java
Index: DefaultValidator.java
===================================================================
RCS file: /home/cvs/jakarta-turbine-2/src/java/org/apache/turbine/services/intake/validator/DefaultValidator.java,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -r1.9 -r1.10
--- DefaultValidator.java 19 Jun 2003 16:55:17 -0000 1.9
+++ DefaultValidator.java 11 Sep 2003 09:53:14 -0000 1.10
@@ -195,8 +195,7 @@
public void assertValidity(String testValue)
throws ValidationException
{
- if ((!required && minLength == 0)
- && (testValue == null || testValue.length() == 0))
+ if (!required && (testValue == null || testValue.length() == 0))
{
return;
}
1.9 +11 -7 jakarta-turbine-2/src/java/org/apache/turbine/services/intake/validator/BooleanValidator.java
Index: BooleanValidator.java
===================================================================
RCS file: /home/cvs/jakarta-turbine-2/src/java/org/apache/turbine/services/intake/validator/BooleanValidator.java,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -r1.8 -r1.9
--- BooleanValidator.java 19 Jun 2003 16:27:10 -0000 1.8
+++ BooleanValidator.java 11 Sep 2003 09:53:14 -0000 1.9
@@ -83,6 +83,7 @@
*
* @author <a href="mailto:quintonm@bellsouth.net">Quinton McCombs</a>
* @author <a href="mailto:Colin.Chalmers@maxware.nl">Colin Chalmers</a>
+ * @author <a href="mailto:jh@byteaction.de">Jürgen Hoffmann</a>
* @version $Id$
*/
public class BooleanValidator
@@ -126,13 +127,16 @@
{
super.assertValidity(testValue);
- try
+ if ((required) || ((testValue != null) && (testValue.length() > 0)))
{
- parse(testValue);
- }
- catch (ParseException e)
- {
- throw new ValidationException(e.getMessage());
+ try
+ {
+ parse(testValue);
+ }
+ catch (ParseException e)
+ {
+ throw new ValidationException(e.getMessage());
+ }
}
}
1.4 +24 -20 jakarta-turbine-2/src/java/org/apache/turbine/services/intake/validator/FloatValidator.java
Index: FloatValidator.java
===================================================================
RCS file: /home/cvs/jakarta-turbine-2/src/java/org/apache/turbine/services/intake/validator/FloatValidator.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- FloatValidator.java 10 Sep 2003 12:09:30 -0000 1.3
+++ FloatValidator.java 11 Sep 2003 09:53:14 -0000 1.4
@@ -72,6 +72,7 @@
*
* @author <a href="mailto:jmcnally@collab.net">John McNally</a>
* @author <a href="mailto:Colin.Chalmers@maxware.nl">Colin Chalmers</a>
+ * @author <a href="mailto:jh@byteaction.de">Jürgen Hoffmann</a>
* @version $Id$
*/
public class FloatValidator
@@ -144,26 +145,29 @@
{
super.assertValidity(testValue);
- float f = 0.0f;
- try
+ if ((required) || ((testValue != null) && (testValue.length() > 0)))
{
- f = Float.parseFloat(testValue);
- }
- catch (RuntimeException e)
- {
- errorMessage = invalidNumberMessage;
- throw new ValidationException(invalidNumberMessage);
- }
-
- if (f < minValue)
- {
- errorMessage = minValueMessage;
- throw new ValidationException(minValueMessage);
- }
- if (f > maxValue)
- {
- errorMessage = maxValueMessage;
- throw new ValidationException(maxValueMessage);
+ float f = 0.0f;
+ try
+ {
+ f = Float.parseFloat(testValue);
+ }
+ catch (RuntimeException e)
+ {
+ errorMessage = invalidNumberMessage;
+ throw new ValidationException(invalidNumberMessage);
+ }
+
+ if (f < minValue)
+ {
+ errorMessage = minValueMessage;
+ throw new ValidationException(minValueMessage);
+ }
+ if (f > maxValue)
+ {
+ errorMessage = maxValueMessage;
+ throw new ValidationException(maxValueMessage);
+ }
}
}