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 <[email protected]>
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;
}
}