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

zhangyonglun 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 3506688  Refactor ShardingSphereMetaData's constructor (#7678)
3506688 is described below

commit 35066882402851ddb7cd2cdca04789e172ed8600
Author: Liang Zhang <[email protected]>
AuthorDate: Thu Oct 1 17:01:24 2020 +0800

    Refactor ShardingSphereMetaData's constructor (#7678)
---
 .../parameterized/EncryptSQLRewriterParameterizedTest.java   |  2 +-
 .../parameterized/MixSQLRewriterParameterizedTest.java       |  2 +-
 .../parameterized/ShardingSQLRewriterParameterizedTest.java  |  2 +-
 .../route/engine/type/standard/AbstractSQLRouteTest.java     |  2 +-
 .../governance/context/schema/GovernanceSchemaContexts.java  |  2 +-
 .../infra/metadata/ShardingSphereMetaData.java               |  4 ++--
 .../refresh/AbstractMetaDataRefreshStrategyTest.java         | 12 +++++-------
 .../infra/context/schema/SchemaContextsBuilder.java          |  2 +-
 .../executor/sql/context/ExecutionContextBuilderTest.java    | 10 +++++-----
 .../text/sctl/hint/ShardingCTLHintBackendHandlerTest.java    |  4 ++--
 10 files changed, 20 insertions(+), 22 deletions(-)

diff --git 
a/shardingsphere-features/shardingsphere-encrypt/shardingsphere-encrypt-rewrite/src/test/java/org/apache/shardingsphere/encrypt/rewrite/parameterized/EncryptSQLRewriterParameterizedTest.java
 
b/shardingsphere-features/shardingsphere-encrypt/shardingsphere-encrypt-rewrite/src/test/java/org/apache/shardingsphere/encrypt/rewrite/parameterized/EncryptSQLRewriterParameterizedTest.java
index d527f8e..3cc8135 100644
--- 
a/shardingsphere-features/shardingsphere-encrypt/shardingsphere-encrypt-rewrite/src/test/java/org/apache/shardingsphere/encrypt/rewrite/parameterized/EncryptSQLRewriterParameterizedTest.java
+++ 
b/shardingsphere-features/shardingsphere-encrypt/shardingsphere-encrypt-rewrite/src/test/java/org/apache/shardingsphere/encrypt/rewrite/parameterized/EncryptSQLRewriterParameterizedTest.java
@@ -101,6 +101,6 @@ public final class EncryptSQLRewriterParameterizedTest 
extends AbstractSQLRewrit
         RuleSchemaMetaData ruleSchemaMetaData = mock(RuleSchemaMetaData.class);
         
when(ruleSchemaMetaData.getConfiguredSchemaMetaData()).thenReturn(schemaMetaData);
         
when(ruleSchemaMetaData.getSchemaMetaData()).thenReturn(schemaMetaData);
-        return new ShardingSphereMetaData(mock(DataSourceMetaDatas.class), 
ruleSchemaMetaData, "sharding_db");
+        return new ShardingSphereMetaData("sharding_db", 
mock(DataSourceMetaDatas.class), ruleSchemaMetaData);
     }
 }
diff --git 
a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-rewrite/src/test/java/org/apache/shardingsphere/sharding/rewrite/parameterized/MixSQLRewriterParameterizedTest.java
 
b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-rewrite/src/test/java/org/apache/shardingsphere/sharding/rewrite/parameterized/MixSQLRewriterParameterizedTest.java
index e2b00b9..ccbac07 100644
--- 
a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-rewrite/src/test/java/org/apache/shardingsphere/sharding/rewrite/parameterized/MixSQLRewriterParameterizedTest.java
+++ 
b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-rewrite/src/test/java/org/apache/shardingsphere/sharding/rewrite/parameterized/MixSQLRewriterParameterizedTest.java
@@ -121,7 +121,7 @@ public final class MixSQLRewriterParameterizedTest extends 
AbstractSQLRewriterPa
         RuleSchemaMetaData ruleSchemaMetaData = mock(RuleSchemaMetaData.class);
         
when(ruleSchemaMetaData.getConfiguredSchemaMetaData()).thenReturn(schemaMetaData);
         
