diff --git a/org.springframework.integration/src/main/java/org/springframework/integration/config/xml/PollerParser.java b/org.springframework.integration/src/main/java/org/springframework/integration/config/xml/PollerParser.java index 92a6941b69..bee667cd0c 100644 --- a/org.springframework.integration/src/main/java/org/springframework/integration/config/xml/PollerParser.java +++ b/org.springframework.integration/src/main/java/org/springframework/integration/config/xml/PollerParser.java @@ -76,6 +76,7 @@ public class PollerParser extends AbstractBeanDefinitionParser { } configureTrigger(element, metadataBuilder, parserContext); IntegrationNamespaceUtils.setValueIfAttributeDefined(metadataBuilder, element, "max-messages-per-poll"); + IntegrationNamespaceUtils.setValueIfAttributeDefined(metadataBuilder, element, "receive-timeout"); Element adviceChainElement = DomUtils.getChildElementByTagName(element, "advice-chain"); if (adviceChainElement != null) { configureAdviceChain(adviceChainElement, metadataBuilder, parserContext); diff --git a/org.springframework.integration/src/test/java/org/springframework/integration/config/xml/PollerParserTests.java b/org.springframework.integration/src/test/java/org/springframework/integration/config/xml/PollerParserTests.java index 1af32aff97..5bc6bf257d 100644 --- a/org.springframework.integration/src/test/java/org/springframework/integration/config/xml/PollerParserTests.java +++ b/org.springframework.integration/src/test/java/org/springframework/integration/config/xml/PollerParserTests.java @@ -1,5 +1,5 @@ /* - * Copyright 2002-2008 the original author or authors. + * Copyright 2002-2009 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -78,4 +78,14 @@ public class PollerParserTests { assertEquals(context.getBean("adviceBean3"), metadata.getAdviceChain().get(2)); } + @Test + public void pollerWithReceiveTimeout() { + ApplicationContext context = new ClassPathXmlApplicationContext( + "pollerWithReceiveTimeout.xml", PollerParserTests.class); + Object poller = context.getBean("poller"); + assertNotNull(poller); + PollerMetadata metadata = (PollerMetadata) poller; + assertEquals(1234, metadata.getReceiveTimeout()); + } + } diff --git a/org.springframework.integration/src/test/java/org/springframework/integration/config/xml/pollerWithReceiveTimeout.xml b/org.springframework.integration/src/test/java/org/springframework/integration/config/xml/pollerWithReceiveTimeout.xml new file mode 100644 index 0000000000..70eedd6ccb --- /dev/null +++ b/org.springframework.integration/src/test/java/org/springframework/integration/config/xml/pollerWithReceiveTimeout.xml @@ -0,0 +1,14 @@ + + + + + + + +