diff --git a/org.springframework.integration/src/main/java/org/springframework/integration/config/IntegrationNamespaceUtils.java b/org.springframework.integration/src/main/java/org/springframework/integration/config/IntegrationNamespaceUtils.java index 51bbaefc70..acf3d3da09 100644 --- a/org.springframework.integration/src/main/java/org/springframework/integration/config/IntegrationNamespaceUtils.java +++ b/org.springframework.integration/src/main/java/org/springframework/integration/config/IntegrationNamespaceUtils.java @@ -148,6 +148,16 @@ public abstract class IntegrationNamespaceUtils { BeanDefinitionBuilder builder = BeanDefinitionBuilder.genericBeanDefinition(PollingDispatcher.class); Long period = Long.valueOf(element.getAttribute("period")); PollingSchedule schedule = new PollingSchedule(period); + String initialDelay = element.getAttribute("initial-delay"); + if (StringUtils.hasText(initialDelay)) { + schedule.setInitialDelay(Long.valueOf(initialDelay)); + } + if ("true".equals(element.getAttribute("fixed-rate").toLowerCase())) { + schedule.setFixedRate(true); + } + else { + schedule.setFixedRate(false); + } String templateBeanName = parseMessageExhangeTemplate(element, parserContext); builder.addConstructorArgReference(sourceBeanName); builder.addConstructorArgValue(schedule); diff --git a/org.springframework.integration/src/main/java/org/springframework/integration/config/spring-integration-core-1.0.xsd b/org.springframework.integration/src/main/java/org/springframework/integration/config/spring-integration-core-1.0.xsd index eaa5772f8b..b254b6156c 100644 --- a/org.springframework.integration/src/main/java/org/springframework/integration/config/spring-integration-core-1.0.xsd +++ b/org.springframework.integration/src/main/java/org/springframework/integration/config/spring-integration-core-1.0.xsd @@ -229,6 +229,8 @@ + +