when(ruleSchemaMetaData.getSchemaMetaData()).thenReturn(schemaMetaData);
-        return new ShardingSphereMetaData(mock(DataSourceMetaDatas.class), 
ruleSchemaMetaData, "sharding_db");
+        return new ShardingSphereMetaData("sharding_db", 
mock(DataSourceMetaDatas.class), ruleSchemaMetaData);
     }
     
     private Map<String, ColumnMetaData> createColumnMetaDataMap() {
diff --git 
a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-rewrite/src/test/java/org/apache/shardingsphere/sharding/rewrite/parameterized/ShardingSQLRewriterParameterizedTest.java
 
b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-rewrite/src/test/java/org/apache/shardingsphere/sharding/rewrite/parameterized/ShardingSQLRewriterParameterizedTest.java
index fd68341..b13cf4d 100644
--- 
a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-rewrite/src/test/java/org/apache/shardingsphere/sharding/rewrite/parameterized/ShardingSQLRewriterParameterizedTest.java
+++ 
b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-rewrite/src/test/java/org/apache/shardingsphere/sharding/rewrite/parameterized/ShardingSQLRewriterParameterizedTest.java
@@ -116,7 +116,7 @@ public final class ShardingSQLRewriterParameterizedTest 
extends AbstractSQLRewri
         RuleSchemaMetaData ruleSchemaMetaData = mock(RuleSchemaMetaData.class);
         
when(ruleSchemaMetaData.getConfiguredSchemaMetaData()).thenReturn(schemaMetaData);
         
when(ruleSchemaMetaData.getSchemaMetaData()).thenReturn(schemaMetaData);
-        return new ShardingSphereMetaData(mock(DataSourceMetaDatas.class), 
ruleSchemaMetaData, "sharding_db");
+        return new ShardingSphereMetaData("sharding_db", 
mock(DataSourceMetaDatas.class), ruleSchemaMetaData);
     }
     
     private Map<String, ColumnMetaData> createColumnMetaDataMap() {
diff --git 
a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-route/src/test/java/org/apache/shardingsphere/sharding/route/engine/type/standard/AbstractSQLRouteTest.java
 
b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-route/src/test/java/org/apache/shardingsphere/sharding/route/engine/type/standard/AbstractSQLRouteTest.java
index 1dacd22..efed5d7 100644
--- 
a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-route/src/test/java/org/apache/shardingsphere/sharding/route/engine/type/standard/AbstractSQLRouteTest.java
+++ 
b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-route/src/test/java/org/apache/shardingsphere/sharding/route/engine/type/standard/AbstractSQLRouteTest.java
@@ -53,7 +53,7 @@ public abstract class AbstractSQLRouteTest extends 
AbstractRoutingEngineTest {
     
     protected final RouteContext assertRoute(final String sql, final 
List<Object> parameters) {
         ShardingRule shardingRule = createAllShardingRule();
-        ShardingSphereMetaData metaData = new 
ShardingSphereMetaData(buildDataSourceMetas(), buildRuleSchemaMetaData(), 
"sharding_db");
+        ShardingSphereMetaData metaData = new 
ShardingSphereMetaData("sharding_db", buildDataSourceMetas(), 
buildRuleSchemaMetaData());
         ConfigurationProperties props = new ConfigurationProperties(new 
Properties());
         StandardSQLParserEngine standardSqlParserEngine = 
SQLParserEngineFactory.getSQLParserEngine("MySQL");
         SQLStatementContext<?> sqlStatementContext = 
SQLStatementContextFactory.newInstance(
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 a97a042..5790cbc 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
@@ -299,7 +299,7 @@ public final class GovernanceSchemaContexts implements 
SchemaContexts {
     }
     
     private ShardingSphereSchema getChangedShardingSphereSchema(final 
ShardingSphereSchema oldShardingSphereSchema, final RuleSchemaMetaData 
newRuleSchemaMetaData, final String schemaName) {
-        ShardingSphereMetaData metaData = new 
ShardingSphereMetaData(oldShardingSphereSchema.getMetaData().getDataSourceMetaDatas(),
 newRuleSchemaMetaData, schemaName);
+        ShardingSphereMetaData metaData = new 
ShardingSphereMetaData(schemaName, 
oldShardingSphereSchema.getMetaData().getDataSourceMetaDatas(), 
newRuleSchemaMetaData);
         return new ShardingSphereSchema(schemaName, 
oldShardingSphereSchema.getConfigurations(), 
oldShardingSphereSchema.getRules(), oldShardingSphereSchema.getDataSources(), 
metaData);
     }
     
diff --git 
a/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/ShardingSphereMetaData.java
 
b/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/ShardingSphereMetaData.java
index 12538e1..7081065 100644
--- 
a/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/ShardingSphereMetaData.java
+++ 
b/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/ShardingSphereMetaData.java
@@ -29,9 +29,9 @@ import 
org.apache.shardingsphere.infra.metadata.schema.RuleSchemaMetaData;
 @Getter
 public final class ShardingSphereMetaData {
     
+    private final String schemaName;
+    
     private final DataSourceMetaDatas dataSourceMetaDatas;
     
     private final RuleSchemaMetaData ruleSchemaMetaData;
-    
-    private final String schemaName;
 }
diff --git 
a/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/refresh/AbstractMetaDataRefreshStrategyTest.java
 
b/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/refresh/AbstractMetaDataRefreshStrategyTest.java
index ba05662..b43a4af 100644
--- 
a/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/refresh/AbstractMetaDataRefreshStrategyTest.java
+++ 
b/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/refresh/AbstractMetaDataRefreshStrategyTest.java
@@ -18,9 +18,6 @@
 package org.apache.shardingsphere.infra.metadata.refresh;
 
 import com.google.common.collect.ImmutableMap;
-
-import java.util.Collections;
-
 import com.google.common.collect.Lists;
 import lombok.Getter;
 import org.apache.shardingsphere.infra.metadata.ShardingSphereMetaData;
@@ -31,6 +28,8 @@ import 
org.apache.shardingsphere.sql.parser.binder.metadata.schema.SchemaMetaDat
 import 
org.apache.shardingsphere.sql.parser.binder.metadata.table.TableMetaData;
 import org.junit.Before;
 
+import java.util.Collections;
+
 @Getter
 public abstract class AbstractMetaDataRefreshStrategyTest {
     
@@ -42,10 +41,9 @@ public abstract class AbstractMetaDataRefreshStrategyTest {
     }
     
     private ShardingSphereMetaData buildMetaData() {
-        return new ShardingSphereMetaData(null, new RuleSchemaMetaData(new 
SchemaMetaData(ImmutableMap
-            .of("t_order", new TableMetaData(Collections.singletonList(new 
ColumnMetaData("order_id", 1, "String", false, false, false)), 
Collections.singletonList(new IndexMetaData("index"))))),
-            ImmutableMap.of("t_order_item", 
Lists.newArrayList("t_order_item"))),
-                "sharding_db");
+        SchemaMetaData schemaMetaData = new SchemaMetaData(ImmutableMap.of(
+                "t_order", new TableMetaData(Collections.singletonList(new 
ColumnMetaData("order_id", 1, "String", false, false, false)), 
Collections.singletonList(new IndexMetaData("index")))));
+        return new ShardingSphereMetaData("sharding_db", null, new 
RuleSchemaMetaData(schemaMetaData, ImmutableMap.of("t_order_item", 
Lists.newArrayList("t_order_item"))));
     }
 }
 
diff --git 
a/shardingsphere-infra/shardingsphere-infra-context/src/main/java/org/apache/shardingsphere/infra/context/schema/SchemaContextsBuilder.java
 
b/shardingsphere-infra/shardingsphere-infra-context/src/main/java/org/apache/shardingsphere/infra/context/schema/SchemaContextsBuilder.java
index 4e29028..3c458e8 100644
--- 
a/shardingsphere-infra/shardingsphere-infra-context/src/main/java/org/apache/shardingsphere/infra/context/schema/SchemaContextsBuilder.java
+++ 
b/shardingsphere-infra/shardingsphere-infra-context/src/main/java/org/apache/shardingsphere/infra/context/schema/SchemaContextsBuilder.java
@@ -123,7 +123,7 @@ public final class SchemaContextsBuilder {
         long start = System.currentTimeMillis();
         DataSourceMetaDatas dataSourceMetas = new 
DataSourceMetaDatas(databaseType, 
getDatabaseAccessConfigurationMap(dataSourceMap));
         RuleSchemaMetaData ruleSchemaMetaData = new 
RuleSchemaMetaDataLoader(rules).load(databaseType, dataSourceMap, props);
-        ShardingSphereMetaData result = new 
ShardingSphereMetaData(dataSourceMetas, ruleSchemaMetaData, schemaName);
+        ShardingSphereMetaData result = new ShardingSphereMetaData(schemaName, 
dataSourceMetas, ruleSchemaMetaData);
         log.info("Load meta data for schema {} finished, cost {} 
milliseconds.", schemaName, System.currentTimeMillis() - start);
         return result;
     }
diff --git 
a/shardingsphere-infra/shardingsphere-infra-executor/src/test/java/org/apache/shardingsphere/infra/executor/sql/context/ExecutionContextBuilderTest.java
 
b/shardingsphere-infra/shardingsphere-infra-executor/src/test/java/org/apache/shardingsphere/infra/executor/sql/context/ExecutionContextBuilderTest.java
index 0093728..69c72c4 100644
--- 
a/shardingsphere-infra/shardingsphere-infra-executor/src/test/java/org/apache/shardingsphere/infra/executor/sql/context/ExecutionContextBuilderTest.java
+++ 
b/shardingsphere-infra/shardingsphere-infra-executor/src/test/java/org/apache/shardingsphere/infra/executor/sql/context/ExecutionContextBuilderTest.java
@@ -55,7 +55,7 @@ public final class ExecutionContextBuilderTest {
         DataSourceMetaDatas dataSourceMetaDatas = 
mock(DataSourceMetaDatas.class);
         String firstDataSourceName = "firstDataSourceName";
         
when(dataSourceMetaDatas.getAllInstanceDataSourceNames()).thenReturn(Arrays.asList(firstDataSourceName,
 "lastDataSourceName"));
-        ShardingSphereMetaData metaData = new 
ShardingSphereMetaData(dataSourceMetaDatas, buildRuleSchemaMetaData(), 
"sharding_db");
+        ShardingSphereMetaData metaData = new 
ShardingSphereMetaData("sharding_db", dataSourceMetaDatas, 
buildRuleSchemaMetaData());
         Collection<ExecutionUnit> actual = 
ExecutionContextBuilder.build(metaData, genericSQLRewriteResult, 
mock(SQLStatementContext.class));
         Collection<ExecutionUnit> expected = Collections.singletonList(new 
ExecutionUnit(firstDataSourceName, new SQLUnit(sql, parameters)));
         assertThat(actual, is(expected));
@@ -70,7 +70,7 @@ public final class ExecutionContextBuilderTest {
         Map<RouteUnit, SQLRewriteUnit> sqlRewriteUnits = new HashMap<>(2, 1);
         sqlRewriteUnits.put(routeUnit1, sqlRewriteUnit1);
         sqlRewriteUnits.put(routeUnit2, sqlRewriteUnit2);
-        ShardingSphereMetaData metaData = new 
ShardingSphereMetaData(mock(DataSourceMetaDatas.class), 
buildRuleSchemaMetaData(), "sharding_db");
+        ShardingSphereMetaData metaData = new 
ShardingSphereMetaData("sharding_db", mock(DataSourceMetaDatas.class), 
buildRuleSchemaMetaData());
         Collection<ExecutionUnit> actual = 
ExecutionContextBuilder.build(metaData, new 
RouteSQLRewriteResult(sqlRewriteUnits), mock(SQLStatementContext.class));
         ExecutionUnit expectedUnit1 = new ExecutionUnit("actualName1", new 
SQLUnit("sql1", Collections.singletonList("parameter1")));
         ExecutionUnit expectedUnit2 = new ExecutionUnit("actualName2", new 
SQLUnit("sql2", Collections.singletonList("parameter2")));
@@ -88,7 +88,7 @@ public final class ExecutionContextBuilderTest {
         Map<RouteUnit, SQLRewriteUnit> sqlRewriteUnits = new HashMap<>(2, 1);
         sqlRewriteUnits.put(routeUnit2, sqlRewriteUnit2);
         RuleSchemaMetaData ruleSchemaMetaData = 
buildRuleSchemaMetaDataWithoutPrimaryKey();
-        ShardingSphereMetaData metaData = new 
ShardingSphereMetaData(mock(DataSourceMetaDatas.class), ruleSchemaMetaData, 
"sharding_db");
+        ShardingSphereMetaData metaData = new 
ShardingSphereMetaData("sharding_db", mock(DataSourceMetaDatas.class), 
ruleSchemaMetaData);
         Collection<ExecutionUnit> actual = 
ExecutionContextBuilder.build(metaData, new 
RouteSQLRewriteResult(sqlRewriteUnits), mock(SQLStatementContext.class));
         ExecutionUnit expectedUnit2 = new ExecutionUnit("actualName2", new 
SQLUnit("sql2", Collections.singletonList("parameter2")));
         Collection<ExecutionUnit> expected = new LinkedHashSet<>(1, 1);
@@ -104,7 +104,7 @@ public final class ExecutionContextBuilderTest {
                 new ColumnMetaData("status", Types.INTEGER, "int", false, 
false, false)), Collections.emptySet()));
         tableMetaDataMap.put("t_other", new 
TableMetaData(Collections.singletonList(new ColumnMetaData("order_id", 
Types.INTEGER, "int", true, false, false)), Collections.emptySet()));
         Map<String, Collection<String>> unconfiguredSchemaMetaDataMap = new 
HashMap<>(1, 1);
-        unconfiguredSchemaMetaDataMap.put("ds_0", Arrays.asList("t_category"));
+        unconfiguredSchemaMetaDataMap.put("ds_0", 
Collections.singletonList("t_category"));
         return new RuleSchemaMetaData(new SchemaMetaData(tableMetaDataMap), 
unconfiguredSchemaMetaDataMap);
     }
     
@@ -120,7 +120,7 @@ public final class ExecutionContextBuilderTest {
                 new ColumnMetaData("c_date", Types.TIMESTAMP, "timestamp", 
false, false, false)), Collections.emptySet()));
         tableMetaDataMap.put("t_other", new 
TableMetaData(Collections.singletonList(new ColumnMetaData("order_id", 
Types.INTEGER, "int", true, false, false)), Collections.emptySet()));
         Map<String, Collection<String>> unconfiguredSchemaMetaDataMap = new 
HashMap<>(1, 1);
-        unconfiguredSchemaMetaDataMap.put("ds_0", Arrays.asList("t_category"));
+        unconfiguredSchemaMetaDataMap.put("ds_0", 
Collections.singletonList("t_category"));
         return new RuleSchemaMetaData(new SchemaMetaData(tableMetaDataMap), 
unconfiguredSchemaMetaDataMap);
     }
 }
diff --git 
a/shardingsphere-proxy/shardingsphere-proxy-backend/src/test/java/org/apache/shardingsphere/proxy/backend/text/sctl/hint/ShardingCTLHintBackendHandlerTest.java
 
b/shardingsphere-proxy/shardingsphere-proxy-backend/src/test/java/org/apache/shardingsphere/proxy/backend/text/sctl/hint/ShardingCTLHintBackendHandlerTest.java
index 0801f7d..c214c48 100644
--- 
a/shardingsphere-proxy/shardingsphere-proxy-backend/src/test/java/org/apache/shardingsphere/proxy/backend/text/sctl/hint/ShardingCTLHintBackendHandlerTest.java
+++ 
b/shardingsphere-proxy/shardingsphere-proxy-backend/src/test/java/org/apache/shardingsphere/proxy/backend/text/sctl/hint/ShardingCTLHintBackendHandlerTest.java
@@ -207,8 +207,8 @@ public final class ShardingCTLHintBackendHandlerTest {
     
     private Map<String, SchemaContext> getSchemaContextMap() {
         ShardingSphereSchema shardingSphereSchema = 
mock(ShardingSphereSchema.class);
-        when(shardingSphereSchema.getMetaData()).thenReturn(new 
ShardingSphereMetaData(mock(DataSourceMetaDatas.class),
-                new RuleSchemaMetaData(new 
SchemaMetaData(ImmutableMap.of("user", mock(TableMetaData.class))), 
Collections.emptyMap()), "sharding_db"));
+        when(shardingSphereSchema.getMetaData()).thenReturn(new 
ShardingSphereMetaData("sharding_db", mock(DataSourceMetaDatas.class),
+                new RuleSchemaMetaData(new 
SchemaMetaData(ImmutableMap.of("user", mock(TableMetaData.class))), 
Collections.emptyMap())));
         when(shardingSphereSchema.isComplete()).thenReturn(true);
         SchemaContext result = new SchemaContext(shardingSphereSchema, null);
         return Collections.singletonMap("schema", result);

Reply via email to