Author: sebb
Date: Wed Jan 14 23:33:14 2015
New Revision: 1651886

URL: http://svn.apache.org/r1651886
Log:
Generics

Modified:
    
commons/proper/validator/trunk/src/main/java/org/apache/commons/validator/Field.java

Modified: 
commons/proper/validator/trunk/src/main/java/org/apache/commons/validator/Field.java
URL: 
http://svn.apache.org/viewvc/commons/proper/validator/trunk/src/main/java/org/apache/commons/validator/Field.java?rev=1651886&r1=1651885&r2=1651886&view=diff
==============================================================================
--- 
commons/proper/validator/trunk/src/main/java/org/apache/commons/validator/Field.java
 (original)
+++ 
commons/proper/validator/trunk/src/main/java/org/apache/commons/validator/Field.java
 Wed Jan 14 23:33:14 2015
@@ -129,12 +129,12 @@ public class Field implements Cloneable,
     /**
      * @deprecated Subclasses should use getVarMap() instead.
      */
-    protected FastHashMap hVars = new FastHashMap();
+    protected FastHashMap hVars = new FastHashMap(); // <String, Var>
 
     /**
      * @deprecated Subclasses should use getMsgMap() instead.
      */
-    protected FastHashMap hMsgs = new FastHashMap();
+    protected FastHashMap hMsgs = new FastHashMap(); // <String, Msg>
 
     /**
      * Holds Maps of arguments.  args[0] returns the Map for the first
@@ -265,7 +265,7 @@ public class Field implements Cloneable,
      * @param msg A validation message.
      */
     public void addMsg(Msg msg) {
-        hMsgs.put(msg.getName(), msg);
+        getMsgMap().put(msg.getName(), msg);
     }
 
     /**
@@ -285,7 +285,7 @@ public class Field implements Cloneable,
      * @return A validation message for a specified validator.
      */
     public Msg getMessage(String key) {
-        return (Msg) hMsgs.get(key);
+        return (Msg) getMsgMap().get(key);
     }
 
     /**
@@ -294,8 +294,8 @@ public class Field implements Cloneable,
      * @since Validator 1.1.4
      * @return Map of validation messages for the field.
      */
-    public Map getMessages() {
-        return Collections.unmodifiableMap(hMsgs);
+    public Map<String, Msg> getMessages() {
+        return Collections.unmodifiableMap(getMsgMap());
     }
 
     /**
@@ -397,6 +397,7 @@ public class Field implements Cloneable,
      */
     private void ensureArgsCapacity(Arg arg) {
         if (arg.getPosition() >= this.args.length) {
+            @SuppressWarnings("unchecked") // cannot check this at compile 
time, but it is OK
             Map<String, Arg>[] newArgs = new Map[arg.getPosition() + 1];
             System.arraycopy(this.args, 0, newArgs, 0, this.args.length);
             this.args = newArgs;
@@ -461,7 +462,7 @@ public class Field implements Cloneable,
      * @param v The Validator Argument.
      */
     public void addVar(Var v) {
-        this.hVars.put(v.getName(), v);
+        this.getVarMap().put(v.getName(), v);
     }
 
     /**
@@ -481,7 +482,7 @@ public class Field implements Cloneable,
      * @return the Variable
      */
     public Var getVar(String mainKey) {
-        return (Var) hVars.get(mainKey);
+        return (Var) getVarMap().get(mainKey);
     }
 
     /**
@@ -492,7 +493,7 @@ public class Field implements Cloneable,
     public String getVarValue(String mainKey) {
         String value = null;
 
-        Object o = hVars.get(mainKey);
+        Object o = getVarMap().get(mainKey);
         if (o != null && o instanceof Var) {
             Var v = (Var) o;
             value = v.getValue();
@@ -506,8 +507,8 @@ public class Field implements Cloneable,
      * unmodifiable <code>Map</code>.
      * @return the Map of Variable's for a Field.
      */
-    public Map getVars() {
-        return Collections.unmodifiableMap(hVars);
+    public Map<String, Var> getVars() {
+        return Collections.unmodifiableMap(getVarMap());
     }
 
     /**
@@ -591,8 +592,8 @@ public class Field implements Cloneable,
         }
 
         // Process Var Constant Replacement
-        for (Iterator i = hVars.keySet().iterator(); i.hasNext();) {
-            String key = (String) i.next();
+        for (Iterator<String> i = getVarMap().keySet().iterator(); 
i.hasNext();) {
+            String key = i.next();
             String key2 = TOKEN_START + TOKEN_VAR + key + TOKEN_END;
             Var var = this.getVar(key);
             String replaceValue = var.getValue();
@@ -607,7 +608,7 @@ public class Field implements Cloneable,
      * Replace the vars value with the key/value pairs passed in.
      */
     private void processVars(String key, String replaceValue) {
-        Iterator<String> i = this.hVars.keySet().iterator();
+        Iterator<String> i = getVarMap().keySet().iterator();
         while (i.hasNext()) {
             String varKey = i.next();
             Var var = this.getVar(varKey);
@@ -624,7 +625,7 @@ public class Field implements Cloneable,
         String varKey = TOKEN_START + TOKEN_VAR;
         // Process Messages
         if (key != null && !key.startsWith(varKey)) {
-            for (Iterator<Msg> i = hMsgs.values().iterator(); i.hasNext();) {
+            for (Iterator<Msg> i = getMsgMap().values().iterator(); 
i.hasNext();) {
                 Msg msg = i.next();
                 msg.setKey(ValidatorUtils.replace(msg.getKey(), key, 
replaceValue));
             }
@@ -727,12 +728,12 @@ public class Field implements Cloneable,
 
         if (hVars != null) {
             results.append("\t\tVars:\n");
-            for (Iterator<?> i = hVars.keySet().iterator(); i.hasNext();) {
+            for (Iterator<?> i = getVarMap().keySet().iterator(); 
i.hasNext();) {
                 Object key = i.next();
                 results.append("\t\t\t");
                 results.append(key);
                 results.append("=");
-                results.append(hVars.get(key));
+                results.append(getVarMap().get(key));
                 results.append("\n");
             }
         }
@@ -763,7 +764,7 @@ public class Field implements Cloneable,
         }
 
         if (indexedProperty instanceof Collection) {
-            return ((Collection) indexedProperty).toArray();
+            return ((Collection<?>) indexedProperty).toArray();
 
         } else if (indexedProperty.getClass().isArray()) {
             return (Object[]) indexedProperty;
@@ -798,7 +799,7 @@ public class Field implements Cloneable,
         if (indexedProperty == null) {
             return 0;
         } else if (indexedProperty instanceof Collection) {
-            return ((Collection)indexedProperty).size();
+            return ((Collection<?>)indexedProperty).size();
         } else if (indexedProperty.getClass().isArray()) {
             return ((Object[])indexedProperty).length;
         } else {
@@ -939,7 +940,8 @@ public class Field implements Cloneable,
      * @since Validator 1.2.0
      * @return A Map of the Field's messages.
      */
-    protected Map getMsgMap() {
+    @SuppressWarnings("unchecked") // FastHashMap does not support generics
+    protected Map<String, Msg> getMsgMap() {
         return hMsgs;
     }
 
@@ -948,7 +950,8 @@ public class Field implements Cloneable,
      * @since Validator 1.2.0
      * @return A Map of the Field's variables.
      */
-    protected Map getVarMap() {
+    @SuppressWarnings("unchecked") // FastHashMap does not support generics
+    protected Map<String, Var> getVarMap() {
         return hVars;
     }
 }


Reply via email to