Merge branch '3.3.x' into 3.4.x
Closes gh-45194
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 2012-2024 the original author or authors.
|
||||
* Copyright 2012-2025 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.
|
||||
@@ -23,7 +23,6 @@ import javax.sql.DataSource;
|
||||
|
||||
import io.rsocket.transport.netty.server.TcpServerTransport;
|
||||
|
||||
import org.springframework.beans.factory.BeanFactory;
|
||||
import org.springframework.boot.autoconfigure.AutoConfiguration;
|
||||
import org.springframework.boot.autoconfigure.AutoConfigureBefore;
|
||||
import org.springframework.boot.autoconfigure.condition.AnyNestedCondition;
|
||||
@@ -46,6 +45,7 @@ import org.springframework.boot.context.properties.PropertyMapper;
|
||||
import org.springframework.boot.context.properties.source.MutuallyExclusiveConfigurationPropertiesException;
|
||||
import org.springframework.boot.task.SimpleAsyncTaskSchedulerBuilder;
|
||||
import org.springframework.boot.task.ThreadPoolTaskSchedulerBuilder;
|
||||
import org.springframework.context.ApplicationContext;
|
||||
import org.springframework.context.annotation.Bean;
|
||||
import org.springframework.context.annotation.Conditional;
|
||||
import org.springframework.context.annotation.Configuration;
|
||||
@@ -208,14 +208,21 @@ public class IntegrationAutoConfiguration {
|
||||
protected static class IntegrationJmxConfiguration {
|
||||
|
||||
@Bean
|
||||
public IntegrationMBeanExporter integrationMbeanExporter(BeanFactory beanFactory, JmxProperties properties) {
|
||||
IntegrationMBeanExporter exporter = new IntegrationMBeanExporter();
|
||||
String defaultDomain = properties.getDefaultDomain();
|
||||
if (StringUtils.hasLength(defaultDomain)) {
|
||||
exporter.setDefaultDomain(defaultDomain);
|
||||
}
|
||||
exporter.setServer(beanFactory.getBean(properties.getServer(), MBeanServer.class));
|
||||
return exporter;
|
||||
public static IntegrationMBeanExporter integrationMbeanExporter(ApplicationContext applicationContext) {
|
||||
return new IntegrationMBeanExporter() {
|
||||
|
||||
@Override
|
||||
public void afterSingletonsInstantiated() {
|
||||
JmxProperties properties = applicationContext.getBean(JmxProperties.class);
|
||||
String defaultDomain = properties.getDefaultDomain();
|
||||
if (StringUtils.hasLength(defaultDomain)) {
|
||||
setDefaultDomain(defaultDomain);
|
||||
}
|
||||
setServer(applicationContext.getBean(properties.getServer(), MBeanServer.class));
|
||||
super.afterSingletonsInstantiated();
|
||||
}
|
||||
|
||||
};
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -149,7 +149,7 @@ class IntegrationAutoConfigurationTests {
|
||||
this.contextRunner.withPropertyValues("spring.jmx.enabled=true").run((context) -> {
|
||||
MBeanServer mBeanServer = context.getBean(MBeanServer.class);
|
||||
assertThat(mBeanServer.getDomains()).contains("org.springframework.integration",
|
||||
"org.springframework.integration.monitor");
|
||||
"org.springframework.boot.autoconfigure.integration");
|
||||
assertThat(context).hasBean(IntegrationManagementConfigurer.MANAGEMENT_CONFIGURER_NAME);
|
||||
});
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user