1
0
mirror of https://gitee.com/mirrors/Spring-Cloud-Alibaba.git synced 2021-06-26 13:25:11 +08:00

add NacosRegistrationCustomizer.java

This commit is contained in:
如梦技术 2020-05-30 17:35:59 +08:00
parent acd7681368
commit d3d7bc00bb
3 changed files with 20 additions and 16 deletions

View File

@ -59,15 +59,16 @@ public class NacosRegistration implements Registration, ServiceInstance {
*/
public static final String MANAGEMENT_ENDPOINT_BASE_PATH = "management.endpoints.web.base-path";
private List<NacosRegistrationCustomizer> registrationCustomizers;
private NacosDiscoveryProperties nacosDiscoveryProperties;
private ApplicationContext context;
private List<NacosRegistrationCustomizer> registrationCustomizers;
public NacosRegistration(NacosDiscoveryProperties nacosDiscoveryProperties,
ApplicationContext context,
List<NacosRegistrationCustomizer> registrationCustomizers) {
public NacosRegistration(List<NacosRegistrationCustomizer> registrationCustomizers,
NacosDiscoveryProperties nacosDiscoveryProperties,
ApplicationContext context) {
this.registrationCustomizers = registrationCustomizers;
this.nacosDiscoveryProperties = nacosDiscoveryProperties;
this.context = context;
}
@ -109,10 +110,12 @@ public class NacosRegistration implements Registration, ServiceInstance {
metadata.put(PreservedMetadataKeys.IP_DELETE_TIMEOUT,
nacosDiscoveryProperties.getIpDeleteTimeout().toString());
}
customize(registrationCustomizers,this);
customize(registrationCustomizers, this);
}
private static void customize(List<NacosRegistrationCustomizer> registrationCustomizers, NacosRegistration registration) {
private static void customize(
List<NacosRegistrationCustomizer> registrationCustomizers,
NacosRegistration registration) {
if (registrationCustomizers != null) {
for (NacosRegistrationCustomizer customizer : registrationCustomizers) {
customizer.customize(registration);

View File

@ -22,10 +22,9 @@ package com.alibaba.cloud.nacos.registry;
public interface NacosRegistrationCustomizer {
/**
* customize NacosRegistration
*
* customize NacosRegistration.
* @param registration NacosRegistration
*/
void customize(NacosRegistration registration);
}
}

View File

@ -16,6 +16,8 @@
package com.alibaba.cloud.nacos.registry;
import java.util.List;
import com.alibaba.cloud.nacos.ConditionalOnNacosDiscoveryEnabled;
import com.alibaba.cloud.nacos.NacosDiscoveryProperties;
import com.alibaba.cloud.nacos.discovery.NacosDiscoveryAutoConfiguration;
@ -32,8 +34,6 @@ import org.springframework.context.ApplicationContext;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import java.util.List;
/**
* @author xiaojing
* @author <a href="mailto:mercyblitz@gmail.com">Mercy</a>
@ -56,10 +56,12 @@ public class NacosServiceRegistryAutoConfiguration {
@Bean
@ConditionalOnBean(AutoServiceRegistrationProperties.class)
public NacosRegistration nacosRegistration(NacosDiscoveryProperties nacosDiscoveryProperties,
ApplicationContext context,
ObjectProvider<List<NacosRegistrationCustomizer>> registrationCustomizers) {
return new NacosRegistration(nacosDiscoveryProperties, context, registrationCustomizers.getIfAvailable());
public NacosRegistration nacosRegistration(
ObjectProvider<List<NacosRegistrationCustomizer>> registrationCustomizers,
NacosDiscoveryProperties nacosDiscoveryProperties,
ApplicationContext context) {
return new NacosRegistration(registrationCustomizers.getIfAvailable(),
nacosDiscoveryProperties, context);
}
@Bean