You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@shardingsphere.apache.org by ji...@apache.org on 2023/06/12 14:46:24 UTC

[shardingsphere] branch master updated: Extract abstract AbstractPersistService class (#26308)

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

jianglongtao 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 382c598c834 Extract abstract AbstractPersistService class (#26308)
382c598c834 is described below

commit 382c598c834310da9b692ce9cb38eba60c42d39c
Author: zhaojinchao <zh...@apache.org>
AuthorDate: Mon Jun 12 22:46:17 2023 +0800

    Extract abstract AbstractPersistService class (#26308)
    
    * Extract abstract AbstractPersistService class
    
    * Fix checkstyle
    
    * Fix unit test
---
 .../AuthorityRuleConfigurationEventBuilder.java    |  4 +-
 .../GlobalClockRuleConfigurationEventBuilder.java  |  4 +-
 .../LoggingRuleConfigurationEventBuilder.java      |  4 +-
 .../metadata/persist/node/NewGlobalNode.java       |  6 +-
 .../service/config/AbstractPersistService.java     | 72 ++++++++++++++++++++++
 .../database/NewDatabaseRulePersistService.java    | 39 +++---------
 .../config/global/NewGlobalRulePersistService.java | 40 +++---------
 .../config/global/NewPropertiesPersistService.java |  4 +-
 .../metadata/persist/node/NewGlobalNodeTest.java   |  2 +-
 .../event/SingleRuleConfigurationEventBuilder.java |  4 +-
 ...SQLFederationRuleConfigurationEventBuilder.java |  4 +-
 .../SQLParserRuleConfigurationEventBuilder.java    |  4 +-
 .../SQLTranslatorConfigurationEventBuilder.java    |  4 +-
 .../TrafficRuleConfigurationEventBuilder.java      |  4 +-
 .../TransactionRuleConfigurationEventBuilder.java  |  4 +-
 15 files changed, 114 insertions(+), 85 deletions(-)

diff --git a/kernel/authority/core/src/main/java/org/apache/shardingsphere/authority/event/AuthorityRuleConfigurationEventBuilder.java b/kernel/authority/core/src/main/java/org/apache/shardingsphere/authority/event/AuthorityRuleConfigurationEventBuilder.java
index 4bbecc6b88b..dcb75f35004 100644
--- a/kernel/authority/core/src/main/java/org/apache/shardingsphere/authority/event/AuthorityRuleConfigurationEventBuilder.java
+++ b/kernel/authority/core/src/main/java/org/apache/shardingsphere/authority/event/AuthorityRuleConfigurationEventBuilder.java
@@ -47,10 +47,10 @@ public final class AuthorityRuleConfigurationEventBuilder implements RuleConfigu
         if (!GlobalRuleNodeConverter.isExpectedRuleName(AUTHORITY, event.getKey()) || Strings.isNullOrEmpty(event.getValue())) {
             return Optional.empty();
         }
-        return buildAuthorityRuleConfigurationEvent(databaseName, event);
+        return buildEvent(databaseName, event);
     }
     
-    private Optional<GovernanceEvent> buildAuthorityRuleConfigurationEvent(final String databaseName, final DataChangedEvent event) {
+    private Optional<GovernanceEvent> buildEvent(final String databaseName, final DataChangedEvent event) {
         if (Type.ADDED == event.getType() || Type.UPDATED == event.getType()) {
             return Optional.of(new AlterGlobalRuleConfigurationEvent(databaseName, swapToConfig(event.getValue()), RULE_TYPE));
         }
diff --git a/kernel/global-clock/core/src/main/java/org/apache/shardingsphere/globalclock/core/event/GlobalClockRuleConfigurationEventBuilder.java b/kernel/global-clock/core/src/main/java/org/apache/shardingsphere/globalclock/core/event/GlobalClockRuleConfigurationEventBuilder.java
index e833a8bedf6..3d3e54a4912 100644
--- a/kernel/global-clock/core/src/main/java/org/apache/shardingsphere/globalclock/core/event/GlobalClockRuleConfigurationEventBuilder.java
+++ b/kernel/global-clock/core/src/main/java/org/apache/shardingsphere/globalclock/core/event/GlobalClockRuleConfigurationEventBuilder.java
@@ -47,10 +47,10 @@ public final class GlobalClockRuleConfigurationEventBuilder implements RuleConfi
         if (!GlobalRuleNodeConverter.isExpectedRuleName(GLOBAL_CLOCK, event.getKey()) || Strings.isNullOrEmpty(event.getValue())) {
             return Optional.empty();
         }
-        return buildGlobalClockRuleConfigurationEvent(databaseName, event);
+        return buildEvent(databaseName, event);
     }
     
-    private Optional<GovernanceEvent> buildGlobalClockRuleConfigurationEvent(final String databaseName, final DataChangedEvent event) {
+    private Optional<GovernanceEvent> buildEvent(final String databaseName, final DataChangedEvent event) {
         if (Type.ADDED == event.getType() || Type.UPDATED == event.getType()) {
             return Optional.of(new AlterGlobalRuleConfigurationEvent(databaseName, swapToConfig(event.getValue()), RULE_TYPE));
         }
diff --git a/kernel/logging/core/src/main/java/org/apache/shardingsphere/logging/event/LoggingRuleConfigurationEventBuilder.java b/kernel/logging/core/src/main/java/org/apache/shardingsphere/logging/event/LoggingRuleConfigurationEventBuilder.java
index a847f235f86..b0bafc04383 100644
--- a/kernel/logging/core/src/main/java/org/apache/shardingsphere/logging/event/LoggingRuleConfigurationEventBuilder.java
+++ b/kernel/logging/core/src/main/java/org/apache/shardingsphere/logging/event/LoggingRuleConfigurationEventBuilder.java
@@ -47,10 +47,10 @@ public final class LoggingRuleConfigurationEventBuilder implements RuleConfigura
         if (!GlobalRuleNodeConverter.isExpectedRuleName(LOGGING, event.getKey()) || Strings.isNullOrEmpty(event.getValue())) {
             return Optional.empty();
         }
-        return buildLoggingRuleConfigurationEvent(databaseName, event);
+        return buildEvent(databaseName, event);
     }
     
-    private Optional<GovernanceEvent> buildLoggingRuleConfigurationEvent(final String databaseName, final DataChangedEvent event) {
+    private Optional<GovernanceEvent> buildEvent(final String databaseName, final DataChangedEvent event) {
         if (Type.ADDED == event.getType() || Type.UPDATED == event.getType()) {
             return Optional.of(new AlterGlobalRuleConfigurationEvent(databaseName, swapToConfig(event.getValue()), RULE_TYPE));
         }
diff --git a/kernel/metadata/core/src/main/java/org/apache/shardingsphere/metadata/persist/node/NewGlobalNode.java b/kernel/metadata/core/src/main/java/org/apache/shardingsphere/metadata/persist/node/NewGlobalNode.java
index 9067d2252eb..321e07d7b66 100644
--- a/kernel/metadata/core/src/main/java/org/apache/shardingsphere/metadata/persist/node/NewGlobalNode.java
+++ b/kernel/metadata/core/src/main/java/org/apache/shardingsphere/metadata/persist/node/NewGlobalNode.java
@@ -38,11 +38,11 @@ public final class NewGlobalNode {
     /**
      * Get global rule active version node.
      *
-     * @param ruleName rule name
+     * @param rulePath rule path
      * @return global rule active version node
      */
-    public static String getGlobalRuleActiveVersionNode(final String ruleName) {
-        return String.join("/", getGlobalRuleRootNode(), ruleName, ACTIVE_VERSION);
+    public static String getGlobalRuleActiveVersionNode(final String rulePath) {
+        return String.join("/", rulePath, ACTIVE_VERSION);
     }
     
     /**
diff --git a/kernel/metadata/core/src/main/java/org/apache/shardingsphere/metadata/persist/service/config/AbstractPersistService.java b/kernel/metadata/core/src/main/java/org/apache/shardingsphere/metadata/persist/service/config/AbstractPersistService.java
new file mode 100644
index 00000000000..5c8d2f4e4c6
--- /dev/null
+++ b/kernel/metadata/core/src/main/java/org/apache/shardingsphere/metadata/persist/service/config/AbstractPersistService.java
@@ -0,0 +1,72 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.shardingsphere.metadata.persist.service.config;
+
+import lombok.RequiredArgsConstructor;
+import org.apache.shardingsphere.infra.util.yaml.datanode.YamlDataNode;
+import org.apache.shardingsphere.mode.spi.PersistRepository;
+
+import java.util.Collection;
+import java.util.Collections;
+import java.util.List;
+import java.util.LinkedList;
+import java.util.LinkedHashSet;
+
+@RequiredArgsConstructor
+public abstract class AbstractPersistService {
+    
+    private final PersistRepository repository;
+    
+    /**
+     * Get data nodes.
+     *
+     * @param rootPath root path
+     * @return yaml data nodes
+     */
+    public Collection<YamlDataNode> getDataNodes(final String rootPath) {
+        Collection<YamlDataNode> result = new LinkedList<>();
+        for (String each : getNodes(rootPath)) {
+            result.add(new YamlDataNode(each, repository.getDirectly(each)));
+        }
+        return result;
+    }
+    
+    private Collection<String> getNodes(final String rootPath) {
+        Collection<String> result = new LinkedHashSet<>();
+        getAllNodes(result, rootPath);
+        if (1 == result.size()) {
+            return Collections.emptyList();
+        }
+        return result;
+    }
+    
+    private void getAllNodes(final Collection<String> keys, final String path) {
+        keys.add(path);
+        List<String> childKeys = repository.getChildrenKeys(path);
+        if (childKeys.isEmpty()) {
+            return;
+        }
+        for (String each : childKeys) {
+            getAllNodes(keys, getPath(path, each));
+        }
+    }
+    
+    private String getPath(final String path, final String childKey) {
+        return String.join("/", "", path, childKey);
+    }
+}
diff --git a/kernel/metadata/core/src/main/java/org/apache/shardingsphere/metadata/persist/service/config/database/NewDatabaseRulePersistService.java b/kernel/metadata/core/src/main/java/org/apache/shardingsphere/metadata/persist/service/config/database/NewDatabaseRulePersistService.java
index 2c30505c446..a8d35fc1787 100644
--- a/kernel/metadata/core/src/main/java/org/apache/shardingsphere/metadata/persist/service/config/database/NewDatabaseRulePersistService.java
+++ b/kernel/metadata/core/src/main/java/org/apache/shardingsphere/metadata/persist/service/config/database/NewDatabaseRulePersistService.java
@@ -18,20 +18,18 @@
 package org.apache.shardingsphere.metadata.persist.service.config.database;
 
 import com.google.common.base.Strings;
-import lombok.RequiredArgsConstructor;
 import org.apache.shardingsphere.infra.config.rule.RuleConfiguration;
 import org.apache.shardingsphere.infra.rule.ShardingSphereRule;
 import org.apache.shardingsphere.infra.util.yaml.datanode.YamlDataNode;
 import org.apache.shardingsphere.infra.yaml.config.swapper.rule.NewYamlRuleConfigurationSwapper;
 import org.apache.shardingsphere.infra.yaml.config.swapper.rule.NewYamlRuleConfigurationSwapperEngine;
 import org.apache.shardingsphere.metadata.persist.node.NewDatabaseMetaDataNode;
+import org.apache.shardingsphere.metadata.persist.service.config.AbstractPersistService;
 import org.apache.shardingsphere.mode.spi.PersistRepository;
 
 import javax.sql.DataSource;
 import java.util.Collections;
-import java.util.List;
 import java.util.Collection;
-import java.util.LinkedHashSet;
 import java.util.Map;
 import java.util.Map.Entry;
 
@@ -39,13 +37,17 @@ import java.util.Map.Entry;
  * TODO Rename DatabaseRulePersistService when metadata structure adjustment completed. #25485
  * Database rule persist service.
  */
-@RequiredArgsConstructor
-public final class NewDatabaseRulePersistService implements NewDatabaseRuleBasedPersistService<Collection<RuleConfiguration>> {
+public final class NewDatabaseRulePersistService extends AbstractPersistService implements NewDatabaseRuleBasedPersistService<Collection<RuleConfiguration>> {
     
     private static final String DEFAULT_VERSION = "0";
     
     private final PersistRepository repository;
     
+    public NewDatabaseRulePersistService(final PersistRepository repository) {
+        super(repository);
+        this.repository = repository;
+    }
+    
     @Override
     public void persist(final String databaseName, final Map<String, DataSource> dataSources,
                         final Collection<ShardingSphereRule> rules, final Collection<RuleConfiguration> configs) {
@@ -76,12 +78,8 @@ public final class NewDatabaseRulePersistService implements NewDatabaseRuleBased
     
     @Override
     public Collection<RuleConfiguration> load(final String databaseName) {
-        Collection<String> result = new LinkedHashSet<>();
-        getAllNodes(result, NewDatabaseMetaDataNode.getRulesNode(databaseName));
-        if (1 == result.size()) {
-            return Collections.emptyList();
-        }
-        return new NewYamlRuleConfigurationSwapperEngine().swapToRuleConfigurations(getDataNodes(result));
+        Collection<YamlDataNode> dataNodes = getDataNodes(NewDatabaseMetaDataNode.getRulesNode(databaseName));
+        return dataNodes.isEmpty() ? Collections.emptyList() : new NewYamlRuleConfigurationSwapperEngine().swapToRuleConfigurations(dataNodes);
     }
     
     @Deprecated
@@ -90,23 +88,4 @@ public final class NewDatabaseRulePersistService implements NewDatabaseRuleBased
         // TODO Remove this method when metadata structure adjustment completed. #25485
         return Collections.emptyList();
     }
-    
-    private void getAllNodes(final Collection<String> keys, final String path) {
-        keys.add(path);
-        List<String> childrenKeys = repository.getChildrenKeys(path);
-        if (childrenKeys.isEmpty()) {
-            return;
-        }
-        for (String each : childrenKeys) {
-            getAllNodes(keys, String.join("/", "", path, each));
-        }
-    }
-    
-    private Collection<YamlDataNode> getDataNodes(final Collection<String> keys) {
-        Collection<YamlDataNode> result = new LinkedHashSet<>();
-        for (String each : keys) {
-            result.add(new YamlDataNode(each, repository.getDirectly(each)));
-        }
-        return result;
-    }
 }
diff --git a/kernel/metadata/core/src/main/java/org/apache/shardingsphere/metadata/persist/service/config/global/NewGlobalRulePersistService.java b/kernel/metadata/core/src/main/java/org/apache/shardingsphere/metadata/persist/service/config/global/NewGlobalRulePersistService.java
index 9137d33fa5c..074fd9b040c 100644
--- a/kernel/metadata/core/src/main/java/org/apache/shardingsphere/metadata/persist/service/config/global/NewGlobalRulePersistService.java
+++ b/kernel/metadata/core/src/main/java/org/apache/shardingsphere/metadata/persist/service/config/global/NewGlobalRulePersistService.java
@@ -18,7 +18,6 @@
 package org.apache.shardingsphere.metadata.persist.service.config.global;
 
 import com.google.common.base.Strings;
-import lombok.RequiredArgsConstructor;
 import org.apache.shardingsphere.authority.config.AuthorityRuleConfiguration;
 import org.apache.shardingsphere.infra.config.rule.RuleConfiguration;
 import org.apache.shardingsphere.infra.metadata.user.ShardingSphereUser;
@@ -26,13 +25,12 @@ import org.apache.shardingsphere.infra.util.yaml.datanode.YamlDataNode;
 import org.apache.shardingsphere.infra.yaml.config.swapper.rule.NewYamlRuleConfigurationSwapper;
 import org.apache.shardingsphere.infra.yaml.config.swapper.rule.NewYamlRuleConfigurationSwapperEngine;
 import org.apache.shardingsphere.metadata.persist.node.NewGlobalNode;
+import org.apache.shardingsphere.metadata.persist.service.config.AbstractPersistService;
 import org.apache.shardingsphere.mode.spi.PersistRepository;
 
 import java.util.Collection;
 import java.util.Collections;
 import java.util.Optional;
-import java.util.List;
-import java.util.LinkedHashSet;
 import java.util.Map;
 import java.util.Map.Entry;
 
@@ -40,13 +38,17 @@ import java.util.Map.Entry;
  * TODO Rename GlobalRulePersistService when metadata structure adjustment completed. #25485
  * New Global rule persist service.
  */
-@RequiredArgsConstructor
-public final class NewGlobalRulePersistService implements GlobalPersistService<Collection<RuleConfiguration>> {
+public final class NewGlobalRulePersistService extends AbstractPersistService implements GlobalPersistService<Collection<RuleConfiguration>> {
     
     private static final String DEFAULT_VERSION = "0";
     
     private final PersistRepository repository;
     
+    public NewGlobalRulePersistService(final PersistRepository repository) {
+        super(repository);
+        this.repository = repository;
+    }
+    
     @SuppressWarnings({"unchecked", "rawtypes"})
     @Override
     public void persist(final Collection<RuleConfiguration> globalRuleConfigs) {
@@ -72,32 +74,8 @@ public final class NewGlobalRulePersistService implements GlobalPersistService<C
     @Override
     @SuppressWarnings("unchecked")
     public Collection<RuleConfiguration> load() {
-        Collection<String> result = new LinkedHashSet<>();
-        getAllNodes(result, NewGlobalNode.getGlobalRuleRootNode());
-        if (1 == result.size()) {
-            return Collections.emptyList();
-        }
-        return new NewYamlRuleConfigurationSwapperEngine().swapToRuleConfigurations(getDataNodes(result));
-    }
-    
-    // TODO Consider merge NewGlobalRulePersistService and NewDatabaseRulePersistService load method.
-    private void getAllNodes(final Collection<String> keys, final String path) {
-        keys.add(path);
-        List<String> childrenKeys = repository.getChildrenKeys(path);
-        if (childrenKeys.isEmpty()) {
-            return;
-        }
-        for (String each : childrenKeys) {
-            getAllNodes(keys, String.join("/", "", path, each));
-        }
-    }
-    
-    private Collection<YamlDataNode> getDataNodes(final Collection<String> keys) {
-        Collection<YamlDataNode> result = new LinkedHashSet<>();
-        for (String each : keys) {
-            result.add(new YamlDataNode(each, repository.getDirectly(each)));
-        }
-        return result;
+        Collection<YamlDataNode> dataNodes = getDataNodes(NewGlobalNode.getGlobalRuleRootNode());
+        return dataNodes.isEmpty() ? Collections.emptyList() : new NewYamlRuleConfigurationSwapperEngine().swapToRuleConfigurations(dataNodes);
     }
     
     /**
diff --git a/kernel/metadata/core/src/main/java/org/apache/shardingsphere/metadata/persist/service/config/global/NewPropertiesPersistService.java b/kernel/metadata/core/src/main/java/org/apache/shardingsphere/metadata/persist/service/config/global/NewPropertiesPersistService.java
index 26537b1eb6a..0be48d8970f 100644
--- a/kernel/metadata/core/src/main/java/org/apache/shardingsphere/metadata/persist/service/config/global/NewPropertiesPersistService.java
+++ b/kernel/metadata/core/src/main/java/org/apache/shardingsphere/metadata/persist/service/config/global/NewPropertiesPersistService.java
@@ -46,7 +46,7 @@ public final class NewPropertiesPersistService implements GlobalPersistService<P
     
     @Override
     public Properties load() {
-        // TODO
-        return new Properties();
+        String yamlContext = repository.getDirectly(NewGlobalNode.getPropsVersionNode(DEFAULT_VERSION));
+        return Strings.isNullOrEmpty(yamlContext) ? new Properties() : YamlEngine.unmarshal(yamlContext, Properties.class);
     }
 }
diff --git a/kernel/metadata/core/src/test/java/org/apache/shardingsphere/metadata/persist/node/NewGlobalNodeTest.java b/kernel/metadata/core/src/test/java/org/apache/shardingsphere/metadata/persist/node/NewGlobalNodeTest.java
index 6fefcbd1297..107c4ff36e5 100644
--- a/kernel/metadata/core/src/test/java/org/apache/shardingsphere/metadata/persist/node/NewGlobalNodeTest.java
+++ b/kernel/metadata/core/src/test/java/org/apache/shardingsphere/metadata/persist/node/NewGlobalNodeTest.java
@@ -42,7 +42,7 @@ class NewGlobalNodeTest {
     
     @Test
     void assertGetGlobalRuleActiveVersionNode() {
-        assertThat(NewGlobalNode.getGlobalRuleActiveVersionNode("transaction"), is("/rules/transaction/active_version"));
+        assertThat(NewGlobalNode.getGlobalRuleActiveVersionNode("transaction"), is("transaction/active_version"));
     }
     
     @Test
diff --git a/kernel/single/core/src/main/java/org/apache/shardingsphere/single/event/SingleRuleConfigurationEventBuilder.java b/kernel/single/core/src/main/java/org/apache/shardingsphere/single/event/SingleRuleConfigurationEventBuilder.java
index 6a03d24cb94..f4ad734afc1 100644
--- a/kernel/single/core/src/main/java/org/apache/shardingsphere/single/event/SingleRuleConfigurationEventBuilder.java
+++ b/kernel/single/core/src/main/java/org/apache/shardingsphere/single/event/SingleRuleConfigurationEventBuilder.java
@@ -47,10 +47,10 @@ public final class SingleRuleConfigurationEventBuilder implements RuleConfigurat
         if (!GlobalRuleNodeConverter.isExpectedRuleName(SINGLE, event.getKey()) || Strings.isNullOrEmpty(event.getValue())) {
             return Optional.empty();
         }
-        return buildAuthorityRuleConfigurationEvent(databaseName, event);
+        return buildEvent(databaseName, event);
     }
     
-    private Optional<GovernanceEvent> buildAuthorityRuleConfigurationEvent(final String databaseName, final DataChangedEvent event) {
+    private Optional<GovernanceEvent> buildEvent(final String databaseName, final DataChangedEvent event) {
         if (Type.ADDED == event.getType() || Type.UPDATED == event.getType()) {
             return Optional.of(new AlterGlobalRuleConfigurationEvent(databaseName, swapToConfig(event.getValue()), RULE_TYPE));
         }
diff --git a/kernel/sql-federation/core/src/main/java/org/apache/shardingsphere/sqlfederation/event/SQLFederationRuleConfigurationEventBuilder.java b/kernel/sql-federation/core/src/main/java/org/apache/shardingsphere/sqlfederation/event/SQLFederationRuleConfigurationEventBuilder.java
index d4e0b7d624e..f7feafa25f9 100644
--- a/kernel/sql-federation/core/src/main/java/org/apache/shardingsphere/sqlfederation/event/SQLFederationRuleConfigurationEventBuilder.java
+++ b/kernel/sql-federation/core/src/main/java/org/apache/shardingsphere/sqlfederation/event/SQLFederationRuleConfigurationEventBuilder.java
@@ -47,10 +47,10 @@ public final class SQLFederationRuleConfigurationEventBuilder implements RuleCon
         if (!GlobalRuleNodeConverter.isExpectedRuleName(SQL_FEDERATION, event.getKey()) || Strings.isNullOrEmpty(event.getValue())) {
             return Optional.empty();
         }
-        return buildGlobalClockRuleConfigurationEvent(databaseName, event);
+        return buildEvent(databaseName, event);
     }
     
-    private Optional<GovernanceEvent> buildGlobalClockRuleConfigurationEvent(final String databaseName, final DataChangedEvent event) {
+    private Optional<GovernanceEvent> buildEvent(final String databaseName, final DataChangedEvent event) {
         if (Type.ADDED == event.getType() || Type.UPDATED == event.getType()) {
             return Optional.of(new AlterGlobalRuleConfigurationEvent(databaseName, swapToConfig(event.getValue()), RULE_TYPE));
         }
diff --git a/kernel/sql-parser/core/src/main/java/org/apache/shardingsphere/parser/event/SQLParserRuleConfigurationEventBuilder.java b/kernel/sql-parser/core/src/main/java/org/apache/shardingsphere/parser/event/SQLParserRuleConfigurationEventBuilder.java
index 3494640adf4..9b2a6135293 100644
--- a/kernel/sql-parser/core/src/main/java/org/apache/shardingsphere/parser/event/SQLParserRuleConfigurationEventBuilder.java
+++ b/kernel/sql-parser/core/src/main/java/org/apache/shardingsphere/parser/event/SQLParserRuleConfigurationEventBuilder.java
@@ -47,10 +47,10 @@ public final class SQLParserRuleConfigurationEventBuilder implements RuleConfigu
         if (!GlobalRuleNodeConverter.isExpectedRuleName(SQL_PARSER, event.getKey()) || Strings.isNullOrEmpty(event.getValue())) {
             return Optional.empty();
         }
-        return buildGlobalClockRuleConfigurationEvent(databaseName, event);
+        return buildEvent(databaseName, event);
     }
     
-    private Optional<GovernanceEvent> buildGlobalClockRuleConfigurationEvent(final String databaseName, final DataChangedEvent event) {
+    private Optional<GovernanceEvent> buildEvent(final String databaseName, final DataChangedEvent event) {
         if (Type.ADDED == event.getType() || Type.UPDATED == event.getType()) {
             return Optional.of(new AlterGlobalRuleConfigurationEvent(databaseName, swapToConfig(event.getValue()), RULE_TYPE));
         }
diff --git a/kernel/sql-translator/core/src/main/java/org/apache/shardingsphere/sqltranslator/event/SQLTranslatorConfigurationEventBuilder.java b/kernel/sql-translator/core/src/main/java/org/apache/shardingsphere/sqltranslator/event/SQLTranslatorConfigurationEventBuilder.java
index 63dc3fd3473..d3293fa5376 100644
--- a/kernel/sql-translator/core/src/main/java/org/apache/shardingsphere/sqltranslator/event/SQLTranslatorConfigurationEventBuilder.java
+++ b/kernel/sql-translator/core/src/main/java/org/apache/shardingsphere/sqltranslator/event/SQLTranslatorConfigurationEventBuilder.java
@@ -47,10 +47,10 @@ public final class SQLTranslatorConfigurationEventBuilder implements RuleConfigu
         if (!GlobalRuleNodeConverter.isExpectedRuleName(SQL_TRANSLATOR, event.getKey()) || Strings.isNullOrEmpty(event.getValue())) {
             return Optional.empty();
         }
-        return buildGlobalClockRuleConfigurationEvent(databaseName, event);
+        return buildEvent(databaseName, event);
     }
     
-    private Optional<GovernanceEvent> buildGlobalClockRuleConfigurationEvent(final String databaseName, final DataChangedEvent event) {
+    private Optional<GovernanceEvent> buildEvent(final String databaseName, final DataChangedEvent event) {
         if (Type.ADDED == event.getType() || Type.UPDATED == event.getType()) {
             return Optional.of(new AlterGlobalRuleConfigurationEvent(databaseName, swapToConfig(event.getValue()), RULE_TYPE));
         }
diff --git a/kernel/traffic/core/src/main/java/org/apache/shardingsphere/traffic/event/TrafficRuleConfigurationEventBuilder.java b/kernel/traffic/core/src/main/java/org/apache/shardingsphere/traffic/event/TrafficRuleConfigurationEventBuilder.java
index 2cff51b0045..5ec5292a510 100644
--- a/kernel/traffic/core/src/main/java/org/apache/shardingsphere/traffic/event/TrafficRuleConfigurationEventBuilder.java
+++ b/kernel/traffic/core/src/main/java/org/apache/shardingsphere/traffic/event/TrafficRuleConfigurationEventBuilder.java
@@ -47,10 +47,10 @@ public final class TrafficRuleConfigurationEventBuilder implements RuleConfigura
         if (!GlobalRuleNodeConverter.isExpectedRuleName(TRAFFIC, event.getKey()) || Strings.isNullOrEmpty(event.getValue())) {
             return Optional.empty();
         }
-        return buildGlobalClockRuleConfigurationEvent(databaseName, event);
+        return buildEvent(databaseName, event);
     }
     
-    private Optional<GovernanceEvent> buildGlobalClockRuleConfigurationEvent(final String databaseName, final DataChangedEvent event) {
+    private Optional<GovernanceEvent> buildEvent(final String databaseName, final DataChangedEvent event) {
         if (Type.ADDED == event.getType() || Type.UPDATED == event.getType()) {
             return Optional.of(new AlterGlobalRuleConfigurationEvent(databaseName, swapToConfig(event.getValue()), RULE_TYPE));
         }
diff --git a/kernel/transaction/core/src/main/java/org/apache/shardingsphere/transaction/event/TransactionRuleConfigurationEventBuilder.java b/kernel/transaction/core/src/main/java/org/apache/shardingsphere/transaction/event/TransactionRuleConfigurationEventBuilder.java
index 97a7f4f4b23..559c96e4e60 100644
--- a/kernel/transaction/core/src/main/java/org/apache/shardingsphere/transaction/event/TransactionRuleConfigurationEventBuilder.java
+++ b/kernel/transaction/core/src/main/java/org/apache/shardingsphere/transaction/event/TransactionRuleConfigurationEventBuilder.java
@@ -47,10 +47,10 @@ public final class TransactionRuleConfigurationEventBuilder implements RuleConfi
         if (!GlobalRuleNodeConverter.isExpectedRuleName(TRANSACTION, event.getKey()) || Strings.isNullOrEmpty(event.getValue())) {
             return Optional.empty();
         }
-        return buildGlobalClockRuleConfigurationEvent(databaseName, event);
+        return buildEvent(databaseName, event);
     }
     
-    private Optional<GovernanceEvent> buildGlobalClockRuleConfigurationEvent(final String databaseName, final DataChangedEvent event) {
+    private Optional<GovernanceEvent> buildEvent(final String databaseName, final DataChangedEvent event) {
         if (Type.ADDED == event.getType() || Type.UPDATED == event.getType()) {
             return Optional.of(new AlterGlobalRuleConfigurationEvent(databaseName, swapToConfig(event.getValue()), RULE_TYPE));
         }