This is an automated email from the ASF dual-hosted git repository.

ggregory pushed a commit to branch POOL_2_X
in repository https://gitbox.apache.org/repos/asf/commons-pool.git

commit 8740e2659501d957d512284d9db34616dd8ad255
Author: Gary Gregory <garydgreg...@gmail.com>
AuthorDate: Tue Jun 10 14:07:51 2025 -0400

    Use try-with-resources
---
 .../commons/pool2/impl/TestGenericObjectPool.java  | 94 +++++++++++-----------
 1 file changed, 47 insertions(+), 47 deletions(-)

diff --git 
a/src/test/java/org/apache/commons/pool2/impl/TestGenericObjectPool.java 
b/src/test/java/org/apache/commons/pool2/impl/TestGenericObjectPool.java
index 763ed306..1760676e 100644
--- a/src/test/java/org/apache/commons/pool2/impl/TestGenericObjectPool.java
+++ b/src/test/java/org/apache/commons/pool2/impl/TestGenericObjectPool.java
@@ -1962,30 +1962,30 @@ class TestGenericObjectPool extends TestBaseObjectPool {
         final DisconnectingWaiterFactory<String> factory = new 
DisconnectingWaiterFactory<>(DisconnectingWaiterFactory.DEFAULT_DISCONNECTED_CREATE_ACTION,
                 
DisconnectingWaiterFactory.DEFAULT_DISCONNECTED_LIFECYCLE_ACTION, obj -> false 
// all instances fail validation
         );
-        final GenericObjectPool<Waiter> pool = new 
GenericObjectPool<>(factory);
-        pool.setMaxWait(Duration.ofMillis(100));
-        pool.setTestOnReturn(true);
-        pool.setMaxTotal(1);
-        final Waiter w = pool.borrowObject();
         final AtomicBoolean failed = new AtomicBoolean();
-        final Thread t = new Thread(() -> {
-            try {
-                pool.borrowObject();
-            } catch (final Exception e) {
-                failed.set(true);
-            }
-        });
-        Thread.sleep(10);
-        t.start();
-        // t is blocked waiting on the deque
-        Thread.sleep(10);
-        factory.disconnect();
-        pool.returnObject(w); // validation fails, so no return
-        Thread.sleep(10);
-        factory.connect();
-        // Borrower should be able to be served now
-        t.join();
-        pool.close();
+        try (GenericObjectPool<Waiter> pool = new 
GenericObjectPool<>(factory)) {
+            pool.setMaxWait(Duration.ofMillis(100));
+            pool.setTestOnReturn(true);
+            pool.setMaxTotal(1);
+            final Waiter w = pool.borrowObject();
+            final Thread t = new Thread(() -> {
+                try {
+                    pool.borrowObject();
+                } catch (final Exception e) {
+                    failed.set(true);
+                }
+            });
+            Thread.sleep(10);
+            t.start();
+            // t is blocked waiting on the deque
+            Thread.sleep(10);
+            factory.disconnect();
+            pool.returnObject(w); // validation fails, so no return
+            Thread.sleep(10);
+            factory.connect();
+            // Borrower should be able to be served now
+            t.join();
+        }
         if (failed.get()) {
             fail("Borrower timed out waiting for an instance");
         }
@@ -2447,31 +2447,31 @@ class TestGenericObjectPool extends TestBaseObjectPool {
         final DisconnectingWaiterFactory<String> factory = new 
DisconnectingWaiterFactory<>(() -> null, // Override default to always return 
null from
                                                                                
                         // makeObject
                 
DisconnectingWaiterFactory.DEFAULT_DISCONNECTED_LIFECYCLE_ACTION, 
DisconnectingWaiterFactory.DEFAULT_DISCONNECTED_VALIDATION_ACTION);
-        final GenericObjectPool<Waiter> pool = new 
GenericObjectPool<>(factory);
-        pool.setTestOnBorrow(true);
-        pool.setMaxTotal(-1);
-        pool.setMinIdle(1);
-        // Disconnect the factory - will always return null in this state
-        factory.disconnect();
-        try {
-            pool.borrowObject();
-            fail("Expecting NullPointerException");
-        } catch (final NullPointerException ex) {
-            // expected
-        }
-        try {
-            pool.addObject();
-            fail("Expecting NullPointerException");
-        } catch (final NullPointerException ex2) {
-            // expected
-        }
-        try {
-            pool.ensureMinIdle();
-            fail("Expecting NullPointerException");
-        } catch (final NullPointerException ex3) {
-            // expected
+        try (GenericObjectPool<Waiter> pool = new 
GenericObjectPool<>(factory)) {
+            pool.setTestOnBorrow(true);
+            pool.setMaxTotal(-1);
+            pool.setMinIdle(1);
+            // Disconnect the factory - will always return null in this state
+            factory.disconnect();
+            try {
+                pool.borrowObject();
+                fail("Expecting NullPointerException");
+            } catch (final NullPointerException ex) {
+                // expected
+            }
+            try {
+                pool.addObject();
+                fail("Expecting NullPointerException");
+            } catch (final NullPointerException ex2) {
+                // expected
+            }
+            try {
+                pool.ensureMinIdle();
+                fail("Expecting NullPointerException");
+            } catch (final NullPointerException ex3) {
+                // expected
+            }
         }
-        pool.close();
     }
 
     /*

Reply via email to