This is an automated email from the ASF dual-hosted git repository. zhangliang 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 0b2403f4a07 Refactor MetaDataVersion.activeVersion as int (#34868) 0b2403f4a07 is described below commit 0b2403f4a0751b9976a265c067b9dd877c6da3af Author: Liang Zhang <zhangli...@apache.org> AuthorDate: Tue Mar 4 19:42:30 2025 +0800 Refactor MetaDataVersion.activeVersion as int (#34868) * Refactor MetaDataVersion.activeVersion as int * Refactor MetaDataVersion.activeVersion as int --- .../infra/metadata/version/MetaDataVersion.java | 4 ++-- ...ecutor.java => RuleItemChangedNodePathBuilder.java} | 4 ++-- .../database/rule/RuleConfigurationChangedHandler.java | 8 ++++---- .../StandaloneMetaDataManagerPersistService.java | 12 ++++++------ .../StandaloneMetaDataManagerPersistServiceTest.java | 18 +++++++++--------- 5 files changed, 23 insertions(+), 23 deletions(-) diff --git a/infra/common/src/main/java/org/apache/shardingsphere/infra/metadata/version/MetaDataVersion.java b/infra/common/src/main/java/org/apache/shardingsphere/infra/metadata/version/MetaDataVersion.java index fc6cc9cae39..7e0a8fd83e4 100644 --- a/infra/common/src/main/java/org/apache/shardingsphere/infra/metadata/version/MetaDataVersion.java +++ b/infra/common/src/main/java/org/apache/shardingsphere/infra/metadata/version/MetaDataVersion.java @@ -31,9 +31,9 @@ public final class MetaDataVersion { private final String path; - private final Integer activeVersion; + private final int activeVersion; public MetaDataVersion(final String path) { - this(path, null); + this(path, INIT_VERSION); } } diff --git a/mode/core/src/main/java/org/apache/shardingsphere/mode/metadata/changed/RuleItemChangedBuildExecutor.java b/mode/core/src/main/java/org/apache/shardingsphere/mode/metadata/changed/RuleItemChangedNodePathBuilder.java similarity index 97% rename from mode/core/src/main/java/org/apache/shardingsphere/mode/metadata/changed/RuleItemChangedBuildExecutor.java rename to mode/core/src/main/java/org/apache/shardingsphere/mode/metadata/changed/RuleItemChangedNodePathBuilder.java index 4bf20611d69..ef9eef0f8da 100644 --- a/mode/core/src/main/java/org/apache/shardingsphere/mode/metadata/changed/RuleItemChangedBuildExecutor.java +++ b/mode/core/src/main/java/org/apache/shardingsphere/mode/metadata/changed/RuleItemChangedNodePathBuilder.java @@ -27,9 +27,9 @@ import org.apache.shardingsphere.mode.node.rule.node.DatabaseRuleNodeGenerator; import java.util.Optional; /** - * Rule item changed build executor. + * Rule item changed node path builder. */ -public final class RuleItemChangedBuildExecutor { +public final class RuleItemChangedNodePathBuilder { /** * Build rule item. diff --git a/mode/type/cluster/core/src/main/java/org/apache/shardingsphere/mode/manager/cluster/dispatch/handler/database/rule/RuleConfigurationChangedHandler.java b/mode/type/cluster/core/src/main/java/org/apache/shardingsphere/mode/manager/cluster/dispatch/handler/database/rule/RuleConfigurationChangedHandler.java index 53a0363fc55..24fd0ed2738 100644 --- a/mode/type/cluster/core/src/main/java/org/apache/shardingsphere/mode/manager/cluster/dispatch/handler/database/rule/RuleConfigurationChangedHandler.java +++ b/mode/type/cluster/core/src/main/java/org/apache/shardingsphere/mode/manager/cluster/dispatch/handler/database/rule/RuleConfigurationChangedHandler.java @@ -22,7 +22,7 @@ import lombok.RequiredArgsConstructor; import org.apache.shardingsphere.mode.event.DataChangedEvent; import org.apache.shardingsphere.mode.event.DataChangedEvent.Type; import org.apache.shardingsphere.mode.manager.ContextManager; -import org.apache.shardingsphere.mode.metadata.changed.RuleItemChangedBuildExecutor; +import org.apache.shardingsphere.mode.metadata.changed.RuleItemChangedNodePathBuilder; import org.apache.shardingsphere.mode.node.path.type.metadata.rule.DatabaseRuleNodePath; import org.apache.shardingsphere.mode.node.path.type.version.VersionNodePath; @@ -37,7 +37,7 @@ public final class RuleConfigurationChangedHandler { private final ContextManager contextManager; - private final RuleItemChangedBuildExecutor ruleItemChangedBuildExecutor = new RuleItemChangedBuildExecutor(); + private final RuleItemChangedNodePathBuilder ruleItemChangedNodePathBuilder = new RuleItemChangedNodePathBuilder(); /** * Handle rule changed. @@ -55,12 +55,12 @@ public final class RuleConfigurationChangedHandler { return; } int version = Integer.parseInt(event.getValue()); - Optional<DatabaseRuleNodePath> databaseRuleNodePath = ruleItemChangedBuildExecutor.build(databaseName, event.getKey()); + Optional<DatabaseRuleNodePath> databaseRuleNodePath = ruleItemChangedNodePathBuilder.build(databaseName, event.getKey()); if (databaseRuleNodePath.isPresent()) { contextManager.getMetaDataContextManager().getDatabaseRuleItemManager().alter(databaseRuleNodePath.get(), version); } } else if (Type.DELETED == event.getType()) { - Optional<DatabaseRuleNodePath> databaseRuleNodePath = ruleItemChangedBuildExecutor.build(databaseName, event.getKey()); + Optional<DatabaseRuleNodePath> databaseRuleNodePath = ruleItemChangedNodePathBuilder.build(databaseName, event.getKey()); if (databaseRuleNodePath.isPresent()) { contextManager.getMetaDataContextManager().getDatabaseRuleItemManager().drop(databaseRuleNodePath.get()); } diff --git a/mode/type/standalone/core/src/main/java/org/apache/shardingsphere/mode/manager/standalone/persist/service/StandaloneMetaDataManagerPersistService.java b/mode/type/standalone/core/src/main/java/org/apache/shardingsphere/mode/manager/standalone/persist/service/StandaloneMetaDataManagerPersistService.java index 3411ebe4416..a56a8e0d1e3 100644 --- a/mode/type/standalone/core/src/main/java/org/apache/shardingsphere/mode/manager/standalone/persist/service/StandaloneMetaDataManagerPersistService.java +++ b/mode/type/standalone/core/src/main/java/org/apache/shardingsphere/mode/manager/standalone/persist/service/StandaloneMetaDataManagerPersistService.java @@ -30,7 +30,7 @@ import org.apache.shardingsphere.infra.rule.scope.GlobalRule; import org.apache.shardingsphere.infra.rule.scope.GlobalRule.GlobalRuleChangedType; import org.apache.shardingsphere.infra.spi.type.ordered.cache.OrderedServicesCache; import org.apache.shardingsphere.mode.metadata.MetaDataContexts; -import org.apache.shardingsphere.mode.metadata.changed.RuleItemChangedBuildExecutor; +import org.apache.shardingsphere.mode.metadata.changed.RuleItemChangedNodePathBuilder; import org.apache.shardingsphere.mode.metadata.manager.MetaDataContextManager; import org.apache.shardingsphere.mode.metadata.persist.MetaDataPersistFacade; import org.apache.shardingsphere.mode.metadata.persist.metadata.DatabaseMetaDataPersistFacade; @@ -57,12 +57,12 @@ public final class StandaloneMetaDataManagerPersistService implements MetaDataMa private final MetaDataPersistFacade metaDataPersistFacade; - private final RuleItemChangedBuildExecutor ruleItemChangedBuildExecutor; + private final RuleItemChangedNodePathBuilder ruleItemChangedNodePathBuilder; public StandaloneMetaDataManagerPersistService(final MetaDataContextManager metaDataContextManager) { this.metaDataContextManager = metaDataContextManager; metaDataPersistFacade = metaDataContextManager.getMetaDataPersistFacade(); - ruleItemChangedBuildExecutor = new RuleItemChangedBuildExecutor(); + ruleItemChangedNodePathBuilder = new RuleItemChangedNodePathBuilder(); } @Override @@ -213,9 +213,9 @@ public final class StandaloneMetaDataManagerPersistService implements MetaDataMa return; } for (MetaDataVersion each : metaDataPersistFacade.getDatabaseRuleService().persist(database.getName(), Collections.singleton(toBeAlteredRuleConfig))) { - Optional<DatabaseRuleNodePath> databaseRuleNodePath = ruleItemChangedBuildExecutor.build(database.getName(), each.getPath()); + Optional<DatabaseRuleNodePath> databaseRuleNodePath = ruleItemChangedNodePathBuilder.build(database.getName(), each.getPath()); if (databaseRuleNodePath.isPresent()) { - metaDataContextManager.getDatabaseRuleItemManager().alter(databaseRuleNodePath.get(), null == each.getActiveVersion() ? 0 : each.getActiveVersion()); + metaDataContextManager.getDatabaseRuleItemManager().alter(databaseRuleNodePath.get(), each.getActiveVersion()); } } clearServiceCache(); @@ -228,7 +228,7 @@ public final class StandaloneMetaDataManagerPersistService implements MetaDataMa } Collection<MetaDataVersion> metaDataVersions = metaDataPersistFacade.getDatabaseRuleService().delete(database.getName(), Collections.singleton(toBeRemovedRuleConfig)); for (MetaDataVersion each : metaDataVersions) { - Optional<DatabaseRuleNodePath> databaseRuleNodePath = ruleItemChangedBuildExecutor.build(database.getName(), each.getPath()); + Optional<DatabaseRuleNodePath> databaseRuleNodePath = ruleItemChangedNodePathBuilder.build(database.getName(), each.getPath()); if (databaseRuleNodePath.isPresent()) { metaDataContextManager.getDatabaseRuleItemManager().drop(databaseRuleNodePath.get()); } diff --git a/mode/type/standalone/core/src/test/java/org/apache/shardingsphere/mode/manager/standalone/persist/service/StandaloneMetaDataManagerPersistServiceTest.java b/mode/type/standalone/core/src/test/java/org/apache/shardingsphere/mode/manager/standalone/persist/service/StandaloneMetaDataManagerPersistServiceTest.java index e5d7d630b44..01c4e3c4bb9 100644 --- a/mode/type/standalone/core/src/test/java/org/apache/shardingsphere/mode/manager/standalone/persist/service/StandaloneMetaDataManagerPersistServiceTest.java +++ b/mode/type/standalone/core/src/test/java/org/apache/shardingsphere/mode/manager/standalone/persist/service/StandaloneMetaDataManagerPersistServiceTest.java @@ -27,7 +27,7 @@ import org.apache.shardingsphere.infra.metadata.database.rule.RuleMetaData; import org.apache.shardingsphere.infra.metadata.database.schema.model.ShardingSphereSchema; import org.apache.shardingsphere.infra.metadata.database.schema.model.ShardingSphereTable; import org.apache.shardingsphere.infra.metadata.version.MetaDataVersion; -import org.apache.shardingsphere.mode.metadata.changed.RuleItemChangedBuildExecutor; +import org.apache.shardingsphere.mode.metadata.changed.RuleItemChangedNodePathBuilder; import org.apache.shardingsphere.mode.metadata.manager.MetaDataContextManager; import org.apache.shardingsphere.mode.metadata.persist.MetaDataPersistFacade; import org.apache.shardingsphere.mode.metadata.persist.metadata.DatabaseMetaDataPersistFacade; @@ -173,9 +173,9 @@ class StandaloneMetaDataManagerPersistServiceTest { Collection<MetaDataVersion> metaDataVersions = Collections.singleton(mock(MetaDataVersion.class)); when(metaDataPersistFacade.getDatabaseRuleService().persist("foo_db", Collections.singleton(ruleConfig))).thenReturn(metaDataVersions); DatabaseRuleNodePath databaseRuleNodePath = mock(DatabaseRuleNodePath.class); - RuleItemChangedBuildExecutor ruleItemChangedBuildExecutor = mock(RuleItemChangedBuildExecutor.class); - when(ruleItemChangedBuildExecutor.build(eq("foo_db"), any())).thenReturn(Optional.of(databaseRuleNodePath)); - setRuleItemChangedBuildExecutor(ruleItemChangedBuildExecutor); + RuleItemChangedNodePathBuilder ruleItemChangedNodePathBuilder = mock(RuleItemChangedNodePathBuilder.class); + when(ruleItemChangedNodePathBuilder.build(eq("foo_db"), any())).thenReturn(Optional.of(databaseRuleNodePath)); + setRuleItemChangedBuildExecutor(ruleItemChangedNodePathBuilder); metaDataManagerPersistService.alterRuleConfiguration(database, ruleConfig); verify(metaDataContextManager.getDatabaseRuleItemManager()).alter(databaseRuleNodePath, 0); } @@ -191,10 +191,10 @@ class StandaloneMetaDataManagerPersistServiceTest { RuleConfiguration ruleConfig = mock(RuleConfiguration.class, RETURNS_DEEP_STUBS); Collection<MetaDataVersion> metaDataVersion = Collections.singleton(mock(MetaDataVersion.class)); when(metaDataPersistFacade.getDatabaseRuleService().delete("foo_db", Collections.singleton(ruleConfig))).thenReturn(metaDataVersion); - RuleItemChangedBuildExecutor ruleItemChangedBuildExecutor = mock(RuleItemChangedBuildExecutor.class); + RuleItemChangedNodePathBuilder ruleItemChangedNodePathBuilder = mock(RuleItemChangedNodePathBuilder.class); DatabaseRuleNodePath databaseRuleNodePath = mock(DatabaseRuleNodePath.class); - when(ruleItemChangedBuildExecutor.build(eq("foo_db"), any())).thenReturn(Optional.of(databaseRuleNodePath)); - setRuleItemChangedBuildExecutor(ruleItemChangedBuildExecutor); + when(ruleItemChangedNodePathBuilder.build(eq("foo_db"), any())).thenReturn(Optional.of(databaseRuleNodePath)); + setRuleItemChangedBuildExecutor(ruleItemChangedNodePathBuilder); metaDataManagerPersistService.removeRuleConfigurationItem(new ShardingSphereDatabase("foo_db", mock(), mock(), mock(), Collections.emptyList()), ruleConfig); verify(metaDataContextManager.getDatabaseRuleItemManager()).drop(databaseRuleNodePath); } @@ -236,7 +236,7 @@ class StandaloneMetaDataManagerPersistServiceTest { } @SneakyThrows(ReflectiveOperationException.class) - private void setRuleItemChangedBuildExecutor(final RuleItemChangedBuildExecutor ruleItemChangedBuildExecutor) { - Plugins.getMemberAccessor().set(StandaloneMetaDataManagerPersistService.class.getDeclaredField("ruleItemChangedBuildExecutor"), metaDataManagerPersistService, ruleItemChangedBuildExecutor); + private void setRuleItemChangedBuildExecutor(final RuleItemChangedNodePathBuilder ruleItemChangedNodePathBuilder) { + Plugins.getMemberAccessor().set(StandaloneMetaDataManagerPersistService.class.getDeclaredField("ruleItemChangedBuildExecutor"), metaDataManagerPersistService, ruleItemChangedNodePathBuilder); } }