You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@shardingsphere.apache.org by me...@apache.org on 2026/01/22 05:51:38 UTC
(shardingsphere) branch master updated: Refactor MetaDataReviseEngine (#37807)
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 192cf256604 Refactor MetaDataReviseEngine (#37807)
192cf256604 is described below
commit 192cf25660489cbb807826de4c87ed028642427a
Author: Haoran Meng <me...@gmail.com>
AuthorDate: Thu Jan 22 13:51:32 2026 +0800
Refactor MetaDataReviseEngine (#37807)
---
.../encrypt/metadata/EncryptMetaDataReviseEngineTest.java | 4 ++--
.../sharding/metadata/ShardingMetaDataReviseEngineTest.java | 5 ++---
.../metadata/database/schema/builder/GenericSchemaBuilder.java | 2 +-
.../metadata/database/schema/reviser/MetaDataReviseEngine.java | 6 +++---
.../metadata/database/schema/reviser/MetaDataReviseEngineTest.java | 7 +++----
.../single/metadata/SingleMetaDataReviseEngineTest.java | 4 ++--
6 files changed, 13 insertions(+), 15 deletions(-)
diff --git a/features/encrypt/core/src/test/java/org/apache/shardingsphere/encrypt/metadata/EncryptMetaDataReviseEngineTest.java b/features/encrypt/core/src/test/java/org/apache/shardingsphere/encrypt/metadata/EncryptMetaDataReviseEngineTest.java
index 1b0ceb92f9a..34e6312cebc 100644
--- a/features/encrypt/core/src/test/java/org/apache/shardingsphere/encrypt/metadata/EncryptMetaDataReviseEngineTest.java
+++ b/features/encrypt/core/src/test/java/org/apache/shardingsphere/encrypt/metadata/EncryptMetaDataReviseEngineTest.java
@@ -51,8 +51,8 @@ class EncryptMetaDataReviseEngineTest {
@Test
void assertRevise() {
Map<String, SchemaMetaData> schemaMetaData = Collections.singletonMap("foo_db", new SchemaMetaData("foo_db", Collections.singleton(createTableMetaData())));
- Map<String, ShardingSphereSchema> actual = new MetaDataReviseEngine(Collections.singleton(mockEncryptRule())).revise(schemaMetaData, mock(GenericSchemaBuilderMaterial.class),
- mock(DatabaseType.class));
+ Map<String, ShardingSphereSchema> actual = new MetaDataReviseEngine(Collections.singleton(mockEncryptRule()), mock(DatabaseType.class))
+ .revise(schemaMetaData, mock(GenericSchemaBuilderMaterial.class));
assertThat(actual.size(), is(1));
assertTrue(actual.containsKey("foo_db"));
assertThat(actual.get("foo_db").getAllTables().size(), is(1));
diff --git a/features/sharding/core/src/test/java/org/apache/shardingsphere/sharding/metadata/ShardingMetaDataReviseEngineTest.java b/features/sharding/core/src/test/java/org/apache/shardingsphere/sharding/metadata/ShardingMetaDataReviseEngineTest.java
index badb9e3c477..04a2d73fe64 100644
--- a/features/sharding/core/src/test/java/org/apache/shardingsphere/sharding/metadata/ShardingMetaDataReviseEngineTest.java
+++ b/features/sharding/core/src/test/java/org/apache/shardingsphere/sharding/metadata/ShardingMetaDataReviseEngineTest.java
@@ -54,9 +54,8 @@ class ShardingMetaDataReviseEngineTest {
void assertReviseWithKeyGenerateStrategy() {
GenericSchemaBuilderMaterial material = mock(GenericSchemaBuilderMaterial.class);
when(material.getProps()).thenReturn(new ConfigurationProperties(new Properties()));
- Map<String, ShardingSphereSchema> actual = new MetaDataReviseEngine(Collections.singleton(mockShardingRule()))
- .revise(Collections.singletonMap("sharding_db", new SchemaMetaData("sharding_db", Collections.singleton(createTableMetaData()))), material,
- mock(DatabaseType.class));
+ Map<String, ShardingSphereSchema> actual = new MetaDataReviseEngine(Collections.singleton(mockShardingRule()), mock(DatabaseType.class))
+ .revise(Collections.singletonMap("sharding_db", new SchemaMetaData("sharding_db", Collections.singleton(createTableMetaData()))), material);
assertThat(actual.size(), is(1));
assertTrue(actual.containsKey("sharding_db"));
assertThat(actual.get("sharding_db").getAllTables().size(), is(1));
diff --git a/infra/common/src/main/java/org/apache/shardingsphere/infra/metadata/database/schema/builder/GenericSchemaBuilder.java b/infra/common/src/main/java/org/apache/shardingsphere/infra/metadata/database/schema/builder/GenericSchemaBuilder.java
index a83d58b0f18..826da5d69b2 100644
--- a/infra/common/src/main/java/org/apache/shardingsphere/infra/metadata/database/schema/builder/GenericSchemaBuilder.java
+++ b/infra/common/src/main/java/org/apache/shardingsphere/infra/metadata/database/schema/builder/GenericSchemaBuilder.java
@@ -107,6 +107,6 @@ public final class GenericSchemaBuilder {
private static Map<String, ShardingSphereSchema> revise(final Map<String, SchemaMetaData> schemaMetaDataMap, final GenericSchemaBuilderMaterial material, final DatabaseType protocolType) {
Collection<ShardingSphereRule> rules = material.getRules().stream()
.filter(each -> each.getAttributes().findAttribute(TableMapperRuleAttribute.class).isPresent()).collect(Collectors.toList());
- return new MetaDataReviseEngine(rules).revise(schemaMetaDataMap, material, protocolType);
+ return new MetaDataReviseEngine(rules, protocolType).revise(schemaMetaDataMap, material);
}
}
diff --git a/infra/common/src/main/java/org/apache/shardingsphere/infra/metadata/database/schema/reviser/MetaDataReviseEngine.java b/infra/common/src/main/java/org/apache/shardingsphere/infra/metadata/database/schema/reviser/MetaDataReviseEngine.java
index 011f7ebacf9..6f3e77c124a 100644
--- a/infra/common/src/main/java/org/apache/shardingsphere/infra/metadata/database/schema/reviser/MetaDataReviseEngine.java
+++ b/infra/common/src/main/java/org/apache/shardingsphere/infra/metadata/database/schema/reviser/MetaDataReviseEngine.java
@@ -49,16 +49,16 @@ public final class MetaDataReviseEngine {
private final Collection<ShardingSphereRule> rules;
+ private final DatabaseType protocolType;
+
/**
* Revise meta data.
*
* @param schemaMetaDataMap schema meta data map
* @param material generic schema builder material
- * @param protocolType database type
* @return ShardingSphere schema map
*/
- public Map<String, ShardingSphereSchema> revise(final Map<String, SchemaMetaData> schemaMetaDataMap, final GenericSchemaBuilderMaterial material,
- final DatabaseType protocolType) {
+ public Map<String, ShardingSphereSchema> revise(final Map<String, SchemaMetaData> schemaMetaDataMap, final GenericSchemaBuilderMaterial material) {
if (schemaMetaDataMap.isEmpty()) {
return Collections.singletonMap(material.getDefaultSchemaName(), new ShardingSphereSchema(material.getDefaultSchemaName(), protocolType));
}
diff --git a/infra/common/src/test/java/org/apache/shardingsphere/infra/metadata/database/schema/reviser/MetaDataReviseEngineTest.java b/infra/common/src/test/java/org/apache/shardingsphere/infra/metadata/database/schema/reviser/MetaDataReviseEngineTest.java
index fb01d4c1479..a06c5e3d448 100644
--- a/infra/common/src/test/java/org/apache/shardingsphere/infra/metadata/database/schema/reviser/MetaDataReviseEngineTest.java
+++ b/infra/common/src/test/java/org/apache/shardingsphere/infra/metadata/database/schema/reviser/MetaDataReviseEngineTest.java
@@ -35,12 +35,11 @@ import static org.mockito.Mockito.mock;
class MetaDataReviseEngineTest {
- private final MetaDataReviseEngine engine = new MetaDataReviseEngine(Collections.emptyList());
+ private final MetaDataReviseEngine engine = new MetaDataReviseEngine(Collections.emptyList(), mock(DatabaseType.class));
@Test
void assertRevise() {
- Map<String, ShardingSphereSchema> actual = engine.revise(Collections.singletonMap("foo_schema", new SchemaMetaData("foo_schema", Collections.emptyList())), createBuilderMaterial(),
- mock(DatabaseType.class));
+ Map<String, ShardingSphereSchema> actual = engine.revise(Collections.singletonMap("foo_schema", new SchemaMetaData("foo_schema", Collections.emptyList())), createBuilderMaterial());
assertThat(actual.size(), is(1));
ShardingSphereSchema schema = actual.get("foo_schema");
assertThat(schema.getName(), is("foo_schema"));
@@ -50,7 +49,7 @@ class MetaDataReviseEngineTest {
@Test
void assertReviseWithEmptySchemaMetaDataMap() {
- Map<String, ShardingSphereSchema> actual = engine.revise(Collections.emptyMap(), createBuilderMaterial(), mock(DatabaseType.class));
+ Map<String, ShardingSphereSchema> actual = engine.revise(Collections.emptyMap(), createBuilderMaterial());
assertThat(actual.size(), is(1));
ShardingSphereSchema schema = actual.get("default_schema");
assertThat(schema.getName(), is("default_schema"));
diff --git a/kernel/single/core/src/test/java/org/apache/shardingsphere/single/metadata/SingleMetaDataReviseEngineTest.java b/kernel/single/core/src/test/java/org/apache/shardingsphere/single/metadata/SingleMetaDataReviseEngineTest.java
index 96fd1e1efb4..d627c8c05f3 100644
--- a/kernel/single/core/src/test/java/org/apache/shardingsphere/single/metadata/SingleMetaDataReviseEngineTest.java
+++ b/kernel/single/core/src/test/java/org/apache/shardingsphere/single/metadata/SingleMetaDataReviseEngineTest.java
@@ -50,8 +50,8 @@ class SingleMetaDataReviseEngineTest {
@Test
void assertRevise() {
Map<String, SchemaMetaData> schemaMetaDataMap = Collections.singletonMap("sharding_db", new SchemaMetaData("sharding_db", Collections.singleton(createTableMetaData())));
- Map<String, ShardingSphereSchema> actual = new MetaDataReviseEngine(Collections.singleton(mock(SingleRule.class))).revise(schemaMetaDataMap, mock(GenericSchemaBuilderMaterial.class),
- mock(DatabaseType.class));
+ Map<String, ShardingSphereSchema> actual = new MetaDataReviseEngine(Collections.singleton(mock(SingleRule.class)), mock(DatabaseType.class))
+ .revise(schemaMetaDataMap, mock(GenericSchemaBuilderMaterial.class));
assertThat(actual.size(), is(1));
assertTrue(actual.containsKey("sharding_db"));
assertThat(actual.get("sharding_db").getAllTables().size(), is(1));