This is an automated email from the ASF dual-hosted git repository.
garydgregory pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/commons-collections.git
The following commit(s) were added to refs/heads/master by this push:
new 4c646f57c Add messages when throwing NullPointerException.
4c646f57c is described below
commit 4c646f57c3f931038040b5c6e1838347c1043010
Author: Gary Gregory <[email protected]>
AuthorDate: Wed Jul 22 11:03:14 2026 -0400
Add messages when throwing NullPointerException.
---
src/changes/changes.xml | 1 +
.../collections4/iterators/TransformIterator.java | 2 +-
.../apache/commons/collections4/list/LazyList.java | 4 +-
.../collections4/map/AbstractLinkedMap.java | 2 +-
.../map/ConcurrentReferenceHashMap.java | 16 +++----
.../collections4/map/PassiveExpiringMap.java | 18 +++----
.../collections4/properties/OrderedProperties.java | 2 +-
.../collections4/properties/PropertiesFactory.java | 56 +++++++++++-----------
.../bloomfilter/DefaultIndexExtractorTest.java | 6 +--
9 files changed, 52 insertions(+), 55 deletions(-)
diff --git a/src/changes/changes.xml b/src/changes/changes.xml
index 63e91eaa0..992147066 100644
--- a/src/changes/changes.xml
+++ b/src/changes/changes.xml
@@ -84,6 +84,7 @@
<action type="fix" dev="ggregory" due-to="Naveed Khan, Gary
Gregory">CollectionUtils.collate(Iterable, Iterable, Comparator, boolean) does
not remove duplicate null elements when includeDuplicates is false
(#715).</action>
<action type="fix" dev="ggregory" due-to="Naveed Khan, Gary Gregory">Do
not register a value collection until an add succeeds (#717).</action>
<action type="fix" dev="ggregory" due-to="Naveed Khan, Gary
Gregory">Increment modCount after the bounds check in TreeList add and remove
(#716).</action>
+ <action type="fix" dev="ggregory" due-to="Gary Gregory">Add messages when
throwing NullPointerException.</action>
<!-- ADD -->
<action type="add" dev="ggregory" due-to="Gary Gregory">Add generics to
UnmodifiableIterator for the wrapped type.</action>
<action type="add" dev="ggregory" due-to="Gary Gregory">Add a Maven
benchmark profile for JMH.</action>
diff --git
a/src/main/java/org/apache/commons/collections4/iterators/TransformIterator.java
b/src/main/java/org/apache/commons/collections4/iterators/TransformIterator.java
index 27f4bb9b5..8fa07d7e1 100644
---
a/src/main/java/org/apache/commons/collections4/iterators/TransformIterator.java
+++
b/src/main/java/org/apache/commons/collections4/iterators/TransformIterator.java
@@ -60,7 +60,7 @@ public class TransformIterator<I, O> implements Iterator<O> {
* @param transformer The transformer to use, may be null to pass elements
through unchanged
*/
public TransformIterator(final Iterator<? extends I> iterator, final
Transformer<? super I, ? extends O> transformer) {
- this.iterator = Objects.requireNonNull(iterator);
+ this.iterator = Objects.requireNonNull(iterator, "iterator");
this.transformer = transformer;
}
diff --git a/src/main/java/org/apache/commons/collections4/list/LazyList.java
b/src/main/java/org/apache/commons/collections4/list/LazyList.java
index e046b2c72..18a9a9866 100644
--- a/src/main/java/org/apache/commons/collections4/list/LazyList.java
+++ b/src/main/java/org/apache/commons/collections4/list/LazyList.java
@@ -113,7 +113,7 @@ public class LazyList<E> extends
AbstractSerializableListDecorator<E> {
*/
protected LazyList(final List<E> list, final Factory<? extends E> factory)
{
super(list);
- this.factory = Objects.requireNonNull(factory);
+ this.factory = Objects.requireNonNull(factory, "factory");
this.transformer = null;
}
@@ -127,7 +127,7 @@ public class LazyList<E> extends
AbstractSerializableListDecorator<E> {
protected LazyList(final List<E> list, final Transformer<Integer, ?
extends E> transformer) {
super(list);
this.factory = null;
- this.transformer = Objects.requireNonNull(transformer);
+ this.transformer = Objects.requireNonNull(transformer, "transformer");
}
private E element(final int index) {
diff --git
a/src/main/java/org/apache/commons/collections4/map/AbstractLinkedMap.java
b/src/main/java/org/apache/commons/collections4/map/AbstractLinkedMap.java
index 4cd6c9a7c..d0b51024a 100644
--- a/src/main/java/org/apache/commons/collections4/map/AbstractLinkedMap.java
+++ b/src/main/java/org/apache/commons/collections4/map/AbstractLinkedMap.java
@@ -186,7 +186,7 @@ public abstract class AbstractLinkedMap<K, V> extends
AbstractHashedMap<K, V> im
* @param parent The parent AbstractLinkedMap.
*/
protected LinkIterator(final AbstractLinkedMap<K, V> parent) {
- this.parent = Objects.requireNonNull(parent);
+ this.parent = Objects.requireNonNull(parent, "parent");
this.next = parent.header.after;
this.expectedModCount = parent.modCount;
}
diff --git
a/src/main/java/org/apache/commons/collections4/map/ConcurrentReferenceHashMap.java
b/src/main/java/org/apache/commons/collections4/map/ConcurrentReferenceHashMap.java
index 7f83e7c43..5ada9a46a 100644
---
a/src/main/java/org/apache/commons/collections4/map/ConcurrentReferenceHashMap.java
+++
b/src/main/java/org/apache/commons/collections4/map/ConcurrentReferenceHashMap.java
@@ -1495,9 +1495,8 @@ public class ConcurrentReferenceHashMap<K, V> extends
AbstractMap<K, V> implemen
@Override
public V compute(final K key, final BiFunction<? super K, ? super V, ?
extends V> remappingFunction) {
- Objects.requireNonNull(key);
- Objects.requireNonNull(remappingFunction);
-
+ Objects.requireNonNull(key, "key");
+ Objects.requireNonNull(remappingFunction, "remappingFunction");
final int hash = hashOf(key);
final Segment<K, V> segment = segmentFor(hash);
return segment.apply(key, hash, remappingFunction);
@@ -1523,9 +1522,8 @@ public class ConcurrentReferenceHashMap<K, V> extends
AbstractMap<K, V> implemen
*/
@Override
public V computeIfAbsent(final K key, final Function<? super K, ? extends
V> mappingFunction) {
- Objects.requireNonNull(key);
- Objects.requireNonNull(mappingFunction);
-
+ Objects.requireNonNull(key, "key");
+ Objects.requireNonNull(mappingFunction, "mappingFunction");
final int hash = hashOf(key);
final Segment<K, V> segment = segmentFor(hash);
final V v = segment.get(key, hash);
@@ -1534,16 +1532,14 @@ public class ConcurrentReferenceHashMap<K, V> extends
AbstractMap<K, V> implemen
@Override
public V computeIfPresent(final K key, final BiFunction<? super K, ? super
V, ? extends V> remappingFunction) {
- Objects.requireNonNull(key);
- Objects.requireNonNull(remappingFunction);
-
+ Objects.requireNonNull(key, "key");
+ Objects.requireNonNull(remappingFunction, "remappingFunction");
final int hash = hashOf(key);
final Segment<K, V> segment = segmentFor(hash);
final V v = segment.get(key, hash);
if (v == null) {
return null;
}
-
return segmentFor(hash).applyIfPresent(key, hash, remappingFunction);
}
diff --git
a/src/main/java/org/apache/commons/collections4/map/PassiveExpiringMap.java
b/src/main/java/org/apache/commons/collections4/map/PassiveExpiringMap.java
index efb28257a..55f2ef7a6 100644
--- a/src/main/java/org/apache/commons/collections4/map/PassiveExpiringMap.java
+++ b/src/main/java/org/apache/commons/collections4/map/PassiveExpiringMap.java
@@ -213,7 +213,7 @@ public class PassiveExpiringMap<K, V>
@Override
public boolean removeAll(final Collection<?> coll) {
- Objects.requireNonNull(coll);
+ Objects.requireNonNull(coll, "coll");
boolean changed = false;
if (size() > coll.size()) {
for (final Object obj : coll) {
@@ -233,7 +233,7 @@ public class PassiveExpiringMap<K, V>
@Override
public boolean removeIf(final Predicate<? super Entry<K, V>> filter) {
- Objects.requireNonNull(filter);
+ Objects.requireNonNull(filter, "filter");
boolean changed = false;
final Iterator<Entry<K, V>> it = iterator();
while (it.hasNext()) {
@@ -247,7 +247,7 @@ public class PassiveExpiringMap<K, V>
@Override
public boolean retainAll(final Collection<?> coll) {
- Objects.requireNonNull(coll);
+ Objects.requireNonNull(coll, "coll");
boolean changed = false;
final Iterator<?> it = iterator();
while (it.hasNext()) {
@@ -371,7 +371,7 @@ public class PassiveExpiringMap<K, V>
@Override
public boolean removeAll(final Collection<?> coll) {
- Objects.requireNonNull(coll);
+ Objects.requireNonNull(coll, "coll");
boolean changed = false;
if (size() > coll.size()) {
for (final Object obj : coll) {
@@ -391,7 +391,7 @@ public class PassiveExpiringMap<K, V>
@Override
public boolean removeIf(final Predicate<? super K> filter) {
- Objects.requireNonNull(filter);
+ Objects.requireNonNull(filter, "filter");
boolean changed = false;
final Iterator<K> it = iterator();
while (it.hasNext()) {
@@ -405,7 +405,7 @@ public class PassiveExpiringMap<K, V>
@Override
public boolean retainAll(final Collection<?> coll) {
- Objects.requireNonNull(coll);
+ Objects.requireNonNull(coll, "coll");
boolean changed = false;
final Iterator<?> it = iterator();
while (it.hasNext()) {
@@ -510,7 +510,7 @@ public class PassiveExpiringMap<K, V>
@Override
public boolean removeAll(final Collection<?> coll) {
- Objects.requireNonNull(coll);
+ Objects.requireNonNull(coll, "coll");
boolean changed = false;
final Iterator<?> it = iterator();
while (it.hasNext()) {
@@ -524,7 +524,7 @@ public class PassiveExpiringMap<K, V>
@Override
public boolean removeIf(final Predicate<? super V> filter) {
- Objects.requireNonNull(filter);
+ Objects.requireNonNull(filter, "filter");
boolean changed = false;
final Iterator<V> it = iterator();
while (it.hasNext()) {
@@ -538,7 +538,7 @@ public class PassiveExpiringMap<K, V>
@Override
public boolean retainAll(final Collection<?> coll) {
- Objects.requireNonNull(coll);
+ Objects.requireNonNull(coll, "coll");
boolean changed = false;
final Iterator<?> it = iterator();
while (it.hasNext()) {
diff --git
a/src/main/java/org/apache/commons/collections4/properties/OrderedProperties.java
b/src/main/java/org/apache/commons/collections4/properties/OrderedProperties.java
index 4bd21c188..c6bd53d37 100644
---
a/src/main/java/org/apache/commons/collections4/properties/OrderedProperties.java
+++
b/src/main/java/org/apache/commons/collections4/properties/OrderedProperties.java
@@ -108,7 +108,7 @@ public class OrderedProperties extends Properties {
@Override
public synchronized void forEach(final BiConsumer<? super Object, ? super
Object> action) {
- Objects.requireNonNull(action);
+ Objects.requireNonNull(action, "action");
orderedKeys.forEach(k -> action.accept(k, get(k)));
}
diff --git
a/src/main/java/org/apache/commons/collections4/properties/PropertiesFactory.java
b/src/main/java/org/apache/commons/collections4/properties/PropertiesFactory.java
index a470e63db..e12192c66 100644
---
a/src/main/java/org/apache/commons/collections4/properties/PropertiesFactory.java
+++
b/src/main/java/org/apache/commons/collections4/properties/PropertiesFactory.java
@@ -53,21 +53,21 @@ public class PropertiesFactory extends
AbstractPropertiesFactory<Properties> {
@Override
public synchronized Object compute(final Object key,
final BiFunction<? super Object, ? super Object, ? extends Object>
remappingFunction) {
- Objects.requireNonNull(key);
+ Objects.requireNonNull(key, "key");
throw new UnsupportedOperationException();
}
@Override
public synchronized Object computeIfAbsent(final Object key,
final Function<? super Object, ? extends Object> mappingFunction) {
- Objects.requireNonNull(key);
+ Objects.requireNonNull(key, "key");
throw new UnsupportedOperationException();
}
@Override
public synchronized Object computeIfPresent(final Object key,
final BiFunction<? super Object, ? super Object, ? extends Object>
remappingFunction) {
- Objects.requireNonNull(key);
+ Objects.requireNonNull(key, "key");
throw new UnsupportedOperationException();
}
@@ -103,7 +103,7 @@ public class PropertiesFactory extends
AbstractPropertiesFactory<Properties> {
@Override
public synchronized void forEach(final BiConsumer<? super Object, ?
super Object> action) {
- Objects.requireNonNull(action);
+ Objects.requireNonNull(action, "action");
}
@Override
@@ -152,8 +152,8 @@ public class PropertiesFactory extends
AbstractPropertiesFactory<Properties> {
*/
@SuppressWarnings("resource")
@Override
- public synchronized void load(final InputStream inStream) throws
IOException {
- Objects.requireNonNull(inStream);
+ public synchronized void load(final InputStream inputStream) throws
IOException {
+ Objects.requireNonNull(inputStream, "inputStream");
throw new UnsupportedOperationException();
}
@@ -164,7 +164,7 @@ public class PropertiesFactory extends
AbstractPropertiesFactory<Properties> {
@SuppressWarnings("resource")
@Override
public synchronized void load(final Reader reader) throws IOException {
- Objects.requireNonNull(reader);
+ Objects.requireNonNull(reader, "reader");
throw new UnsupportedOperationException();
}
@@ -174,17 +174,17 @@ public class PropertiesFactory extends
AbstractPropertiesFactory<Properties> {
*/
@SuppressWarnings("resource")
@Override
- public synchronized void loadFromXML(final InputStream in)
+ public synchronized void loadFromXML(final InputStream inputStream)
throws IOException, InvalidPropertiesFormatException {
- Objects.requireNonNull(in);
+ Objects.requireNonNull(inputStream, "inputStream");
throw new UnsupportedOperationException();
}
@Override
public synchronized Object merge(final Object key, final Object value,
final BiFunction<? super Object, ? super Object, ? extends Object>
remappingFunction) {
- Objects.requireNonNull(key);
- Objects.requireNonNull(value);
+ Objects.requireNonNull(key, "key");
+ Objects.requireNonNull(value, "value");
throw new UnsupportedOperationException();
}
@@ -195,21 +195,21 @@ public class PropertiesFactory extends
AbstractPropertiesFactory<Properties> {
@Override
public synchronized Object put(final Object key, final Object value) {
- Objects.requireNonNull(key);
- Objects.requireNonNull(value);
+ Objects.requireNonNull(key, "key");
+ Objects.requireNonNull(value, "value");
throw new UnsupportedOperationException();
}
@Override
- public synchronized void putAll(final Map<? extends Object, ? extends
Object> t) {
- Objects.requireNonNull(t);
+ public synchronized void putAll(final Map<? extends Object, ? extends
Object> map) {
+ Objects.requireNonNull(map, "map");
throw new UnsupportedOperationException();
}
@Override
public synchronized Object putIfAbsent(final Object key, final Object
value) {
- Objects.requireNonNull(key);
- Objects.requireNonNull(value);
+ Objects.requireNonNull(key, "key");
+ Objects.requireNonNull(value, "value");
throw new UnsupportedOperationException();
}
@@ -220,43 +220,43 @@ public class PropertiesFactory extends
AbstractPropertiesFactory<Properties> {
@Override
public synchronized Object remove(final Object key) {
- Objects.requireNonNull(key);
+ Objects.requireNonNull(key, "key");
throw new UnsupportedOperationException();
}
@Override
public synchronized boolean remove(final Object key, final Object
value) {
- Objects.requireNonNull(key);
- Objects.requireNonNull(value);
+ Objects.requireNonNull(key, "key");
+ Objects.requireNonNull(value, "value");
throw new UnsupportedOperationException();
}
@Override
public synchronized Object replace(final Object key, final Object
value) {
- Objects.requireNonNull(key);
- Objects.requireNonNull(value);
+ Objects.requireNonNull(key, "key");
+ Objects.requireNonNull(value, "value");
throw new UnsupportedOperationException();
}
@Override
public synchronized boolean replace(final Object key, final Object
oldValue, final Object newValue) {
- Objects.requireNonNull(key);
- Objects.requireNonNull(oldValue);
- Objects.requireNonNull(newValue);
+ Objects.requireNonNull(key, "key");
+ Objects.requireNonNull(oldValue, "oldValue");
+ Objects.requireNonNull(newValue, "newValue");
throw new UnsupportedOperationException();
}
@Override
public synchronized void replaceAll(
final BiFunction<? super Object, ? super Object, ? extends Object>
function) {
- Objects.requireNonNull(function);
+ Objects.requireNonNull(function, "function");
throw new UnsupportedOperationException();
}
@Override
public synchronized Object setProperty(final String key, final String
value) {
- Objects.requireNonNull(key);
- Objects.requireNonNull(value);
+ Objects.requireNonNull(key, "key");
+ Objects.requireNonNull(value, "value");
throw new UnsupportedOperationException();
}
diff --git
a/src/test/java/org/apache/commons/collections4/bloomfilter/DefaultIndexExtractorTest.java
b/src/test/java/org/apache/commons/collections4/bloomfilter/DefaultIndexExtractorTest.java
index 203dec236..847fbd528 100644
---
a/src/test/java/org/apache/commons/collections4/bloomfilter/DefaultIndexExtractorTest.java
+++
b/src/test/java/org/apache/commons/collections4/bloomfilter/DefaultIndexExtractorTest.java
@@ -66,7 +66,7 @@ class DefaultIndexExtractorTest extends
AbstractIndexExtractorTest {
@Override
protected IndexExtractor createEmptyExtractor() {
return predicate -> {
- Objects.requireNonNull(predicate);
+ Objects.requireNonNull(predicate, "predicate");
return true;
};
}
@@ -74,7 +74,7 @@ class DefaultIndexExtractorTest extends
AbstractIndexExtractorTest {
@Override
protected IndexExtractor createExtractor() {
return predicate -> {
- Objects.requireNonNull(predicate);
+ Objects.requireNonNull(predicate, "predicate");
for (final int i : values) {
if (!predicate.test(i)) {
return false;
@@ -105,7 +105,7 @@ class DefaultIndexExtractorTest extends
AbstractIndexExtractorTest {
void testEntries(final int size) {
final int[] values = IntStream.range(0, size).toArray();
final IndexExtractor indexExtractor = predicate -> {
- Objects.requireNonNull(predicate);
+ Objects.requireNonNull(predicate, "predicate");
for (final int i : values) {
if (!predicate.test(i)) {
return false;