Inconsistent Javadoc comment and code in removeAll(Collection<E>,
Collection<?>) in org.apache.commons.collections.ListUtils
----------------------------------------------------------------------------------------------------------------------------
Key: COLLECTIONS-401
URL: https://issues.apache.org/jira/browse/COLLECTIONS-401
Project: Commons Collections
Issue Type: Bug
Components: Collection
Affects Versions: 3.2.1
Reporter: SHIN HWEI TAN
The Javadoc comment below states that the method "throws NullPointerException
if either parameter is null".
/*......
*
* @throws NullPointerException if either parameter is null
*/
public static <E> List<E> removeAll(Collection<E> collection,
Collection<?> remove) {
..
}
However, when called with two null collections (i.e.,
"removeAll((Collection)null, (Collection)null)"), the method executes normally
without throwing any exception.
Suggested Fixes:
1. Add code "if (collection == null) throw NullPointerException();" at the
beginning of the method body.
or
2. Remove "@throws NullPointerException if either parameter is null" from the
Javadoc.
or
3. Change "@throws NullPointerException if either parameter is null" to
"@throws NullPointerException if the first collection is null or (the first
collection is non-empty and the second collection is null)".
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira