]> source.dussan.org Git - vaadin-framework.git/commitdiff
Added Validator generics
authorArtur Signell <artur.signell@itmill.com>
Tue, 15 Dec 2009 08:09:47 +0000 (08:09 +0000)
committerArtur Signell <artur.signell@itmill.com>
Tue, 15 Dec 2009 08:09:47 +0000 (08:09 +0000)
svn changeset:10298/svn branch:6.2

src/com/vaadin/data/Validatable.java
src/com/vaadin/ui/AbstractField.java

index aba6050f495760cf62fb4f8e9bb3bdf37a93191b..ea63dac9c9804dc40ea7432ab0664cabbb32f34e 100644 (file)
@@ -55,7 +55,7 @@ public interface Validatable extends Serializable {
      * 
      * @return collection of validators or <code>null</code>
      */
-    public Collection<?> getValidators();
+    public Collection<Validator> getValidators();
 
     /**
      * <p>
index b45e73ab50e9fd39ef61c907eced288245b9ca3d..c3d5066600f134a49bdee76a3dc7155cebf33665 100644 (file)
@@ -71,7 +71,7 @@ public abstract class AbstractField extends AbstractComponent implements Field,
     /**
      * The list of validators.
      */
-    private LinkedList validators = null;
+    private LinkedList<Validator> validators = null;
 
     /**
      * Auto commit mode.
@@ -456,10 +456,11 @@ public abstract class AbstractField extends AbstractComponent implements Field,
 
             // If invalid values are not allowed, the value must be checked
             if (!isInvalidAllowed()) {
-                final Collection v = getValidators();
+                final Collection<Validator> v = getValidators();
                 if (v != null) {
-                    for (final Iterator i = v.iterator(); i.hasNext();) {
-                        ((Validator) i.next()).validate(newValue);
+                    for (final Iterator<Validator> i = v.iterator(); i
+                            .hasNext();) {
+                        (i.next()).validate(newValue);
                     }
                 }
             }
@@ -574,11 +575,12 @@ public abstract class AbstractField extends AbstractComponent implements Field,
 
         // Copy the validators from the data source
         if (dataSource instanceof Validatable) {
-            final Collection validators = ((Validatable) dataSource)
+            final Collection<Validator> validators = ((Validatable) dataSource)
                     .getValidators();
             if (validators != null) {
-                for (final Iterator i = validators.iterator(); i.hasNext();) {
-                    addValidator((Validator) i.next());
+                for (final Iterator<Validator> i = validators.iterator(); i
+                        .hasNext();) {
+                    addValidator(i.next());
                 }
             }
         }
@@ -601,7 +603,7 @@ public abstract class AbstractField extends AbstractComponent implements Field,
      */
     public void addValidator(Validator validator) {
         if (validators == null) {
-            validators = new LinkedList();
+            validators = new LinkedList<Validator>();
         }
         validators.add(validator);
         requestRepaint();
@@ -613,7 +615,7 @@ public abstract class AbstractField extends AbstractComponent implements Field,
      * @return the Unmodifiable collection that holds all validators for the
      *         field.
      */
-    public Collection getValidators() {
+    public Collection<Validator> getValidators() {
         if (validators == null || validators.isEmpty()) {
             return null;
         }
@@ -657,8 +659,8 @@ public abstract class AbstractField extends AbstractComponent implements Field,
         }
 
         final Object value = getValue();
-        for (final Iterator i = validators.iterator(); i.hasNext();) {
-            if (!((Validator) i.next()).isValid(value)) {
+        for (final Iterator<Validator> i = validators.iterator(); i.hasNext();) {
+            if (!(i.next()).isValid(value)) {
                 return false;
             }
         }
@@ -694,19 +696,19 @@ public abstract class AbstractField extends AbstractComponent implements Field,
 
         // Initialize temps
         Validator.InvalidValueException firstError = null;
-        LinkedList errors = null;
+        LinkedList<InvalidValueException> errors = null;
         final Object value = getValue();
 
         // Gets all the validation errors
-        for (final Iterator i = validators.iterator(); i.hasNext();) {
+        for (final Iterator<Validator> i = validators.iterator(); i.hasNext();) {
             try {
-                ((Validator) i.next()).validate(value);
+                (i.next()).validate(value);
             } catch (final Validator.InvalidValueException e) {
                 if (firstError == null) {
                     firstError = e;
                 } else {
                     if (errors == null) {
-                        errors = new LinkedList();
+                        errors = new LinkedList<InvalidValueException>();
                         errors.add(firstError);
                     }
                     errors.add(e);
@@ -728,8 +730,9 @@ public abstract class AbstractField extends AbstractComponent implements Field,
         final Validator.InvalidValueException[] exceptions = new Validator.InvalidValueException[errors
                 .size()];
         int index = 0;
-        for (final Iterator i = errors.iterator(); i.hasNext();) {
-            exceptions[index++] = (Validator.InvalidValueException) i.next();
+        for (final Iterator<InvalidValueException> i = errors.iterator(); i
+                .hasNext();) {
+            exceptions[index++] = i.next();
         }
 
         throw new Validator.InvalidValueException(null, exceptions);