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

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


The following commit(s) were added to refs/heads/3.2 by this push:
     new 428ca27a94 Fix ModuleEnvironment#getDynamicGlobalConfiguration (#13781)
428ca27a94 is described below

commit 428ca27a94826e5dadda1b2ab0d588ba3ece5fa2
Author: jiangyuan <[email protected]>
AuthorDate: Thu Feb 29 15:25:22 2024 +0800

    Fix ModuleEnvironment#getDynamicGlobalConfiguration (#13781)
    
    * Update ModuleEnvironment#getDynamicGlobalConfiguration
    
    * add unit test
    
    * update
---
 .../apache/dubbo/common/config/ModuleEnvironment.java  | 18 +++++-------------
 .../config/OrderedPropertiesConfigurationTest.java     | 16 ++++++++++++++++
 2 files changed, 21 insertions(+), 13 deletions(-)

diff --git 
a/dubbo-common/src/main/java/org/apache/dubbo/common/config/ModuleEnvironment.java
 
b/dubbo-common/src/main/java/org/apache/dubbo/common/config/ModuleEnvironment.java
index 3de18ccbf0..c014c57a64 100644
--- 
a/dubbo-common/src/main/java/org/apache/dubbo/common/config/ModuleEnvironment.java
+++ 
b/dubbo-common/src/main/java/org/apache/dubbo/common/config/ModuleEnvironment.java
@@ -29,8 +29,6 @@ import java.util.Map;
 import java.util.Optional;
 import java.util.concurrent.atomic.AtomicBoolean;
 
-import static 
org.apache.dubbo.common.constants.LoggerCodeConstants.COMMON_UNEXPECTED_EXCEPTION;
-
 public class ModuleEnvironment extends Environment implements ModuleExt {
 
     // delegate
@@ -94,19 +92,13 @@ public class ModuleEnvironment extends Environment 
implements ModuleExt {
     @Override
     public Configuration getDynamicGlobalConfiguration() {
         if (dynamicConfiguration == null) {
-            return applicationDelegate.getDynamicGlobalConfiguration();
+            CompositeConfiguration configuration = new 
CompositeConfiguration();
+            
configuration.addConfiguration(applicationDelegate.getDynamicGlobalConfiguration());
+            configuration.addConfiguration(orderedPropertiesConfiguration);
+            return configuration;
         }
+
         if (dynamicGlobalConfiguration == null) {
-            if (dynamicConfiguration == null) {
-                if (logger.isWarnEnabled()) {
-                    logger.warn(
-                            COMMON_UNEXPECTED_EXCEPTION,
-                            "",
-                            "",
-                            "dynamicConfiguration is null , return 
globalConfiguration.");
-                }
-                return getConfiguration();
-            }
             dynamicGlobalConfiguration = new CompositeConfiguration();
             dynamicGlobalConfiguration.addConfiguration(dynamicConfiguration);
             dynamicGlobalConfiguration.addConfiguration(getConfiguration());
diff --git 
a/dubbo-common/src/test/java/org/apache/dubbo/common/config/OrderedPropertiesConfigurationTest.java
 
b/dubbo-common/src/test/java/org/apache/dubbo/common/config/OrderedPropertiesConfigurationTest.java
index 8fc082de28..aaf2eb628f 100644
--- 
a/dubbo-common/src/test/java/org/apache/dubbo/common/config/OrderedPropertiesConfigurationTest.java
+++ 
b/dubbo-common/src/test/java/org/apache/dubbo/common/config/OrderedPropertiesConfigurationTest.java
@@ -17,6 +17,8 @@
 package org.apache.dubbo.common.config;
 
 import org.apache.dubbo.rpc.model.ApplicationModel;
+import org.apache.dubbo.rpc.model.FrameworkModel;
+import org.apache.dubbo.rpc.model.ModuleModel;
 
 import org.junit.jupiter.api.Assertions;
 import org.junit.jupiter.api.Test;
@@ -32,4 +34,18 @@ class OrderedPropertiesConfigurationTest {
                 ApplicationModel.defaultModel().getDefaultModule());
         Assertions.assertEquals("999", 
configuration.getInternalProperty("testKey"));
     }
+
+    @Test
+    void testGetPropertyFromOrderedPropertiesConfiguration() {
+        FrameworkModel frameworkModel = new FrameworkModel();
+
+        ApplicationModel applicationModel = frameworkModel.newApplication();
+
+        ModuleModel moduleModel = applicationModel.newModule();
+        ModuleEnvironment moduleEnvironment = moduleModel.modelEnvironment();
+
+        Configuration configuration = 
moduleEnvironment.getDynamicGlobalConfiguration();
+        // MockOrderedPropertiesProvider2  initProperties
+        Assertions.assertEquals("999", configuration.getString("testKey"));
+    }
 }

Reply via email to