While working on gh-5309, a regression was introduced and fixed right the
way on master. Unfortunately, the fix wasn't applied to `1.3.x` as it
should have been.

This commit applies 6dd8415 to `1.3.x`

Closes gh-5901
pull/5887/merge
Stephane Nicoll 9 years ago
parent 3891b242a3
commit a4ba8f61c9

@ -39,7 +39,6 @@ import org.springframework.integration.monitor.IntegrationMBeanExporter;
@Configuration
@ConditionalOnClass(EnableIntegration.class)
@AutoConfigureAfter(JmxAutoConfiguration.class)
@ConditionalOnProperty(prefix = "spring.jmx", name = "enabled", havingValue = "true", matchIfMissing = true)
public class IntegrationAutoConfiguration {
@Configuration
@ -50,6 +49,7 @@ public class IntegrationAutoConfiguration {
@Configuration
@ConditionalOnClass(EnableIntegrationMBeanExport.class)
@ConditionalOnMissingBean(value = IntegrationMBeanExporter.class, search = SearchStrategy.CURRENT)
@ConditionalOnProperty(prefix = "spring.jmx", name = "enabled", havingValue = "true", matchIfMissing = true)
@EnableIntegrationMBeanExport(defaultDomain = "${spring.jmx.default-domain:}", server = "${spring.jmx.server:mbeanServer}")
protected static class IntegrationJmxConfiguration {
}

@ -30,6 +30,7 @@ import org.springframework.context.annotation.AnnotationConfigApplicationContext
import org.springframework.integration.support.channel.HeaderChannelRegistry;
import org.springframework.test.context.support.TestPropertySourceUtils;
import static org.hamcrest.Matchers.hasSize;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNotNull;
@ -94,6 +95,29 @@ public class IntegrationAutoConfigurationTests {
this.context.close();
}
@Test
public void jmxIntegrationEnabledByDefault() {
load();
MBeanServer mBeanServer = this.context.getBean(MBeanServer.class);
assertDomains(mBeanServer, true, "org.springframework.integration",
"org.springframework.integration.monitor");
}
@Test
public void disableJmxIntegration() {
load("spring.jmx.enabled=false");
assertEquals(this.context.getBeansOfType(MBeanServer.class), hasSize(0));
}
@Test
public void customizeJmxDomain() {
load("spring.jmx.default-domain=org.foo");
MBeanServer mBeanServer = this.context.getBean(MBeanServer.class);
assertDomains(mBeanServer, true, "org.foo");
assertDomains(mBeanServer, false, "org.springframework.integration",
"org.springframework.integration.monitor");
}
private static void assertDomains(MBeanServer mBeanServer, boolean expected,
String... domains) {
List<String> actual = Arrays.asList(mBeanServer.getDomains());

Loading…
Cancel
Save