mirror of
https://gitee.com/mirrors/Spring-Cloud-Alibaba.git
synced 2021-06-26 13:25:11 +08:00
Polish #345 , fixes @AutoConfigureAfter(AutoServiceRegistrationAutoConfiguration.class)
This commit is contained in:
parent
d6334fbe87
commit
7677507294
@ -41,48 +41,53 @@ import org.springframework.context.annotation.Configuration;
|
|||||||
@EnableConfigurationProperties
|
@EnableConfigurationProperties
|
||||||
@ConditionalOnNacosDiscoveryEnabled
|
@ConditionalOnNacosDiscoveryEnabled
|
||||||
@ConditionalOnProperty(value = "spring.cloud.service-registry.auto-registration.enabled", matchIfMissing = true)
|
@ConditionalOnProperty(value = "spring.cloud.service-registry.auto-registration.enabled", matchIfMissing = true)
|
||||||
@AutoConfigureBefore({AutoServiceRegistrationAutoConfiguration.class,
|
@AutoConfigureBefore(NacosDiscoveryClientAutoConfiguration.class)
|
||||||
NacosDiscoveryClientAutoConfiguration.class})
|
@AutoConfigureAfter(AutoServiceRegistrationAutoConfiguration.class)
|
||||||
@AutoConfigureAfter(AutoServiceRegistrationConfiguration.class)
|
|
||||||
public class NacosDiscoveryAutoConfiguration {
|
public class NacosDiscoveryAutoConfiguration {
|
||||||
|
|
||||||
@Bean
|
@Bean
|
||||||
public NacosServiceRegistry nacosServiceRegistry(NacosDiscoveryProperties nacosDiscoveryProperties) {
|
public NacosServiceRegistry nacosServiceRegistry(
|
||||||
return new NacosServiceRegistry(nacosDiscoveryProperties);
|
NacosDiscoveryProperties nacosDiscoveryProperties) {
|
||||||
}
|
return new NacosServiceRegistry(nacosDiscoveryProperties);
|
||||||
|
}
|
||||||
|
|
||||||
@Bean
|
@Bean
|
||||||
@ConditionalOnBean(AutoServiceRegistrationProperties.class)
|
@ConditionalOnBean(AutoServiceRegistrationProperties.class)
|
||||||
public NacosRegistration nacosRegistration(
|
public NacosRegistration nacosRegistration(
|
||||||
NacosDiscoveryProperties nacosDiscoveryProperties,
|
NacosDiscoveryProperties nacosDiscoveryProperties,
|
||||||
ApplicationContext context) {
|
ApplicationContext context) {
|
||||||
return new NacosRegistration(nacosDiscoveryProperties, context);
|
return new NacosRegistration(nacosDiscoveryProperties, context);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Bean
|
@Bean
|
||||||
@ConditionalOnBean(AutoServiceRegistrationProperties.class)
|
@ConditionalOnBean(AutoServiceRegistrationProperties.class)
|
||||||
public NacosAutoServiceRegistration nacosAutoServiceRegistration(
|
public NacosAutoServiceRegistration nacosAutoServiceRegistration(
|
||||||
NacosServiceRegistry registry,
|
NacosServiceRegistry registry,
|
||||||
AutoServiceRegistrationProperties autoServiceRegistrationProperties,
|
AutoServiceRegistrationProperties autoServiceRegistrationProperties,
|
||||||
NacosRegistration registration) {
|
NacosRegistration registration) {
|
||||||
return new NacosAutoServiceRegistration(registry,
|
return new NacosAutoServiceRegistration(registry,
|
||||||
autoServiceRegistrationProperties, registration);
|
autoServiceRegistrationProperties, registration);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Bean
|
@Bean
|
||||||
@ConditionalOnBean(NacosAutoServiceRegistration.class) // NacosAutoServiceRegistration should be present
|
@ConditionalOnBean(NacosAutoServiceRegistration.class) // NacosAutoServiceRegistration
|
||||||
@ConditionalOnNotWebApplication // Not Web Application
|
// should be present
|
||||||
public ApplicationRunner applicationRunner(NacosAutoServiceRegistration nacosAutoServiceRegistration) {
|
@ConditionalOnNotWebApplication // Not Web Application
|
||||||
return args -> {
|
public ApplicationRunner applicationRunner(
|
||||||
// WebServerInitializedEvent should not be multicast in Non-Web environment.
|
NacosAutoServiceRegistration nacosAutoServiceRegistration) {
|
||||||
// Whatever, NacosAutoServiceRegistration must be checked it's running or not.
|
return args -> {
|
||||||
if (!nacosAutoServiceRegistration.isRunning()) { // If it's not running, let it start.
|
// WebServerInitializedEvent should not be multicast in Non-Web environment.
|
||||||
// FIXME: Please make sure "spring.cloud.nacos.discovery.port" must be configured on an available port,
|
// Whatever, NacosAutoServiceRegistration must be checked it's running or not.
|
||||||
// or the startup or Nacos health check will be failed.
|
if (!nacosAutoServiceRegistration.isRunning()) { // If it's not running, let
|
||||||
nacosAutoServiceRegistration.start();
|
// it start.
|
||||||
// NacosAutoServiceRegistration will be stopped after its destroy() method is invoked.
|
// FIXME: Please make sure "spring.cloud.nacos.discovery.port" must be
|
||||||
// @PreDestroy destroy() -> stop()
|
// configured on an available port,
|
||||||
}
|
// or the startup or Nacos health check will be failed.
|
||||||
};
|
nacosAutoServiceRegistration.start();
|
||||||
}
|
// NacosAutoServiceRegistration will be stopped after its destroy() method
|
||||||
|
// is invoked.
|
||||||
|
// @PreDestroy destroy() -> stop()
|
||||||
|
}
|
||||||
|
};
|
||||||
|
}
|
||||||
}
|
}
|
Loading…
x
Reference in New Issue
Block a user