From 7ea59980167dba1984f11d0217ce417a0f90564c Mon Sep 17 00:00:00 2001 From: Gary Russell Date: Tue, 20 Aug 2013 11:26:18 -0400 Subject: [PATCH] Fix while Block Formatting in SimplePool --- .../integration/util/SimplePool.java | 25 +++++++++++-------- 1 file changed, 14 insertions(+), 11 deletions(-) diff --git a/spring-integration-core/src/main/java/org/springframework/integration/util/SimplePool.java b/spring-integration-core/src/main/java/org/springframework/integration/util/SimplePool.java index 4bd7cbe96f..fd0370fdd2 100644 --- a/spring-integration-core/src/main/java/org/springframework/integration/util/SimplePool.java +++ b/spring-integration-core/src/main/java/org/springframework/integration/util/SimplePool.java @@ -26,6 +26,7 @@ import java.util.concurrent.atomic.AtomicInteger; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; + import org.springframework.integration.MessagingException; import org.springframework.util.Assert; @@ -92,18 +93,20 @@ public class SimplePool implements Pool { this.poolSize.addAndGet(delta); this.permits.release(delta); } - else while (delta < 0) { - if (!this.permits.tryAcquire()) { - break; + else { + while (delta < 0) { + if (!this.permits.tryAcquire()) { + break; + } + T item = this.available.poll(); + if (item == null) { + this.permits.release(); + break; + } + doRemoveItem(item); + this.poolSize.decrementAndGet(); + delta++; } - T item = this.available.poll(); - if (item == null) { - this.permits.release(); - break; - } - doRemoveItem(item); - this.poolSize.decrementAndGet(); - delta++; } if (delta < 0 && logger.isDebugEnabled()) { logger.debug(String.format("Pool is overcommitted by %d; items will be removed when returned", -delta));