From 7badd53b9fd896cb1c1da9c77b228d37ca0b68d2 Mon Sep 17 00:00:00 2001 From: Mark Fisher Date: Wed, 19 Nov 2008 17:37:39 +0000 Subject: [PATCH] INT-481 --- .../config/xml/ThreadPoolTaskExecutorParser.java | 6 +++++- .../integration/config/xml/spring-integration-1.0.xsd | 9 ++++++++- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/org.springframework.integration/src/main/java/org/springframework/integration/config/xml/ThreadPoolTaskExecutorParser.java b/org.springframework.integration/src/main/java/org/springframework/integration/config/xml/ThreadPoolTaskExecutorParser.java index 8d660496e6..43839c4a73 100644 --- a/org.springframework.integration/src/main/java/org/springframework/integration/config/xml/ThreadPoolTaskExecutorParser.java +++ b/org.springframework.integration/src/main/java/org/springframework/integration/config/xml/ThreadPoolTaskExecutorParser.java @@ -24,6 +24,7 @@ import org.w3c.dom.Element; import org.springframework.beans.factory.support.BeanDefinitionBuilder; import org.springframework.beans.factory.xml.AbstractSimpleBeanDefinitionParser; import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor; +import org.springframework.util.StringUtils; /** * @author Mark Fisher @@ -55,7 +56,10 @@ public class ThreadPoolTaskExecutorParser extends AbstractSimpleBeanDefinitionPa String policyName = element.getAttribute(REJECTION_POLICY_ATTRIBUTE); builder.addPropertyValue("rejectedExecutionHandler", createRejectedExecutionHandler(policyName)); builder.addPropertyValue("corePoolSize", element.getAttribute(CORE_SIZE_ATTRIBUTE)); - builder.addPropertyValue("maxPoolSize", element.getAttribute(MAX_SIZE_ATTRIBUTE)); + String maxSize = element.getAttribute(MAX_SIZE_ATTRIBUTE); + if (StringUtils.hasText(maxSize)) { + builder.addPropertyValue("maxPoolSize", maxSize); + } } private RejectedExecutionHandler createRejectedExecutionHandler(String policyName) { diff --git a/org.springframework.integration/src/main/java/org/springframework/integration/config/xml/spring-integration-1.0.xsd b/org.springframework.integration/src/main/java/org/springframework/integration/config/xml/spring-integration-1.0.xsd index 06073075c0..3843799446 100644 --- a/org.springframework.integration/src/main/java/org/springframework/integration/config/xml/spring-integration-1.0.xsd +++ b/org.springframework.integration/src/main/java/org/springframework/integration/config/xml/spring-integration-1.0.xsd @@ -345,7 +345,14 @@ - + + + + Specifies the maximum pool size in order to limit the number of concurrent tasks. + Otherwise, the default will be Integer.MAX_VALUE. + + +