diff --git a/sofa-boot-project/sofa-boot-autoconfigure/src/main/java/com/alipay/sofa/boot/autoconfigure/rpc/SofaRpcAutoConfiguration.java b/sofa-boot-project/sofa-boot-autoconfigure/src/main/java/com/alipay/sofa/boot/autoconfigure/rpc/SofaRpcAutoConfiguration.java index c7b74ba37..a4ecdaf45 100644 --- a/sofa-boot-project/sofa-boot-autoconfigure/src/main/java/com/alipay/sofa/boot/autoconfigure/rpc/SofaRpcAutoConfiguration.java +++ b/sofa-boot-project/sofa-boot-autoconfigure/src/main/java/com/alipay/sofa/boot/autoconfigure/rpc/SofaRpcAutoConfiguration.java @@ -168,12 +168,8 @@ public ApplicationContextRefreshedListener applicationContextRefreshedListener() @Bean @ConditionalOnMissingBean - public SofaBootRpcStartListener sofaBootRpcStartListener(ProviderConfigContainer providerConfigContainer, - FaultToleranceConfigurator faultToleranceConfigurator, - ServerConfigContainer serverConfigContainer, - RegistryConfigContainer registryConfigContainer) { - return new SofaBootRpcStartListener(providerConfigContainer, faultToleranceConfigurator, - serverConfigContainer, registryConfigContainer); + public SofaBootRpcStartListener sofaBootRpcStartListener() { + return new SofaBootRpcStartListener(); } @Bean diff --git a/sofa-boot-project/sofa-boot-core/rpc-sofa-boot/src/main/java/com/alipay/sofa/rpc/boot/context/SofaBootRpcStartListener.java b/sofa-boot-project/sofa-boot-core/rpc-sofa-boot/src/main/java/com/alipay/sofa/rpc/boot/context/SofaBootRpcStartListener.java index 556fb02d3..2d5fdf79e 100644 --- a/sofa-boot-project/sofa-boot-core/rpc-sofa-boot/src/main/java/com/alipay/sofa/rpc/boot/context/SofaBootRpcStartListener.java +++ b/sofa-boot-project/sofa-boot-core/rpc-sofa-boot/src/main/java/com/alipay/sofa/rpc/boot/context/SofaBootRpcStartListener.java @@ -16,12 +16,6 @@ */ package com.alipay.sofa.rpc.boot.context; -import java.util.Collection; - -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.context.ApplicationListener; -import org.springframework.util.CollectionUtils; - import com.alipay.sofa.rpc.boot.common.SofaBootRpcParserUtil; import com.alipay.sofa.rpc.boot.config.FaultToleranceConfigurator; import com.alipay.sofa.rpc.boot.config.SofaBootRpcProperties; @@ -31,6 +25,11 @@ import com.alipay.sofa.rpc.boot.context.event.SofaBootRpcStartEvent; import com.alipay.sofa.rpc.config.ProviderConfig; import com.alipay.sofa.rpc.event.LookoutSubscriber; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.ApplicationListener; +import org.springframework.util.CollectionUtils; + +import java.util.Collection; /** * {@link SofaBootRpcStartEvent} 事件监听器. @@ -42,21 +41,21 @@ public class SofaBootRpcStartListener implements ApplicationListener { @Autowired - private SofaBootRpcProperties sofaBootRpcProperties; - - private final ProviderConfigContainer providerConfigContainer; - private final FaultToleranceConfigurator faultToleranceConfigurator; - private final ServerConfigContainer serverConfigContainer; - private final RegistryConfigContainer registryConfigContainer; - - public SofaBootRpcStartListener(ProviderConfigContainer providerConfigContainer, - FaultToleranceConfigurator faultToleranceConfigurator, - ServerConfigContainer serverConfigContainer, - RegistryConfigContainer registryConfigContainer) { - this.providerConfigContainer = providerConfigContainer; - this.faultToleranceConfigurator = faultToleranceConfigurator; - this.serverConfigContainer = serverConfigContainer; - this.registryConfigContainer = registryConfigContainer; + private SofaBootRpcProperties sofaBootRpcProperties; + + @Autowired + protected ProviderConfigContainer providerConfigContainer; + + @Autowired + protected FaultToleranceConfigurator faultToleranceConfigurator; + + @Autowired + protected ServerConfigContainer serverConfigContainer; + + @Autowired + protected RegistryConfigContainer registryConfigContainer; + + public SofaBootRpcStartListener() { } @Override @@ -64,6 +63,9 @@ public void onApplicationEvent(SofaBootRpcStartEvent event) { //choose disable metrics lookout disableLookout(); + //extra info + processExtra(event); + //start fault tolerance faultToleranceConfigurator.startFaultTolerance(); @@ -84,7 +86,11 @@ public void onApplicationEvent(SofaBootRpcStartEvent event) { providerConfigContainer.exportAllDubboProvideConfig(); } - private void disableLookout() { + protected void processExtra(SofaBootRpcStartEvent event) { + + } + + protected void disableLookout() { Boolean disable = SofaBootRpcParserUtil.parseBoolean(sofaBootRpcProperties .getLookoutCollectDisable()); diff --git a/sofa-boot-project/sofa-boot-core/rpc-sofa-boot/src/test/java/com/alipay/sofa/rpc/boot/test/SofaRpcTestAutoConfiguration.java b/sofa-boot-project/sofa-boot-core/rpc-sofa-boot/src/test/java/com/alipay/sofa/rpc/boot/test/SofaRpcTestAutoConfiguration.java index 13b4957ac..41f71f7b5 100644 --- a/sofa-boot-project/sofa-boot-core/rpc-sofa-boot/src/test/java/com/alipay/sofa/rpc/boot/test/SofaRpcTestAutoConfiguration.java +++ b/sofa-boot-project/sofa-boot-core/rpc-sofa-boot/src/test/java/com/alipay/sofa/rpc/boot/test/SofaRpcTestAutoConfiguration.java @@ -16,21 +16,6 @@ */ package com.alipay.sofa.rpc.boot.test; -import java.util.HashMap; -import java.util.List; -import java.util.Map; - -import org.springframework.beans.factory.annotation.Value; -import org.springframework.boot.autoconfigure.condition.ConditionalOnClass; -import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingClass; -import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; -import org.springframework.boot.context.properties.EnableConfigurationProperties; -import org.springframework.context.ApplicationListener; -import org.springframework.context.annotation.Bean; -import org.springframework.context.annotation.Configuration; -import org.springframework.context.annotation.Import; -import org.springframework.context.annotation.Lazy; - import com.alipay.sofa.healthcheck.startup.ReadinessCheckCallback; import com.alipay.sofa.rpc.boot.config.ConsulConfigurator; import com.alipay.sofa.rpc.boot.config.FaultToleranceConfigurator; @@ -53,6 +38,20 @@ import com.alipay.sofa.rpc.boot.runtime.adapter.helper.ConsumerConfigHelper; import com.alipay.sofa.rpc.boot.runtime.adapter.helper.ProviderConfigHelper; import com.alipay.sofa.rpc.boot.swagger.SwaggerServiceApplicationListener; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.boot.autoconfigure.condition.ConditionalOnClass; +import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingClass; +import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; +import org.springframework.boot.context.properties.EnableConfigurationProperties; +import org.springframework.context.ApplicationListener; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.context.annotation.Import; +import org.springframework.context.annotation.Lazy; + +import java.util.HashMap; +import java.util.List; +import java.util.Map; /** * @author qilong.zql @@ -153,12 +152,8 @@ public ApplicationContextRefreshedListener applicationContextRefreshedListener() } @Bean - public SofaBootRpcStartListener sofaBootRpcStartListener(ProviderConfigContainer providerConfigContainer, - FaultToleranceConfigurator faultToleranceConfigurator, - ServerConfigContainer serverConfigContainer, - RegistryConfigContainer registryConfigContainer) { - return new SofaBootRpcStartListener(providerConfigContainer, faultToleranceConfigurator, - serverConfigContainer, registryConfigContainer); + public SofaBootRpcStartListener sofaBootRpcStartListener() { + return new SofaBootRpcStartListener(); } @Bean