You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by iv...@apache.org on 2008/08/31 09:59:50 UTC

svn commit: r690656 - in /wicket/trunk/wicket/src/main/java/org/apache/wicket: markup/html/form/FormComponent.java validation/IValidatable.java validation/IValidator.java

Author: ivaynberg
Date: Sun Aug 31 00:59:50 2008
New Revision: 690656

URL: http://svn.apache.org/viewvc?rev=690656&view=rev
Log:
begin validator generification

Modified:
    wicket/trunk/wicket/src/main/java/org/apache/wicket/markup/html/form/FormComponent.java
    wicket/trunk/wicket/src/main/java/org/apache/wicket/validation/IValidatable.java
    wicket/trunk/wicket/src/main/java/org/apache/wicket/validation/IValidator.java

Modified: wicket/trunk/wicket/src/main/java/org/apache/wicket/markup/html/form/FormComponent.java
URL: http://svn.apache.org/viewvc/wicket/trunk/wicket/src/main/java/org/apache/wicket/markup/html/form/FormComponent.java?rev=690656&r1=690655&r2=690656&view=diff
==============================================================================
--- wicket/trunk/wicket/src/main/java/org/apache/wicket/markup/html/form/FormComponent.java (original)
+++ wicket/trunk/wicket/src/main/java/org/apache/wicket/markup/html/form/FormComponent.java Sun Aug 31 00:59:50 2008
@@ -318,7 +318,7 @@
 	 * 
 	 * @author ivaynberg
 	 */
-	private class ValidatableAdapter implements IValidatable
+	private class ValidatableAdapter implements IValidatable<T>
 	{
 
 		/**
@@ -332,7 +332,7 @@
 		/**
 		 * @see org.apache.wicket.validation.IValidatable#getValue()
 		 */
-		public Object getValue()
+		public T getValue()
 		{
 			return getConvertedInput();
 		}
@@ -483,14 +483,14 @@
 	 * @see IValidator
 	 * @see IValidatorAddListener
 	 */
-	public final FormComponent<?> add(final IValidator... validators)
+	public final FormComponent<T> add(final IValidator<T>... validators)
 	{
 		if (validators == null)
 		{
 			throw new IllegalArgumentException("validator argument cannot be null");
 		}
 
-		for (IValidator validator : validators)
+		for (IValidator<T> validator : validators)
 		{
 			if (validator == null)
 			{
@@ -782,7 +782,7 @@
 	 * 
 	 * @return List of validators
 	 */
-	public final List<IValidator> getValidators()
+	public final List<IValidator<T>> getValidators()
 	{
 		final int size = validators_size();
 		if (size == 0)
@@ -791,7 +791,7 @@
 		}
 		else
 		{
-			final List<IValidator> list = new ArrayList<IValidator>(size);
+			final List<IValidator<T>> list = new ArrayList<IValidator<T>>(size);
 			for (int i = 0; i < size; i++)
 			{
 				list.add(validators_get(i));
@@ -1126,7 +1126,7 @@
 	 *            The validator to add to the validators Object (which may be an array of
 	 *            IValidators or a single instance, for efficiency)
 	 */
-	private void validators_add(final IValidator validator)
+	private void validators_add(final IValidator<T> validator)
 	{
 		if (validators == null)
 		{
@@ -1138,7 +1138,7 @@
 			final int size = validators_size();
 
 			// Create array that holds size + 1 elements
-			final IValidator[] validators = new IValidator[size + 1];
+			final IValidator<T>[] validators = new IValidator[size + 1];
 
 			// Loop through existing validators copying them
 			for (int i = 0; i < size; i++)
@@ -1162,7 +1162,7 @@
 	 *            The index of the validator to get
 	 * @return The validator
 	 */
-	private IValidator validators_get(int index)
+	private IValidator<T> validators_get(int index)
 	{
 		if (validators == null)
 		{
@@ -1172,7 +1172,7 @@
 		{
 			return ((IValidator[])validators)[index];
 		}
-		return (IValidator)validators;
+		return (IValidator<T>)validators;
 	}
 
 	/**
@@ -1495,10 +1495,10 @@
 	{
 		final int size = validators_size();
 
-		final IValidatable validatable = new ValidatableAdapter();
+		final IValidatable<T> validatable = new ValidatableAdapter();
 
 		int i = 0;
-		IValidator validator = null;
+		IValidator<T> validator = null;
 
 		boolean isNull = getConvertedInput() == null;
 

Modified: wicket/trunk/wicket/src/main/java/org/apache/wicket/validation/IValidatable.java
URL: http://svn.apache.org/viewvc/wicket/trunk/wicket/src/main/java/org/apache/wicket/validation/IValidatable.java?rev=690656&r1=690655&r2=690656&view=diff
==============================================================================
--- wicket/trunk/wicket/src/main/java/org/apache/wicket/validation/IValidatable.java (original)
+++ wicket/trunk/wicket/src/main/java/org/apache/wicket/validation/IValidatable.java Sun Aug 31 00:59:50 2008
@@ -23,14 +23,14 @@
  * @author Igor Vaynberg (ivaynberg)
  * @since 1.2.6
  */
-public interface IValidatable
+public interface IValidatable<T>
 {
 	/**
 	 * Retrieves the value to be validated.
 	 * 
 	 * @return the value to be validated
 	 */
-	Object getValue();
+	T getValue();
 
 	/**
 	 * Reports an error against this <code>IValidatable</code>'s value. Multiple errors can be
@@ -46,8 +46,7 @@
 	 * <code>IValidatable</code>s should assume they are valid until
 	 * {@link #error(IValidationError)} is called.
 	 * 
-	 * @return <code>true</code> if the object is in a valid state, <code>false</code> if
-	 *         otherwise
+	 * @return <code>true</code> if the object is in a valid state, <code>false</code> if otherwise
 	 */
 	boolean isValid();
 }

Modified: wicket/trunk/wicket/src/main/java/org/apache/wicket/validation/IValidator.java
URL: http://svn.apache.org/viewvc/wicket/trunk/wicket/src/main/java/org/apache/wicket/validation/IValidator.java?rev=690656&r1=690655&r2=690656&view=diff
==============================================================================
--- wicket/trunk/wicket/src/main/java/org/apache/wicket/validation/IValidator.java (original)
+++ wicket/trunk/wicket/src/main/java/org/apache/wicket/validation/IValidator.java Sun Aug 31 00:59:50 2008
@@ -28,14 +28,14 @@
  * @author Igor Vaynberg (ivaynberg)
  * @since 1.2.6
  */
-public interface IValidator extends IClusterable
+public interface IValidator<T> extends IClusterable
 {
 	/**
-	 * Validates the <code>IValidatable</code> instance. Validation errors should be reported
-	 * using the {@link IValidatable#error(IValidationError)} method.
+	 * Validates the <code>IValidatable</code> instance. Validation errors should be reported using
+	 * the {@link IValidatable#error(IValidationError)} method.
 	 * 
 	 * @param validatable
 	 *            the <code>IValidatable</code> instance being validated
 	 */
-	void validate(IValidatable validatable);
+	void validate(IValidatable<T> validatable);
 }