This is an automated email from the ASF dual-hosted git repository. ggregory pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/commons-pool.git
commit 8f96e89f6e50d0cc2b3043d9add727d021cf0150 Author: Gary Gregory <garydgreg...@gmail.com> AuthorDate: Mon Oct 10 09:46:55 2022 -0400 Fail-fast on null input for DefaultPooledObjectInfo.DefaultPooledObjectInfo(PooledObject) with a NullPointerException. --- src/changes/changes.xml | 3 +++ .../java/org/apache/commons/pool2/impl/DefaultPooledObjectInfo.java | 4 +++- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/src/changes/changes.xml b/src/changes/changes.xml index 1367934f..4ab8a73a 100644 --- a/src/changes/changes.xml +++ b/src/changes/changes.xml @@ -67,6 +67,9 @@ The <action> type attribute can be add,update,fix,remove. <action dev="ggregory" type="fix" due-to="Zhenyu Luo, Gary Gregory" issue="POOL-408"> A typo of KeyedPooledObjectFactory on the site and Javadoc. </action> + <action dev="ggregory" type="fix" due-to="Gary Gregory"> + Fail-fast on null input for DefaultPooledObjectInfo.DefaultPooledObjectInfo(PooledObject) with a NullPointerException. + </action> <!-- ADD --> <action dev="ggregory" type="add" due-to="Gary Gregory"> Add PooledObject.getFullDuration(). diff --git a/src/main/java/org/apache/commons/pool2/impl/DefaultPooledObjectInfo.java b/src/main/java/org/apache/commons/pool2/impl/DefaultPooledObjectInfo.java index c284e931..4c06ddfe 100644 --- a/src/main/java/org/apache/commons/pool2/impl/DefaultPooledObjectInfo.java +++ b/src/main/java/org/apache/commons/pool2/impl/DefaultPooledObjectInfo.java @@ -19,6 +19,7 @@ package org.apache.commons.pool2.impl; import java.io.PrintWriter; import java.io.StringWriter; import java.text.SimpleDateFormat; +import java.util.Objects; import org.apache.commons.pool2.PooledObject; @@ -38,9 +39,10 @@ public class DefaultPooledObjectInfo implements DefaultPooledObjectInfoMBean { * Constructs a new instance for the given pooled object. * * @param pooledObject The pooled object that this instance will represent + * @throws NullPointerException if {@code obj} is {@code null} */ public DefaultPooledObjectInfo(final PooledObject<?> pooledObject) { - this.pooledObject = pooledObject; + this.pooledObject = Objects.requireNonNull(pooledObject, "pooledObject"); } @Override