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

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


The following commit(s) were added to refs/heads/master by this push:
     new 2f4efe2  refactor for MetaDataChangedEvent (#7813)
2f4efe2 is described below

commit 2f4efe2d95e2fffe6789f4fbcfd04213373e8d24
Author: kimmking <[email protected]>
AuthorDate: Fri Oct 16 18:55:10 2020 +0800

    refactor for MetaDataChangedEvent (#7813)
---
 .../governance/core/event/model/metadata/MetaDataChangedEvent.java   | 5 +----
 .../governance/core/config/listener/SchemaChangedListener.java       | 2 +-
 .../governance/context/schema/GovernanceSchemaContexts.java          | 2 +-
 .../governance/context/schema/GovernanceSchemaContextsTest.java      | 4 ++--
 4 files changed, 5 insertions(+), 8 deletions(-)

diff --git 
a/shardingsphere-governance/shardingsphere-governance-core/shardingsphere-governance-core-common/src/main/java/org/apache/shardingsphere/governance/core/event/model/metadata/MetaDataChangedEvent.java
 
b/shardingsphere-governance/shardingsphere-governance-core/shardingsphere-governance-core-common/src/main/java/org/apache/shardingsphere/governance/core/event/model/metadata/MetaDataChangedEvent.java
index 6131c1c..3a038fa 100644
--- 
a/shardingsphere-governance/shardingsphere-governance-core/shardingsphere-governance-core-common/src/main/java/org/apache/shardingsphere/governance/core/event/model/metadata/MetaDataChangedEvent.java
+++ 
b/shardingsphere-governance/shardingsphere-governance-core/shardingsphere-governance-core-common/src/main/java/org/apache/shardingsphere/governance/core/event/model/metadata/MetaDataChangedEvent.java
@@ -22,8 +22,6 @@ import lombok.RequiredArgsConstructor;
 import org.apache.shardingsphere.governance.core.event.model.GovernanceEvent;
 import 
org.apache.shardingsphere.infra.metadata.model.logic.LogicSchemaMetaData;
 
-import java.util.Collection;
-
 /**
  * Meta data changed event.
  */
@@ -31,8 +29,7 @@ import java.util.Collection;
 @Getter
 public final class MetaDataChangedEvent implements GovernanceEvent {
 
-    // TODO Confirm whether it must be a collection
-    private final Collection<String> schemaNames;
+    private final String schemaName;
 
     private final LogicSchemaMetaData logicSchemaMetaData;
 }
diff --git 
a/shardingsphere-governance/shardingsphere-governance-core/shardingsphere-governance-core-config/src/main/java/org/apache/shardingsphere/governance/core/config/listener/SchemaChangedListener.java
 
b/shardingsphere-governance/shardingsphere-governance-core/shardingsphere-governance-core-config/src/main/java/org/apache/shardingsphere/governance/core/config/listener/SchemaChangedListener.java
index 7b6f5b1..b082b5e 100644
--- 
a/shardingsphere-governance/shardingsphere-governance-core/shardingsphere-governance-core-config/src/main/java/org/apache/shardingsphere/governance/core/config/listener/SchemaChangedListener.java
+++ 
b/shardingsphere-governance/shardingsphere-governance-core/shardingsphere-governance-core-config/src/main/java/org/apache/shardingsphere/governance/core/config/listener/SchemaChangedListener.java
@@ -143,6 +143,6 @@ public final class SchemaChangedListener extends 
PostGovernanceRepositoryEventLi
     
     private GovernanceEvent createMetaDataChangedEvent(final String 
schemaName, final DataChangedEvent event) {
         LogicSchemaMetaData logicSchemaMetaData = new 
LogicSchemaMetaDataYamlSwapper().swapToObject(YamlEngine.unmarshal(event.getValue(),
 YamlLogicSchemaMetaData.class));
-        return new MetaDataChangedEvent(Collections.singleton(schemaName), 
logicSchemaMetaData);
+        return new MetaDataChangedEvent(schemaName, logicSchemaMetaData);
     }
 }
diff --git 
a/shardingsphere-governance/shardingsphere-governance-core/shardingsphere-governance-core-context/src/main/java/org/apache/shardingsphere/governance/context/schema/GovernanceSchemaContexts.java
 
b/shardingsphere-governance/shardingsphere-governance-core/shardingsphere-governance-core-context/src/main/java/org/apache/shardingsphere/governance/context/schema/GovernanceSchemaContexts.java
index a658808..54b9634 100644
--- 
a/shardingsphere-governance/shardingsphere-governance-core/shardingsphere-governance-core-context/src/main/java/org/apache/shardingsphere/governance/context/schema/GovernanceSchemaContexts.java
+++ 
b/shardingsphere-governance/shardingsphere-governance-core/shardingsphere-governance-core-context/src/main/java/org/apache/shardingsphere/governance/context/schema/GovernanceSchemaContexts.java
@@ -220,7 +220,7 @@ public final class GovernanceSchemaContexts implements 
SchemaContexts {
         for (Entry<String, ShardingSphereSchema> entry : 
schemaContexts.getSchemas().entrySet()) {
             String schemaName = entry.getKey();
             ShardingSphereSchema oldSchema = entry.getValue();
-            ShardingSphereSchema newSchema = 
event.getSchemaNames().contains(schemaName) ? 
getChangedShardingSphereSchema(oldSchema, event.getLogicSchemaMetaData(), 
schemaName) : oldSchema;
+            ShardingSphereSchema newSchema = 
event.getSchemaName().equals(schemaName) ? 
getChangedShardingSphereSchema(oldSchema, event.getLogicSchemaMetaData(), 
schemaName) : oldSchema;
             newSchemas.put(schemaName, newSchema);
         }
         schemaContexts = new StandardSchemaContexts(newSchemas, 
schemaContexts.getSqlParserEngine(), schemaContexts.getExecutorKernel(), 
diff --git 
a/shardingsphere-governance/shardingsphere-governance-core/shardingsphere-governance-core-context/src/test/java/org/apache/shardingsphere/governance/context/schema/GovernanceSchemaContextsTest.java
 
b/shardingsphere-governance/shardingsphere-governance-core/shardingsphere-governance-core-context/src/test/java/org/apache/shardingsphere/governance/context/schema/GovernanceSchemaContextsTest.java
index 1cf71b6..7fd12cf 100644
--- 
a/shardingsphere-governance/shardingsphere-governance-core/shardingsphere-governance-core-context/src/test/java/org/apache/shardingsphere/governance/context/schema/GovernanceSchemaContextsTest.java
+++ 
b/shardingsphere-governance/shardingsphere-governance-core/shardingsphere-governance-core-context/src/test/java/org/apache/shardingsphere/governance/context/schema/GovernanceSchemaContextsTest.java
@@ -191,7 +191,7 @@ public final class GovernanceSchemaContextsTest {
     
     @Test
     public void assertMetaDataChanged() {
-        MetaDataChangedEvent event = new 
MetaDataChangedEvent(Collections.singletonList("schema_changed"), 
mock(LogicSchemaMetaData.class));
+        MetaDataChangedEvent event = new 
MetaDataChangedEvent("schema_changed", mock(LogicSchemaMetaData.class));
         governanceSchemaContexts.renew(event);
         
assertTrue(governanceSchemaContexts.getSchemas().containsKey("schema"));
         
assertFalse(governanceSchemaContexts.getSchemas().containsKey("schema_changed"));
@@ -199,7 +199,7 @@ public final class GovernanceSchemaContextsTest {
     
     @Test
     public void assertMetaDataChangedWithExistSchema() {
-        MetaDataChangedEvent event = new 
MetaDataChangedEvent(Collections.singletonList("schema"), 
mock(LogicSchemaMetaData.class));
+        MetaDataChangedEvent event = new MetaDataChangedEvent("schema", 
mock(LogicSchemaMetaData.class));
         governanceSchemaContexts.renew(event);
         assertThat(governanceSchemaContexts.getSchemas().get("schema"), 
not(schema));
     }

Reply via email to