You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by mg...@apache.org on 2013/05/03 10:58:40 UTC

[21/27] git commit: WICKET-5174 Validators' #decorate() methods should work with IValidationError

WICKET-5174 Validators' #decorate() methods should work with IValidationError


Project: http://git-wip-us.apache.org/repos/asf/wicket/repo
Commit: http://git-wip-us.apache.org/repos/asf/wicket/commit/a76a4789
Tree: http://git-wip-us.apache.org/repos/asf/wicket/tree/a76a4789
Diff: http://git-wip-us.apache.org/repos/asf/wicket/diff/a76a4789

Branch: refs/heads/wicket-4774
Commit: a76a478911fc213d9ec979f0e719bd80a936a420
Parents: 2ddf76f
Author: Martin Tzvetanov Grigorov <mg...@apache.org>
Authored: Thu May 2 21:09:52 2013 +0200
Committer: Martin Tzvetanov Grigorov <mg...@apache.org>
Committed: Thu May 2 21:09:52 2013 +0200

----------------------------------------------------------------------
 .../validator/AbstractRangeValidator.java          |    3 +-
 .../validation/validator/CreditCardValidator.java  |    3 +-
 .../wicket/validation/validator/DateValidator.java |   31 ++++++++------
 .../validation/validator/PatternValidator.java     |    2 +-
 .../validation/validator/RangeValidator.java       |   22 +++++++----
 .../validation/validator/StringValidator.java      |   12 ++++-
 .../wicket/validation/validator/UrlValidator.java  |    3 +-
 .../RfcCompliantEmailAddressValidator.java         |    3 +-
 8 files changed, 50 insertions(+), 29 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/wicket/blob/a76a4789/wicket-core/src/main/java/org/apache/wicket/validation/validator/AbstractRangeValidator.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/main/java/org/apache/wicket/validation/validator/AbstractRangeValidator.java b/wicket-core/src/main/java/org/apache/wicket/validation/validator/AbstractRangeValidator.java
index f6ba851..73b0819 100644
--- a/wicket-core/src/main/java/org/apache/wicket/validation/validator/AbstractRangeValidator.java
+++ b/wicket-core/src/main/java/org/apache/wicket/validation/validator/AbstractRangeValidator.java
@@ -20,6 +20,7 @@ import java.io.Serializable;
 
 import org.apache.wicket.behavior.Behavior;
 import org.apache.wicket.validation.IValidatable;
+import org.apache.wicket.validation.IValidationError;
 import org.apache.wicket.validation.IValidator;
 import org.apache.wicket.validation.ValidationError;
 
@@ -162,7 +163,7 @@ public abstract class AbstractRangeValidator<R extends Comparable<R> & Serializa
 	 * @param validatable
 	 * @return decorated error
 	 */
-	protected ValidationError decorate(ValidationError error, IValidatable<V> validatable)
+	protected IValidationError decorate(IValidationError error, IValidatable<V> validatable)
 	{
 		return error;
 	}

http://git-wip-us.apache.org/repos/asf/wicket/blob/a76a4789/wicket-core/src/main/java/org/apache/wicket/validation/validator/CreditCardValidator.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/main/java/org/apache/wicket/validation/validator/CreditCardValidator.java b/wicket-core/src/main/java/org/apache/wicket/validation/validator/CreditCardValidator.java
index 97e66f2..28225c2 100644
--- a/wicket-core/src/main/java/org/apache/wicket/validation/validator/CreditCardValidator.java
+++ b/wicket-core/src/main/java/org/apache/wicket/validation/validator/CreditCardValidator.java
@@ -17,6 +17,7 @@
 package org.apache.wicket.validation.validator;
 
 import org.apache.wicket.validation.IValidatable;
+import org.apache.wicket.validation.IValidationError;
 import org.apache.wicket.validation.IValidator;
 import org.apache.wicket.validation.ValidationError;
 
@@ -146,7 +147,7 @@ public class CreditCardValidator implements IValidator<String>
 	 * @param validatable
 	 * @return decorated error
 	 */
-	protected ValidationError decorate(ValidationError error, IValidatable<String> validatable)
+	protected IValidationError decorate(IValidationError error, IValidatable<String> validatable)
 	{
 		return error;
 	}

http://git-wip-us.apache.org/repos/asf/wicket/blob/a76a4789/wicket-core/src/main/java/org/apache/wicket/validation/validator/DateValidator.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/main/java/org/apache/wicket/validation/validator/DateValidator.java b/wicket-core/src/main/java/org/apache/wicket/validation/validator/DateValidator.java
index ddeb1cc..b215114 100644
--- a/wicket-core/src/main/java/org/apache/wicket/validation/validator/DateValidator.java
+++ b/wicket-core/src/main/java/org/apache/wicket/validation/validator/DateValidator.java
@@ -20,6 +20,7 @@ import java.text.SimpleDateFormat;
 import java.util.Date;
 
 import org.apache.wicket.validation.IValidatable;
