You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by se...@apache.org on 2009/11/30 18:43:43 UTC
svn commit: r885514 - in
/commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/util:
ListSetExecutor.java MapGetExecutor.java MapSetExecutor.java
Author: sebb
Date: Mon Nov 30 17:43:42 2009
New Revision: 885514
URL: http://svn.apache.org/viewvc?rev=885514&view=rev
Log:
Document why OK to suppress raw type cast warnings
Modified:
commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/util/ListSetExecutor.java
commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/util/MapGetExecutor.java
commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/util/MapSetExecutor.java
Modified: commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/util/ListSetExecutor.java
URL: http://svn.apache.org/viewvc/commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/util/ListSetExecutor.java?rev=885514&r1=885513&r2=885514&view=diff
==============================================================================
--- commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/util/ListSetExecutor.java (original)
+++ commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/util/ListSetExecutor.java Mon Nov 30 17:43:42 2009
@@ -51,12 +51,12 @@
}
/** {@inheritDoc} */
- @SuppressWarnings("unchecked")
@Override
public Object execute(final Object obj, Object value) {
if (method == ARRAY_SET) {
java.lang.reflect.Array.set(obj, property.intValue(), value);
} else {
+ @SuppressWarnings("unchecked") // LSE should only be created for array or list types
final List<Object> list = (List<Object>) obj;
list.set(property.intValue(), value);
}
@@ -64,7 +64,6 @@
}
/** {@inheritDoc} */
- @SuppressWarnings("unchecked")
@Override
public Object tryExecute(final Object obj, Object key, Object value) {
if (obj != null && method != null
@@ -73,6 +72,7 @@
if (method == ARRAY_SET) {
Array.set(obj, ((Integer) key).intValue(), value);
} else {
+ @SuppressWarnings("unchecked") // LSE should only be created for array or list types
final List<Object> list = (List<Object>) obj;
list.set(((Integer) key).intValue(), value);
}
Modified: commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/util/MapGetExecutor.java
URL: http://svn.apache.org/viewvc/commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/util/MapGetExecutor.java?rev=885514&r1=885513&r2=885514&view=diff
==============================================================================
--- commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/util/MapGetExecutor.java (original)
+++ commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/util/MapGetExecutor.java Mon Nov 30 17:43:42 2009
@@ -52,20 +52,20 @@
* @param obj the map.
* @return map.get(property)
*/
- @SuppressWarnings("unchecked")
@Override
public Object execute(final Object obj) {
+ @SuppressWarnings("unchecked") // ctor only allows Map instances - see discover() method
final Map<Object,?> map = (Map<Object, ?>) obj;
return map.get(property);
}
/** {@inheritDoc} */
- @SuppressWarnings("unchecked")
@Override
public Object tryExecute(final Object obj, Object key) {
if (obj != null && method != null
&& objectClass.equals(obj.getClass())
&& (key == null || property.getClass().equals(key.getClass()))) {
+ @SuppressWarnings("unchecked") // ctor only allows Map instances - see discover() method
final Map<Object,?> map = (Map<Object, ?>) obj;
return map.get(key);
}
Modified: commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/util/MapSetExecutor.java
URL: http://svn.apache.org/viewvc/commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/util/MapSetExecutor.java?rev=885514&r1=885513&r2=885514&view=diff
==============================================================================
--- commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/util/MapSetExecutor.java (original)
+++ commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/util/MapSetExecutor.java Mon Nov 30 17:43:42 2009
@@ -47,22 +47,22 @@
}
/** {@inheritDoc} */
- @SuppressWarnings("unchecked")
@Override
public Object execute(final Object obj, Object value)
throws IllegalAccessException, InvocationTargetException {
+ @SuppressWarnings("unchecked") // ctor only allows Map instances - see discover() method
final Map<Object,Object> map = ((Map<Object, Object>) obj);
map.put(property, value);
return value;
}
/** {@inheritDoc} */
- @SuppressWarnings("unchecked")
@Override
public Object tryExecute(final Object obj, Object key, Object value) {
if (obj != null && method != null
&& objectClass.equals(obj.getClass())
&& (key == null || property.getClass().equals(key.getClass()))) {
+ @SuppressWarnings("unchecked") // ctor only allows Map instances - see discover() method
final Map<Object,Object> map = ((Map<Object, Object>) obj);
map.put(key, value);
return value;