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
The following commit(s) were added to refs/heads/master by this push: new 22b5193 Use lambdas. 22b5193 is described below commit 22b519353e291623678551314ffcd7fc8c781091 Author: Gary Gregory <garydgreg...@gmail.com> AuthorDate: Sun Jun 27 19:46:54 2021 -0400 Use lambdas. --- .../commons/pool2/impl/GenericKeyedObjectPool.java | 40 +++++----------------- 1 file changed, 9 insertions(+), 31 deletions(-) diff --git a/src/main/java/org/apache/commons/pool2/impl/GenericKeyedObjectPool.java b/src/main/java/org/apache/commons/pool2/impl/GenericKeyedObjectPool.java index d47d823..7dd3157 100644 --- a/src/main/java/org/apache/commons/pool2/impl/GenericKeyedObjectPool.java +++ b/src/main/java/org/apache/commons/pool2/impl/GenericKeyedObjectPool.java @@ -582,11 +582,7 @@ public class GenericKeyedObjectPool<K, T> extends BaseGenericObjectPool<T> */ @Override public void clear() { - final Iterator<K> iter = poolMap.keySet().iterator(); - - while (iter.hasNext()) { - clear(iter.next()); - } + poolMap.keySet().forEach(this::clear); } @@ -708,10 +704,7 @@ public class GenericKeyedObjectPool<K, T> extends BaseGenericObjectPool<T> jmxUnregister(); // Release any threads that were waiting for an object - final Iterator<ObjectDeque<T>> iter = poolMap.values().iterator(); - while (iter.hasNext()) { - iter.next().getIdleObjects().interuptTakeWaiters(); - } + poolMap.values().forEach(e -> e.getIdleObjects().interuptTakeWaiters()); // This clear cleans up the keys now any waiting threads have been // interrupted clear(); @@ -1219,14 +1212,7 @@ public class GenericKeyedObjectPool<K, T> extends BaseGenericObjectPool<T> @Override public int getNumIdle() { - final Iterator<ObjectDeque<T>> iter = poolMap.values().iterator(); - int result = 0; - - while (iter.hasNext()) { - result += iter.next().getIdleObjects().size(); - } - - return result; + return poolMap.values().stream().mapToInt(e -> e.getIdleObjects().size()).sum(); } @@ -1250,7 +1236,7 @@ public class GenericKeyedObjectPool<K, T> extends BaseGenericObjectPool<T> if (numTests >= 0) { return Math.min(numTests, totalIdle); } - return(int)(Math.ceil(totalIdle/Math.abs((double)numTests))); + return (int) (Math.ceil(totalIdle / Math.abs((double) numTests))); } /** @@ -1263,18 +1249,11 @@ public class GenericKeyedObjectPool<K, T> extends BaseGenericObjectPool<T> */ @Override public int getNumWaiters() { - int result = 0; - if (getBlockWhenExhausted()) { - final Iterator<ObjectDeque<T>> iter = poolMap.values().iterator(); - - while (iter.hasNext()) { - // Assume no overflow - result += iter.next().getIdleObjects().getTakeQueueLength(); - } + // Assume no overflow + return poolMap.values().stream().mapToInt(e -> e.getIdleObjects().getTakeQueueLength()).sum(); } - - return result; + return 0; } /** @@ -1377,12 +1356,11 @@ public class GenericKeyedObjectPool<K, T> extends BaseGenericObjectPool<T> * {@code false} */ private boolean hasBorrowWaiters() { - for (final Map.Entry<K, ObjectDeque<T>> entry : poolMap.entrySet()) { - final ObjectDeque<T> deque = entry.getValue(); + for (final ObjectDeque<T> deque : poolMap.values()) { if (deque != null) { final LinkedBlockingDeque<PooledObject<T>> pool = deque.getIdleObjects(); - if(pool.hasTakeWaiters()) { + if (pool.hasTakeWaiters()) { return true; } }