+import org.apache.wicket.validation.IValidationError;
 import org.apache.wicket.validation.ValidationError;
 
 /**
@@ -173,25 +174,29 @@ public class DateValidator extends RangeValidator<Date>
 	}
 
 	@Override
-	protected ValidationError decorate(ValidationError error, IValidatable<Date> validatable)
+	protected IValidationError decorate(IValidationError error, IValidatable<Date> validatable)
 	{
 		error = super.decorate(error, validatable);
 
-		error.setVariable("inputdate", validatable.getValue());
-
-		// format variables if format has been specified
-		if (format != null)
+		if (error instanceof ValidationError)
 		{
-			SimpleDateFormat sdf = new SimpleDateFormat(format);
-			if (getMinimum() != null)
-			{
-				error.setVariable("minimum", sdf.format(getMinimum()));
-			}
-			if (getMaximum() != null)
+			ValidationError ve = (ValidationError) error;
+			ve.setVariable("inputdate", validatable.getValue());
+
+			// format variables if format has been specified
+			if (format != null)
 			{
-				error.setVariable("maximum", sdf.format(getMaximum()));
+				SimpleDateFormat sdf = new SimpleDateFormat(format);
+				if (getMinimum() != null)
+				{
+					ve.setVariable("minimum", sdf.format(getMinimum()));
+				}
+				if (getMaximum() != null)
+				{
+					ve.setVariable("maximum", sdf.format(getMaximum()));
+				}
+				ve.setVariable("inputdate", sdf.format(validatable.getValue()));
 			}
-			error.setVariable("inputdate", sdf.format(validatable.getValue()));
 		}
 
 		return error;

http://git-wip-us.apache.org/repos/asf/wicket/blob/a76a4789/wicket-core/src/main/java/org/apache/wicket/validation/validator/PatternValidator.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/main/java/org/apache/wicket/validation/validator/PatternValidator.java b/wicket-core/src/main/java/org/apache/wicket/validation/validator/PatternValidator.java
index c093317..aac7888 100644
--- a/wicket-core/src/main/java/org/apache/wicket/validation/validator/PatternValidator.java
+++ b/wicket-core/src/main/java/org/apache/wicket/validation/validator/PatternValidator.java
@@ -162,7 +162,7 @@ public class PatternValidator implements IValidator<String>
 	 * @param validatable
 	 * @return decorated error
 	 */
-	protected ValidationError decorate(ValidationError error, IValidatable<String> validatable)
+	protected IValidationError decorate(IValidationError error, IValidatable<String> validatable)
 	{
 		return error;
 	}

http://git-wip-us.apache.org/repos/asf/wicket/blob/a76a4789/wicket-core/src/main/java/org/apache/wicket/validation/validator/RangeValidator.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/main/java/org/apache/wicket/validation/validator/RangeValidator.java b/wicket-core/src/main/java/org/apache/wicket/validation/validator/RangeValidator.java
index fcf4c64..5ef9547 100644
--- a/wicket-core/src/main/java/org/apache/wicket/validation/validator/RangeValidator.java
+++ b/wicket-core/src/main/java/org/apache/wicket/validation/validator/RangeValidator.java
@@ -19,6 +19,7 @@ package org.apache.wicket.validation.validator;
 import java.io.Serializable;
 
 import org.apache.wicket.validation.IValidatable;
+import org.apache.wicket.validation.IValidationError;
 import org.apache.wicket.validation.ValidationError;
 
 /**
@@ -115,18 +116,23 @@ public class RangeValidator<Z extends Comparable<Z> & Serializable> extends
 	}
 
 	@Override
-	protected ValidationError decorate(ValidationError error, IValidatable<Z> validatable)
+	protected IValidationError decorate(IValidationError error, IValidatable<Z> validatable)
 	{
 		// TODO wicket 7: remove deprecated keys
 		error = super.decorate(error, validatable);
-		switch (getMode())
+
+		if (error instanceof ValidationError)
 		{
-			case MINIMUM :
-				error.addKey("MinimumValidator");
-				break;
-			case MAXIMUM :
-				error.addKey("MaximumValidator");
-				break;
+			ValidationError ve = (ValidationError) error;
+			switch (getMode())
+			{
+				case MINIMUM :
+					ve.addKey("MinimumValidator");
+					break;
+				case MAXIMUM :
+					ve.addKey("MaximumValidator");
+					break;
+			}
 		}
 		return error;
 	}

http://git-wip-us.apache.org/repos/asf/wicket/blob/a76a4789/wicket-core/src/main/java/org/apache/wicket/validation/validator/StringValidator.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/main/java/org/apache/wicket/validation/validator/StringValidator.java b/wicket-core/src/main/java/org/apache/wicket/validation/validator/StringValidator.java
index 57bae1b..273b112 100644
--- a/wicket-core/src/main/java/org/apache/wicket/validation/validator/StringValidator.java
+++ b/wicket-core/src/main/java/org/apache/wicket/validation/validator/StringValidator.java
@@ -16,9 +16,12 @@
  */
 package org.apache.wicket.validation.validator;
 
