From 6bee7a9997f9b1e100ba7998164da7c33c3f4e52 Mon Sep 17 00:00:00 2001 From: Mark Fisher Date: Sat, 19 Jan 2008 01:43:55 +0000 Subject: [PATCH] Added 'dispatcher-pool-size' attribute to the 'message-bus' element, and fixed namespace support for 'schedule' and 'concurrency' on endpoints. --- .../integration/config/EndpointParser.java | 15 ++++++++++----- .../integration/config/spring-integration-1.0.xsd | 5 +++-- 2 files changed, 13 insertions(+), 7 deletions(-) diff --git a/spring-integration-core/src/main/java/org/springframework/integration/config/EndpointParser.java b/spring-integration-core/src/main/java/org/springframework/integration/config/EndpointParser.java index e8e3786dd9..a04ad4bc49 100644 --- a/spring-integration-core/src/main/java/org/springframework/integration/config/EndpointParser.java +++ b/spring-integration-core/src/main/java/org/springframework/integration/config/EndpointParser.java @@ -78,6 +78,8 @@ public class EndpointParser implements BeanDefinitionParser { private static final String PERIOD_ATTRIBUTE = "period"; + private static final String SCHEDULE_ELEMENT = "schedule"; + private static final String SCHEDULE_PROPERTY = "schedule"; private static final String CONCURRENCY_ELEMENT = "concurrency"; @@ -108,13 +110,16 @@ public class EndpointParser implements BeanDefinitionParser { if (child.getNodeType() == Node.ELEMENT_NODE) { String localName = child.getLocalName(); if (CONCURRENCY_ELEMENT.equals(localName)) { - parseConcurrencyPolicy((Element) child, subscriptionDef); + parseConcurrencyPolicy((Element) child, endpointDef); } else if (HANDLER_ELEMENT.equals(localName)) { String ref = ((Element) child).getAttribute(REF_ATTRIBUTE); String method = ((Element) child).getAttribute(METHOD_ATTRIBUTE); childHandlerRefs.add(this.parseHandlerAdapter(ref, method, parserContext)); } + else if (SCHEDULE_ELEMENT.equals(localName)) { + this.parseSchedule((Element) child, subscriptionDef); + } } } String subscriptionBeanName = parserContext.getReaderContext().generateBeanName(subscriptionDef); @@ -160,7 +165,7 @@ public class EndpointParser implements BeanDefinitionParser { return endpointDef; } - private void parseConcurrencyPolicy(Element concurrencyElement, RootBeanDefinition subscriptionDefinition) { + private void parseConcurrencyPolicy(Element concurrencyElement, RootBeanDefinition endpointDef) { ConcurrencyPolicy policy = new ConcurrencyPolicy(); String coreSize = concurrencyElement.getAttribute(CORE_SIZE_ATTRIBUTE); String maxSize = concurrencyElement.getAttribute(MAX_SIZE_ATTRIBUTE); @@ -170,16 +175,16 @@ public class EndpointParser implements BeanDefinitionParser { if (StringUtils.hasText(maxSize)) { policy.setMaxSize(Integer.parseInt(maxSize)); } - subscriptionDefinition.getPropertyValues().addPropertyValue(CONCURRENCY_POLICY_PROPERTY, policy); + endpointDef.getPropertyValues().addPropertyValue(CONCURRENCY_POLICY_PROPERTY, policy); } - private void parseSchedule(Element scheduleElement, RootBeanDefinition endpointDefinition) { + private void parseSchedule(Element scheduleElement, RootBeanDefinition subscriptionDef) { PollingSchedule schedule = new PollingSchedule(5); String period = scheduleElement.getAttribute(PERIOD_ATTRIBUTE); if (StringUtils.hasText(period)) { schedule.setPeriod(Integer.parseInt(period)); } - endpointDefinition.getPropertyValues().addPropertyValue(SCHEDULE_PROPERTY, schedule); + subscriptionDef.getPropertyValues().addPropertyValue(SCHEDULE_PROPERTY, schedule); } private String parseHandlerAdapter(String handlerRef, String handlerMethod, ParserContext parserContext) { diff --git a/spring-integration-core/src/main/java/org/springframework/integration/config/spring-integration-1.0.xsd b/spring-integration-core/src/main/java/org/springframework/integration/config/spring-integration-1.0.xsd index 6bf2166e9e..73996e8a65 100644 --- a/spring-integration-core/src/main/java/org/springframework/integration/config/spring-integration-1.0.xsd +++ b/spring-integration-core/src/main/java/org/springframework/integration/config/spring-integration-1.0.xsd @@ -26,6 +26,7 @@ + @@ -101,7 +102,7 @@ - + @@ -124,7 +125,7 @@ - +