diff --git a/spring-integration-amqp/src/main/java/org/springframework/integration/amqp/config/AbstractAmqpInboundAdapterParser.java b/spring-integration-amqp/src/main/java/org/springframework/integration/amqp/config/AbstractAmqpInboundAdapterParser.java
index 94fea2a4bc..d5e3914ba2 100644
--- a/spring-integration-amqp/src/main/java/org/springframework/integration/amqp/config/AbstractAmqpInboundAdapterParser.java
+++ b/spring-integration-amqp/src/main/java/org/springframework/integration/amqp/config/AbstractAmqpInboundAdapterParser.java
@@ -101,6 +101,8 @@ abstract class AbstractAmqpInboundAdapterParser extends AbstractSingleBeanDefini
IntegrationNamespaceUtils.setReferenceIfAttributeDefined(builder, element, "message-converter");
IntegrationNamespaceUtils.setReferenceIfAttributeDefined(builder, element, "header-mapper");
IntegrationNamespaceUtils.setReferenceIfAttributeDefined(builder, element, "error-channel");
+ IntegrationNamespaceUtils.setValueIfAttributeDefined(builder, element, "auto-startup");
+ IntegrationNamespaceUtils.setValueIfAttributeDefined(builder, element, "phase");
this.configureChannels(element, parserContext, builder);
}
diff --git a/spring-integration-amqp/src/main/resources/org/springframework/integration/amqp/config/spring-integration-amqp-2.1.xsd b/spring-integration-amqp/src/main/resources/org/springframework/integration/amqp/config/spring-integration-amqp-2.1.xsd
index bd1e530ccb..552420bb75 100644
--- a/spring-integration-amqp/src/main/resources/org/springframework/integration/amqp/config/spring-integration-amqp-2.1.xsd
+++ b/spring-integration-amqp/src/main/resources/org/springframework/integration/amqp/config/spring-integration-amqp-2.1.xsd
@@ -379,6 +379,13 @@
+
+
+
+
+
diff --git a/spring-integration-amqp/src/test/java/org/springframework/integration/amqp/config/AmqpInboundChannelAdapterParserTests-context.xml b/spring-integration-amqp/src/test/java/org/springframework/integration/amqp/config/AmqpInboundChannelAdapterParserTests-context.xml
index 32cb37f5d0..31c3c05647 100644
--- a/spring-integration-amqp/src/test/java/org/springframework/integration/amqp/config/AmqpInboundChannelAdapterParserTests-context.xml
+++ b/spring-integration-amqp/src/test/java/org/springframework/integration/amqp/config/AmqpInboundChannelAdapterParserTests-context.xml
@@ -11,6 +11,9 @@
+
+
diff --git a/spring-integration-amqp/src/test/java/org/springframework/integration/amqp/config/AmqpInboundChannelAdapterParserTests.java b/spring-integration-amqp/src/test/java/org/springframework/integration/amqp/config/AmqpInboundChannelAdapterParserTests.java
index d6ffd7749e..78c330f426 100644
--- a/spring-integration-amqp/src/test/java/org/springframework/integration/amqp/config/AmqpInboundChannelAdapterParserTests.java
+++ b/spring-integration-amqp/src/test/java/org/springframework/integration/amqp/config/AmqpInboundChannelAdapterParserTests.java
@@ -25,6 +25,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.ApplicationContext;
import org.springframework.integration.amqp.inbound.AmqpInboundChannelAdapter;
import org.springframework.integration.channel.DirectChannel;
+import org.springframework.integration.test.util.TestUtils;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
@@ -45,6 +46,14 @@ public class AmqpInboundChannelAdapterParserTests {
Object adapter = context.getBean("rabbitInbound.adapter");
assertEquals(DirectChannel.class, channel.getClass());
assertEquals(AmqpInboundChannelAdapter.class, adapter.getClass());
+ assertEquals(Boolean.TRUE, TestUtils.getPropertyValue(adapter, "autoStartup"));
+ assertEquals(0, TestUtils.getPropertyValue(adapter, "phase"));
}
+ @Test
+ public void verifyLifeCycle() {
+ Object adapter = context.getBean("autoStartFalse.adapter");
+ assertEquals(Boolean.FALSE, TestUtils.getPropertyValue(adapter, "autoStartup"));
+ assertEquals(123, TestUtils.getPropertyValue(adapter, "phase"));
+ }
}
diff --git a/spring-integration-amqp/src/test/java/org/springframework/integration/amqp/config/AmqpInboundGatewayParserTests-context.xml b/spring-integration-amqp/src/test/java/org/springframework/integration/amqp/config/AmqpInboundGatewayParserTests-context.xml
index a8246faa01..338e7f9e7a 100644
--- a/spring-integration-amqp/src/test/java/org/springframework/integration/amqp/config/AmqpInboundGatewayParserTests-context.xml
+++ b/spring-integration-amqp/src/test/java/org/springframework/integration/amqp/config/AmqpInboundGatewayParserTests-context.xml
@@ -20,4 +20,8 @@
+
+
diff --git a/spring-integration-amqp/src/test/java/org/springframework/integration/amqp/config/AmqpInboundGatewayParserTests.java b/spring-integration-amqp/src/test/java/org/springframework/integration/amqp/config/AmqpInboundGatewayParserTests.java
index 40b31187fa..3fb635a7ee 100644
--- a/spring-integration-amqp/src/test/java/org/springframework/integration/amqp/config/AmqpInboundGatewayParserTests.java
+++ b/spring-integration-amqp/src/test/java/org/springframework/integration/amqp/config/AmqpInboundGatewayParserTests.java
@@ -16,6 +16,7 @@
package org.springframework.integration.amqp.config;
+import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertSame;
import org.junit.Test;
@@ -48,8 +49,16 @@ public class AmqpInboundGatewayParserTests {
TestConverter testConverter = context.getBean("testConverter", TestConverter.class);
assertSame(testConverter, gatewayConverter);
assertSame(testConverter, templateConverter);
+ assertEquals(Boolean.TRUE, TestUtils.getPropertyValue(gateway, "autoStartup"));
+ assertEquals(0, TestUtils.getPropertyValue(gateway, "phase"));
}
+ @Test
+ public void verifyLifeCycle() {
+ Object gateway = context.getBean("autoStartFalseGateway");
+ assertEquals(Boolean.FALSE, TestUtils.getPropertyValue(gateway, "autoStartup"));
+ assertEquals(123, TestUtils.getPropertyValue(gateway, "phase"));
+ }
private static class TestConverter extends SimpleMessageConverter {}
diff --git a/spring-integration-amqp/src/test/java/org/springframework/integration/amqp/config/GatewayEchoTests.java b/spring-integration-amqp/src/test/java/org/springframework/integration/amqp/config/GatewayEchoTests.java
index 6a9a168a10..2f7c8231ce 100644
--- a/spring-integration-amqp/src/test/java/org/springframework/integration/amqp/config/GatewayEchoTests.java
+++ b/spring-integration-amqp/src/test/java/org/springframework/integration/amqp/config/GatewayEchoTests.java
@@ -16,6 +16,7 @@
package org.springframework.integration.amqp.config;
+import org.junit.Test;
import org.springframework.context.support.ClassPathXmlApplicationContext;
/**
@@ -28,4 +29,9 @@ public class GatewayEchoTests {
new ClassPathXmlApplicationContext("GatewayEchoTests-context.xml", GatewayEchoTests.class);
}
+ @Test
+ /**
+ * Dummy test to satisfy maven in some environments.
+ */
+ public void test() {}
}