You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@dubbo.apache.org by al...@apache.org on 2021/09/17 12:26:29 UTC
[dubbo] branch 3.0 updated: Fix ModuleModel update Properties
(#8832)
This is an automated email from the ASF dual-hosted git repository.
albumenj pushed a commit to branch 3.0
in repository https://gitbox.apache.org/repos/asf/dubbo.git
The following commit(s) were added to refs/heads/3.0 by this push:
new 1702fa0 Fix ModuleModel update Properties (#8832)
1702fa0 is described below
commit 1702fa0abb2c9f421d88593b0c0f6206e1a86d6c
Author: Albumen Kevin <jh...@gmail.com>
AuthorDate: Fri Sep 17 20:26:17 2021 +0800
Fix ModuleModel update Properties (#8832)
* Fix ModuleModel update Properties
* Fix ModuleModel update Properties
---
.../src/main/java/org/apache/dubbo/common/config/Environment.java | 5 ++++-
.../main/java/org/apache/dubbo/common/config/ModuleEnvironment.java | 4 ++++
.../apache/dubbo/common/config/OrderedPropertiesConfiguration.java | 3 ++-
3 files changed, 10 insertions(+), 2 deletions(-)
diff --git a/dubbo-common/src/main/java/org/apache/dubbo/common/config/Environment.java b/dubbo-common/src/main/java/org/apache/dubbo/common/config/Environment.java
index cd06ec3..6df25f1 100644
--- a/dubbo-common/src/main/java/org/apache/dubbo/common/config/Environment.java
+++ b/dubbo-common/src/main/java/org/apache/dubbo/common/config/Environment.java
@@ -59,7 +59,7 @@ public class Environment extends LifecycleAdapter implements ApplicationExt {
protected CompositeConfiguration globalConfiguration;
- private List<Map<String, String>> globalConfigurationMaps;
+ protected List<Map<String, String>> globalConfigurationMaps;
private CompositeConfiguration defaultDynamicGlobalConfiguration;
@@ -293,6 +293,9 @@ public class Environment extends LifecycleAdapter implements ApplicationExt {
public void refreshClassLoaders() {
propertiesConfiguration.refresh();
loadMigrationRule();
+ this.globalConfiguration = null;
+ this.globalConfigurationMaps = null;
+ this.defaultDynamicGlobalConfiguration = null;
}
public Configuration getDynamicGlobalConfiguration() {
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 29723b5..5aad696 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
@@ -120,6 +120,7 @@ public class ModuleEnvironment extends Environment implements ModuleExt {
@Override
public void destroy() throws IllegalStateException {
this.orderedPropertiesConfiguration = null;
+ this.globalConfiguration = null;
this.dynamicGlobalConfiguration = null;
this.dynamicConfiguration = null;
}
@@ -213,5 +214,8 @@ public class ModuleEnvironment extends Environment implements ModuleExt {
public void refreshClassLoaders() {
orderedPropertiesConfiguration.refresh();
applicationDelegate.refreshClassLoaders();
+ this.globalConfiguration = null;
+ this.globalConfigurationMaps = null;
+ this.dynamicGlobalConfiguration = null;
}
}
diff --git a/dubbo-common/src/main/java/org/apache/dubbo/common/config/OrderedPropertiesConfiguration.java b/dubbo-common/src/main/java/org/apache/dubbo/common/config/OrderedPropertiesConfiguration.java
index 140367d..299ec2b 100644
--- a/dubbo-common/src/main/java/org/apache/dubbo/common/config/OrderedPropertiesConfiguration.java
+++ b/dubbo-common/src/main/java/org/apache/dubbo/common/config/OrderedPropertiesConfiguration.java
@@ -26,7 +26,7 @@ import java.util.Properties;
import java.util.Set;
public class OrderedPropertiesConfiguration implements Configuration{
- private Properties properties = new Properties();
+ private Properties properties;
private ModuleModel moduleModel;
public OrderedPropertiesConfiguration(ModuleModel moduleModel) {
@@ -35,6 +35,7 @@ public class OrderedPropertiesConfiguration implements Configuration{
}
public void refresh() {
+ properties = new Properties();
ExtensionLoader<OrderedPropertiesProvider> propertiesProviderExtensionLoader = moduleModel.getExtensionLoader(OrderedPropertiesProvider.class);
Set<String> propertiesProviderNames = propertiesProviderExtensionLoader.getSupportedExtensions();
if (propertiesProviderNames == null || propertiesProviderNames.isEmpty()) {