+import java.util.Locale;
+
 import org.apache.wicket.Component;
 import org.apache.wicket.markup.ComponentTag;
 import org.apache.wicket.validation.IValidatable;
+import org.apache.wicket.validation.IValidationError;
 import org.apache.wicket.validation.ValidationError;
 
 /**
@@ -88,10 +91,13 @@ public class StringValidator extends AbstractRangeValidator<Integer, String>
 	}
 
 	@Override
-	protected ValidationError decorate(ValidationError error, IValidatable<String> validatable)
+	protected IValidationError decorate(IValidationError error, IValidatable<String> validatable)
 	{
 		error = super.decorate(error, validatable);
-		error.setVariable("length", validatable.getValue().length());
+		if (error instanceof ValidationError)
+		{
+			((ValidationError)error).setVariable("length", validatable.getValue().length());
+		}
 		return error;
 	}
 
@@ -99,7 +105,7 @@ public class StringValidator extends AbstractRangeValidator<Integer, String>
 	public void onComponentTag(Component component, ComponentTag tag)
 	{
 		super.onComponentTag(component, tag);
-		if (getMaximum() != null && "input".equalsIgnoreCase(tag.getName()))
+		if (getMaximum() != null && "input".equalsIgnoreCase(tag.getName().toLowerCase(Locale.ENGLISH)))
 		{
 			tag.put("maxlength", getMaximum());
 		}

http://git-wip-us.apache.org/repos/asf/wicket/blob/a76a4789/wicket-core/src/main/java/org/apache/wicket/validation/validator/UrlValidator.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/main/java/org/apache/wicket/validation/validator/UrlValidator.java b/wicket-core/src/main/java/org/apache/wicket/validation/validator/UrlValidator.java
index b7eee15..37b8ebc 100644
--- a/wicket-core/src/main/java/org/apache/wicket/validation/validator/UrlValidator.java
+++ b/wicket-core/src/main/java/org/apache/wicket/validation/validator/UrlValidator.java
@@ -23,6 +23,7 @@ import java.util.regex.Matcher;
 import java.util.regex.Pattern;
 
 import org.apache.wicket.validation.IValidatable;
+import org.apache.wicket.validation.IValidationError;
 import org.apache.wicket.validation.IValidator;
 import org.apache.wicket.validation.ValidationError;
 
@@ -236,7 +237,7 @@ public class UrlValidator implements IValidator<String>
 	 * @param error
 	 * @return decorated error
 	 */
-	protected ValidationError decorate(ValidationError error, IValidatable<String> validatable)
+	protected IValidationError decorate(IValidationError error, IValidatable<String> validatable)
 	{
 		return error;
 	}

http://git-wip-us.apache.org/repos/asf/wicket/blob/a76a4789/wicket-extensions/src/main/java/org/apache/wicket/extensions/validation/validator/RfcCompliantEmailAddressValidator.java
----------------------------------------------------------------------
diff --git a/wicket-extensions/src/main/java/org/apache/wicket/extensions/validation/validator/RfcCompliantEmailAddressValidator.java b/wicket-extensions/src/main/java/org/apache/wicket/extensions/validation/validator/RfcCompliantEmailAddressValidator.java
index b2536a6..c9cca1e 100644
--- a/wicket-extensions/src/main/java/org/apache/wicket/extensions/validation/validator/RfcCompliantEmailAddressValidator.java
+++ b/wicket-extensions/src/main/java/org/apache/wicket/extensions/validation/validator/RfcCompliantEmailAddressValidator.java
@@ -19,6 +19,7 @@ package org.apache.wicket.extensions.validation.validator;
 import java.util.regex.Pattern;
 
 import org.apache.wicket.validation.IValidatable;
+import org.apache.wicket.validation.IValidationError;
 import org.apache.wicket.validation.IValidator;
 import org.apache.wicket.validation.ValidationError;
 import org.apache.wicket.validation.validator.EmailAddressValidator;
@@ -161,7 +162,7 @@ public class RfcCompliantEmailAddressValidator implements IValidator<String>
 	 * @param validatable
 	 * @return decorated error
 	 */
-	protected ValidationError decorate(ValidationError error, IValidatable<String> validatable)
+	protected IValidationError decorate(IValidationError error, IValidatable<String> validatable)
 	{
 		return error;
 	}