You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@dubbo.apache.org by me...@apache.org on 2019/11/19 06:36:31 UTC

[dubbo] branch master updated: Fix Testcases' bugs (#5353)

This is an automated email from the ASF dual-hosted git repository.

mercyblitz pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/dubbo.git


The following commit(s) were added to refs/heads/master by this push:
     new 77a4784  Fix Testcases' bugs (#5353)
77a4784 is described below

commit 77a478451794630eff29251b5405c77fd837f040
Author: Mercy Ma <me...@gmail.com>
AuthorDate: Tue Nov 19 14:36:21 2019 +0800

    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
---
 .../annotation/DubboConfigConfigurationRegistrar.java    | 10 ++++++++++
 .../spring/context/config/DubboConfigBeanCustomizer.java | 10 +++++++++-
 .../annotation/AnnotationPropertyValuesAdapterTest.java  | 16 +++++++++++++---
 3 files changed, 32 insertions(+), 4 deletions(-)

diff --git a/dubbo-config/dubbo-config-spring/src/main/java/org/apache/dubbo/config/spring/context/annotation/DubboConfigConfigurationRegistrar.java b/dubbo-config/dubbo-config-spring/src/main/java/org/apache/dubbo/config/spring/context/annotation/DubboConfigConfigurationRegistrar.java
index 79db7f4..9924c00 100644
--- a/dubbo-config/dubbo-config-spring/src/main/java/org/apache/dubbo/config/spring/context/annotation/DubboConfigConfigurationRegistrar.java
+++ b/dubbo-config/dubbo-config-spring/src/main/java/org/apache/dubbo/config/spring/context/annotation/DubboConfigConfigurationRegistrar.java
@@ -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);
     }
 
     /**
diff --git a/dubbo-config/dubbo-config-spring/src/main/java/org/apache/dubbo/config/spring/context/config/DubboConfigBeanCustomizer.java b/dubbo-config/dubbo-config-spring/src/main/java/org/apache/dubbo/config/spring/context/config/DubboConfigBeanCustomizer.java
index 75bf0dd..5588a33 100644
--- a/dubbo-config/dubbo-config-spring/src/main/java/org/apache/dubbo/config/spring/context/config/DubboConfigBeanCustomizer.java
+++ b/dubbo-config/dubbo-config-spring/src/main/java/org/apache/dubbo/config/spring/context/config/DubboConfigBeanCustomizer.java
@@ -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);
+        }
+    }
 }
diff --git a/dubbo-config/dubbo-config-spring/src/test/java/org/apache/dubbo/config/spring/beans/factory/annotation/AnnotationPropertyValuesAdapterTest.java b/dubbo-config/dubbo-config-spring/src/test/java/org/apache/dubbo/config/spring/beans/factory/annotation/AnnotationPropertyValuesAdapterTest.java
index 15ceecc..70f3a96 100644
--- a/dubbo-config/dubbo-config-spring/src/test/java/org/apache/dubbo/config/spring/beans/factory/annotation/AnnotationPropertyValuesAdapterTest.java
+++ b/dubbo-config/dubbo-config-spring/src/test/java/org/apache/dubbo/config/spring/beans/factory/annotation/AnnotationPropertyValuesAdapterTest.java
@@ -67,9 +67,19 @@ public class AnnotationPropertyValuesAdapterTest {
 
         DefaultConversionService conversionService = new DefaultConversionService();
 
-        conversionService.addConverter((Converter<String[], String>) source -> arrayToCommaDelimitedString(source));
-
-        conversionService.addConverter((Converter<String[], Map<String, String>>) source -> CollectionUtils.toStringMap(source));
+        conversionService.addConverter(new Converter<String[], String>() {
+            @Override
+            public String convert(String[] source) {
+                return arrayToCommaDelimitedString(source);
+            }
+        });
+
+        conversionService.addConverter(new Converter<String[], Map<String, String>>() {
+            @Override
+            public Map<String, String> convert(String[] source) {
+                return CollectionUtils.toStringMap(source);
+            }
+        });
 
 
         dataBinder.setConversionService(conversionService);