Fix Testcases' bugs (#5353)

* Polish apache/dubbo#5306 : [Migration] Upgrade the @since tags in Javadoc migration cloud native to master

* Polish apache/dubbo#5306 : [Migration] Upgrade the @since tags in Javadoc migration cloud native to master

* Polish apache/dubbo#5309 : [ISSURE] The beans of Dubbo's Config can't be found on the ReferenceBean's initialization

* Polish apache/dubbo#5312 : Resolve the demos' issues of zookeeper and nacos

* Polish apache/dubbo#5313 : [Migration] migrate the code in common module from cloud-native branch to master

* Polish apache/dubbo#5316 : [Refactor] Replace @EnableDubboConfigBinding Using spring-context-support

* Polish apache/dubbo#5317 : [Refactor] Refactor ReferenceAnnotationBeanPostProcessor using Alibaba spring-context-suuport API

* Polish apache/dubbo#5321 : Remove BeanFactoryUtils

* Polish apache/dubbo#5321 : Remove AnnotatedBeanDefinitionRegistryUtils

* Polish apache/dubbo#5321 : Remove AnnotationUtils

* Polish apache/dubbo#5321 : Remove ClassUtils

* Polish apache/dubbo#5321 : Remove BeanRegistrar

* Polish apache/dubbo#5321 : Remove ObjectUtils

* Polish apache/dubbo#5321 : Remove PropertySourcesUtils

* Polish apache/dubbo#5325 : [Migration] To migrate dubbo-metadata-api from cloud-native branch

* Polish apache/dubbo#5326 : [Migration] To migrate dubbo-metadata-processor from cloud-native branch

* Polish apache/dubbo#5329 : [Feature] To add the default metadata into ServiceInstance

* Polish apache/dubbo#5339 : [Refactor] Refactor the DynamicConfiguration interface

* Polish bugfix

* Fixes test cases

* Merge remote-tracking branch 'upstream/master' into cloud-native-2.7.5

# Conflicts:
#	dubbo-configcenter/dubbo-configcenter-zookeeper/src/test/java/org/apache/dubbo/configcenter/support/zookeeper/ZookeeperDynamicConfigurationTest.java
#	dubbo-metadata/dubbo-metadata-api/src/test/java/org/apache/dubbo/metadata/DynamicConfigurationServiceNameMappingTest.java

* Merge remote-tracking branch 'upstream/master' into cloud-native-2.7.5

# Conflicts:
#	dubbo-configcenter/dubbo-configcenter-zookeeper/src/test/java/org/apache/dubbo/configcenter/support/zookeeper/ZookeeperDynamicConfigurationTest.java
#	dubbo-metadata/dubbo-metadata-api/src/test/java/org/apache/dubbo/metadata/DynamicConfigurationServiceNameMappingTest.java

* Fix test-cases
This commit is contained in:
Mercy Ma 2019-11-19 14:36:21 +08:00 committed by GitHub
parent 45066480b5
commit 77a4784517
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 31 additions and 3 deletions

View File

@ -18,6 +18,7 @@ package org.apache.dubbo.config.spring.context.annotation;
import org.apache.dubbo.config.AbstractConfig;
import org.apache.dubbo.config.spring.beans.factory.annotation.DubboConfigAliasPostProcessor;
import org.apache.dubbo.config.spring.context.config.NamePropertyDefaultValueDubboConfigBeanCustomizer;
import org.springframework.beans.factory.support.BeanDefinitionRegistry;
import org.springframework.context.annotation.ImportBeanDefinitionRegistrar;
@ -27,6 +28,7 @@ import org.springframework.core.type.AnnotationMetadata;
import static com.alibaba.spring.util.AnnotatedBeanDefinitionRegistryUtils.registerBeans;
import static com.alibaba.spring.util.BeanRegistrar.registerInfrastructureBean;
import static org.apache.dubbo.config.spring.context.config.NamePropertyDefaultValueDubboConfigBeanCustomizer.BEAN_NAME;
/**
* Dubbo {@link AbstractConfig Config} {@link ImportBeanDefinitionRegistrar register}, which order can be configured
@ -55,6 +57,14 @@ public class DubboConfigConfigurationRegistrar implements ImportBeanDefinitionRe
// Register DubboConfigAliasPostProcessor
registerDubboConfigAliasPostProcessor(registry);
// Register NamePropertyDefaultValueDubboConfigBeanCustomizer
registerDubboConfigBeanCustomizers(registry);
}
private void registerDubboConfigBeanCustomizers(BeanDefinitionRegistry registry) {
registerInfrastructureBean(registry, BEAN_NAME, NamePropertyDefaultValueDubboConfigBeanCustomizer.class);
}
/**

View File

@ -20,6 +20,7 @@ import org.apache.dubbo.config.AbstractConfig;
import org.apache.dubbo.config.spring.beans.factory.annotation.DubboConfigBindingBeanPostProcessor;
import org.apache.dubbo.config.spring.context.properties.DubboConfigBinder;
import com.alibaba.spring.context.config.ConfigurationBeanCustomizer;
import org.springframework.context.ApplicationContext;
import org.springframework.core.Ordered;
@ -35,7 +36,7 @@ import org.springframework.core.Ordered;
* @see DubboConfigBindingBeanPostProcessor
* @since 2.6.6
*/
public interface DubboConfigBeanCustomizer extends Ordered {
public interface DubboConfigBeanCustomizer extends ConfigurationBeanCustomizer, Ordered {
/**
* Customize {@link AbstractConfig Dubbo Config Bean}
@ -44,4 +45,11 @@ public interface DubboConfigBeanCustomizer extends Ordered {
* @param dubboConfigBean the instance of {@link AbstractConfig Dubbo Config Bean}
*/
void customize(String beanName, AbstractConfig dubboConfigBean);
@Override
default void customize(String beanName, Object configurationBean) {
if (configurationBean instanceof AbstractConfig) {
customize(beanName, (AbstractConfig) configurationBean);
}
}
}

View File

@ -67,9 +67,19 @@ public class AnnotationPropertyValuesAdapterTest {
DefaultConversionService conversionService = new DefaultConversionService();
conversionService.addConverter((Converter<String[], String>) source -> arrayToCommaDelimitedString(source));
conversionService.addConverter(new Converter<String[], String>() {
@Override
public String convert(String[] source) {
return arrayToCommaDelimitedString(source);
}
});
conversionService.addConverter((Converter<String[], Map<String, String>>) source -> CollectionUtils.toStringMap(source));
conversionService.addConverter(new Converter<String[], Map<String, String>>() {
@Override
public Map<String, String> convert(String[] source) {
return CollectionUtils.toStringMap(source);
}
});
dataBinder.setConversionService(conversionService);