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

zhaojinchao 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 10bebf6517a Rename SchemaBuilderMaterials to 
GenericSchemaBuilderMaterials (#17967)
10bebf6517a is described below

commit 10bebf6517a337a9113d5682cae09d46f189ca8a
Author: Zhengqiang Duan <[email protected]>
AuthorDate: Thu May 26 15:48:35 2022 +0800

    Rename SchemaBuilderMaterials to GenericSchemaBuilderMaterials (#17967)
---
 .../metadata/EncryptSchemaMetaDataBuilder.java     |  6 +++---
 .../metadata/EncryptSchemaMetaDataBuilderTest.java | 24 +++++++++++-----------
 .../metadata/ShardingSchemaMetaDataBuilder.java    |  6 +++---
 .../ShardingSchemaMetaDataBuilderTest.java         | 18 ++++++++--------
 .../schema/builder/GenericSchemaBuilder.java       |  2 +-
 ...als.java => GenericSchemaBuilderMaterials.java} |  2 +-
 .../schema/builder/SchemaMetaDataBuilder.java      |  8 ++++----
 .../spi/RuleBasedSchemaMetaDataBuilder.java        |  6 +++---
 .../database/schema/util/TableMetaDataUtil.java    | 13 +++++++-----
 .../schema/builder/SchemaMetaDataBuilderTest.java  |  6 +++---
 .../RuleBasedSchemaMetaDataBuilderFactoryTest.java |  3 +--
 .../loader/CommonFixtureSchemaMetaDataBuilder.java |  6 +++---
 ...ainedFixtureRuleBasedSchemaMetaDataBuilder.java |  6 +++---
 .../schema/util/TableMetaDataUtilTest.java         |  8 ++++----
 .../type/AlterTableStatementSchemaRefresher.java   |  4 ++--
 .../type/AlterViewStatementSchemaRefresher.java    |  4 ++--
 .../type/CreateTableStatementSchemaRefresher.java  |  4 ++--
 .../type/CreateViewStatementSchemaRefresher.java   |  4 ++--
 .../type/RenameTableStatementSchemaRefresher.java  |  4 ++--
 .../CommonFixtureSchemaMetaDataBuilder.java        |  6 +++---
 .../metadata/SingleTableSchemaMetaDataBuilder.java |  6 +++---
 .../metadata/SingleTableSchemaBuilderTest.java     |  4 ++--
 .../SingleTableSchemaMetaDataBuilderTest.java      |  8 ++++----
 .../mode/manager/ContextManager.java               |  8 ++++----
 24 files changed, 84 insertions(+), 82 deletions(-)

diff --git 
a/shardingsphere-features/shardingsphere-encrypt/shardingsphere-encrypt-core/src/main/java/org/apache/shardingsphere/encrypt/metadata/EncryptSchemaMetaDataBuilder.java
 
b/shardingsphere-features/shardingsphere-encrypt/shardingsphere-encrypt-core/src/main/java/org/apache/shardingsphere/encrypt/metadata/EncryptSchemaMetaDataBuilder.java
index 67a9cb9eb2e..c79e436814a 100644
--- 
a/shardingsphere-features/shardingsphere-encrypt/shardingsphere-encrypt-core/src/main/java/org/apache/shardingsphere/encrypt/metadata/EncryptSchemaMetaDataBuilder.java
+++ 
b/shardingsphere-features/shardingsphere-encrypt/shardingsphere-encrypt-core/src/main/java/org/apache/shardingsphere/encrypt/metadata/EncryptSchemaMetaDataBuilder.java
@@ -21,7 +21,7 @@ import 
org.apache.shardingsphere.encrypt.constant.EncryptOrder;
 import org.apache.shardingsphere.encrypt.rule.EncryptColumn;
 import org.apache.shardingsphere.encrypt.rule.EncryptRule;
 import org.apache.shardingsphere.encrypt.rule.EncryptTable;
-import 
org.apache.shardingsphere.infra.metadata.database.schema.builder.SchemaBuilderMaterials;
+import 
org.apache.shardingsphere.infra.metadata.database.schema.builder.GenericSchemaBuilderMaterials;
 import 
org.apache.shardingsphere.infra.metadata.database.schema.builder.spi.RuleBasedSchemaMetaDataBuilder;
 import 
org.apache.shardingsphere.infra.metadata.database.schema.loader.SchemaMetaDataLoaderEngine;
 import 
org.apache.shardingsphere.infra.metadata.database.schema.loader.TableMetaDataLoaderMaterial;
@@ -46,7 +46,7 @@ import java.util.stream.Collectors;
 public final class EncryptSchemaMetaDataBuilder implements 
RuleBasedSchemaMetaDataBuilder<EncryptRule> {
     
     @Override
-    public Map<String, SchemaMetaData> load(final Collection<String> 
tableNames, final EncryptRule rule, final SchemaBuilderMaterials materials) 
throws SQLException {
+    public Map<String, SchemaMetaData> load(final Collection<String> 
tableNames, final EncryptRule rule, final GenericSchemaBuilderMaterials 
materials) throws SQLException {
         Collection<String> needLoadTables = tableNames.stream().filter(each -> 
rule.findEncryptTable(each).isPresent()).collect(Collectors.toList());
         if (needLoadTables.isEmpty()) {
             return Collections.emptyMap();
@@ -56,7 +56,7 @@ public final class EncryptSchemaMetaDataBuilder implements 
RuleBasedSchemaMetaDa
     }
     
     @Override
-    public Map<String, SchemaMetaData> decorate(final Map<String, 
SchemaMetaData> schemaMetaDataMap, final EncryptRule rule, final 
SchemaBuilderMaterials materials) throws SQLException {
+    public Map<String, SchemaMetaData> decorate(final Map<String, 
SchemaMetaData> schemaMetaDataMap, final EncryptRule rule, final 
GenericSchemaBuilderMaterials materials) throws SQLException {
         Map<String, SchemaMetaData> result = new LinkedHashMap<>();
         for (Entry<String, SchemaMetaData> entry : 
schemaMetaDataMap.entrySet()) {
             Map<String, TableMetaData> tables = new 
LinkedHashMap<>(entry.getValue().getTables().size(), 1);
diff --git 
a/shardingsphere-features/shardingsphere-encrypt/shardingsphere-encrypt-core/src/test/java/org/apache/shardingsphere/encrypt/metadata/EncryptSchemaMetaDataBuilderTest.java
 
b/shardingsphere-features/shardingsphere-encrypt/shardingsphere-encrypt-core/src/test/java/org/apache/shardingsphere/encrypt/metadata/EncryptSchemaMetaDataBuilderTest.java
index f73dd427df5..b749f8a98ba 100644
--- 
a/shardingsphere-features/shardingsphere-encrypt/shardingsphere-encrypt-core/src/test/java/org/apache/shardingsphere/encrypt/metadata/EncryptSchemaMetaDataBuilderTest.java
+++ 
b/shardingsphere-features/shardingsphere-encrypt/shardingsphere-encrypt-core/src/test/java/org/apache/shardingsphere/encrypt/metadata/EncryptSchemaMetaDataBuilderTest.java
@@ -24,7 +24,7 @@ import 
org.apache.shardingsphere.encrypt.spi.context.EncryptColumnDataType;
 import org.apache.shardingsphere.infra.config.props.ConfigurationProperties;
 import org.apache.shardingsphere.infra.database.type.DatabaseType;
 import 
org.apache.shardingsphere.infra.metadata.database.schema.builder.spi.RuleBasedSchemaMetaDataBuilderFactory;
-import 
org.apache.shardingsphere.infra.metadata.database.schema.builder.SchemaBuilderMaterials;
+import 
org.apache.shardingsphere.infra.metadata.database.schema.builder.GenericSchemaBuilderMaterials;
 import 
org.apache.shardingsphere.infra.metadata.database.schema.loader.model.ColumnMetaData;
 import 
org.apache.shardingsphere.infra.metadata.database.schema.loader.model.SchemaMetaData;
 import 
org.apache.shardingsphere.infra.metadata.database.schema.loader.model.TableMetaData;
@@ -169,7 +169,7 @@ public final class EncryptSchemaMetaDataBuilderTest {
         EncryptSchemaMetaDataBuilder loader = 
getEncryptMetaDataBuilder(encryptRule, rules);
         
when(databaseType.formatTableNamePattern(TABLE_NAME)).thenReturn(TABLE_NAME);
         Map<String, SchemaMetaData> actual = 
loader.load(Collections.singleton(TABLE_NAME), encryptRule,
-                new SchemaBuilderMaterials(databaseType, databaseType, 
Collections.singletonMap("logic_db", dataSource), rules, new 
ConfigurationProperties(new Properties()), "logic_db"));
+                new GenericSchemaBuilderMaterials(databaseType, databaseType, 
Collections.singletonMap("logic_db", dataSource), rules, new 
ConfigurationProperties(new Properties()), "logic_db"));
         TableMetaData tableMetaData = 
actual.get("logic_db").getTables().values().iterator().next();
         List<String> columnNames = new 
ArrayList<>(tableMetaData.getColumns().keySet());
         
assertThat(tableMetaData.getColumns().get(columnNames.get(0)).getName(), 
is("id"));
@@ -187,7 +187,7 @@ public final class EncryptSchemaMetaDataBuilderTest {
                           final EncryptRule encryptRule) throws SQLException {
         when(databaseType.getType()).thenReturn("H2");
         Map<String, SchemaMetaData> actual = loader.load(tableNames, 
encryptRule,
-                new SchemaBuilderMaterials(databaseType, databaseType, 
Collections.singletonMap("logic_db", dataSource), rules, new 
ConfigurationProperties(new Properties()), "logic_db"));
+                new GenericSchemaBuilderMaterials(databaseType, databaseType, 
Collections.singletonMap("logic_db", dataSource), rules, new 
ConfigurationProperties(new Properties()), "logic_db"));
         assertResult(actual, "logic_db");
     }
     
@@ -202,7 +202,7 @@ public final class EncryptSchemaMetaDataBuilderTest {
                              final EncryptRule encryptRule) throws 
SQLException {
         when(databaseType.getType()).thenReturn("MySQL");
         Map<String, SchemaMetaData> actual = loader.load(tableNames, 
encryptRule,
-                new SchemaBuilderMaterials(databaseType, databaseType, 
Collections.singletonMap("logic_db", dataSource), rules, new 
ConfigurationProperties(new Properties()), "logic_db"));
+                new GenericSchemaBuilderMaterials(databaseType, databaseType, 
Collections.singletonMap("logic_db", dataSource), rules, new 
ConfigurationProperties(new Properties()), "logic_db"));
         assertResult(actual, "logic_db");
     }
     
@@ -217,7 +217,7 @@ public final class EncryptSchemaMetaDataBuilderTest {
                               final EncryptRule encryptRule) throws 
SQLException {
         when(databaseType.getType()).thenReturn("Oracle");
         Map<String, SchemaMetaData> actual = loader.load(tableNames, 
encryptRule,
-                new SchemaBuilderMaterials(databaseType, databaseType, 
Collections.singletonMap("logic_db", dataSource), rules, new 
ConfigurationProperties(new Properties()), "logic_db"));
+                new GenericSchemaBuilderMaterials(databaseType, databaseType, 
Collections.singletonMap("logic_db", dataSource), rules, new 
ConfigurationProperties(new Properties()), "logic_db"));
         assertResult(actual, "logic_db");
     }
     
@@ -236,7 +236,7 @@ public final class EncryptSchemaMetaDataBuilderTest {
         ResultSet schemaMetaData = mockSchemaMetaData();
         
when(dataSource.getConnection().getMetaData().getSchemas()).thenReturn(schemaMetaData);
         Map<String, SchemaMetaData> actual = loader.load(tableNames, 
encryptRule,
-                new SchemaBuilderMaterials(databaseType, databaseType, 
Collections.singletonMap("logic_db", dataSource), rules, new 
ConfigurationProperties(new Properties()), "logic_db"));
+                new GenericSchemaBuilderMaterials(databaseType, databaseType, 
Collections.singletonMap("logic_db", dataSource), rules, new 
ConfigurationProperties(new Properties()), "logic_db"));
         assertResult(actual, "public");
     }
     
@@ -265,7 +265,7 @@ public final class EncryptSchemaMetaDataBuilderTest {
                                  final EncryptRule encryptRule) throws 
SQLException {
         when(databaseType.getType()).thenReturn("SQLServer");
         Map<String, SchemaMetaData> actual = loader.load(tableNames, 
encryptRule,
-                new SchemaBuilderMaterials(databaseType, databaseType, 
Collections.singletonMap("logic_db", dataSource), rules, new 
ConfigurationProperties(new Properties()), "logic_db"));
+                new GenericSchemaBuilderMaterials(databaseType, databaseType, 
Collections.singletonMap("logic_db", dataSource), rules, new 
ConfigurationProperties(new Properties()), "logic_db"));
         assertResult(actual, "logic_db");
     }
     
@@ -282,7 +282,7 @@ public final class EncryptSchemaMetaDataBuilderTest {
         Collection<ShardingSphereRule> rules = 
Arrays.asList(createSingleTableRule(), encryptRule);
         EncryptSchemaMetaDataBuilder loader = new 
EncryptSchemaMetaDataBuilder();
         Map<String, SchemaMetaData> actual = 
loader.load(Collections.singleton("not_existed_table"), encryptRule,
-                new SchemaBuilderMaterials(databaseType, databaseType, 
Collections.singletonMap("logic_db", dataSource), rules, new 
ConfigurationProperties(new Properties()), "logic_db"));
+                new GenericSchemaBuilderMaterials(databaseType, databaseType, 
Collections.singletonMap("logic_db", dataSource), rules, new 
ConfigurationProperties(new Properties()), "logic_db"));
         assertTrue(actual.isEmpty());
     }
     
@@ -296,7 +296,7 @@ public final class EncryptSchemaMetaDataBuilderTest {
         Collection<ShardingSphereRule> rules = 
Arrays.asList(createSingleTableRule(), encryptRule);
         EncryptSchemaMetaDataBuilder loader = 
getEncryptMetaDataBuilder(encryptRule, rules);
         Map<String, SchemaMetaData> actual = 
loader.load(Collections.singleton(TABLE_NAME),
-                encryptRule, new SchemaBuilderMaterials(databaseType, 
databaseType, dataSourceMap, rules, new ConfigurationProperties(new 
Properties()), "logic_db"));
+                encryptRule, new GenericSchemaBuilderMaterials(databaseType, 
databaseType, dataSourceMap, rules, new ConfigurationProperties(new 
Properties()), "logic_db"));
         TableMetaData tableMetaData = 
actual.get("logic_db").getTables().values().iterator().next();
         List<String> actualColumnNames = new 
ArrayList<>(tableMetaData.getColumns().keySet());
         
assertThat(tableMetaData.getColumns().get(actualColumnNames.get(0)).getName(), 
is("id"));
@@ -312,7 +312,7 @@ public final class EncryptSchemaMetaDataBuilderTest {
         dataSourceMap.put("logic_db_2", new MockedDataSource());
         EncryptSchemaMetaDataBuilder loader = new 
EncryptSchemaMetaDataBuilder();
         Map<String, SchemaMetaData> actual = 
loader.load(Collections.singleton("not_existed_table"),
-                encryptRule, new SchemaBuilderMaterials(databaseType, 
databaseType, dataSourceMap, rules, new ConfigurationProperties(new 
Properties()), "logic_db"));
+                encryptRule, new GenericSchemaBuilderMaterials(databaseType, 
databaseType, dataSourceMap, rules, new ConfigurationProperties(new 
Properties()), "logic_db"));
         assertTrue(actual.isEmpty());
     }
     
@@ -323,7 +323,7 @@ public final class EncryptSchemaMetaDataBuilderTest {
         Map<String, TableMetaData> tableMetaDataMap = new LinkedHashMap<>();
         tableMetaDataMap.put("t_encrypt", createTableMetaData());
         TableMetaData actual = 
loader.decorate(Collections.singletonMap("logic_db",
-                new SchemaMetaData("logic_db", tableMetaDataMap)), rule, 
mock(SchemaBuilderMaterials.class)).get("logic_db").getTables().get("t_encrypt");
+                new SchemaMetaData("logic_db", tableMetaDataMap)), rule, 
mock(GenericSchemaBuilderMaterials.class)).get("logic_db").getTables().get("t_encrypt");
         assertThat(actual.getColumns().size(), is(2));
         assertTrue(actual.getColumns().containsKey("id"));
         assertTrue(actual.getColumns().containsKey("pwd"));
@@ -335,7 +335,7 @@ public final class EncryptSchemaMetaDataBuilderTest {
         EncryptSchemaMetaDataBuilder loader = getEncryptMetaDataBuilder(rule, 
Collections.singleton(rule));
         Map<String, TableMetaData> tableMetaDataMap = new LinkedHashMap<>();
         tableMetaDataMap.put("t_encrypt", createTableMetaData());
-        SchemaBuilderMaterials materials = mock(SchemaBuilderMaterials.class, 
RETURNS_DEEP_STUBS);
+        GenericSchemaBuilderMaterials materials = 
mock(GenericSchemaBuilderMaterials.class, RETURNS_DEEP_STUBS);
         
when(materials.getDataSourceMap().values().stream().findAny()).thenReturn(Optional.of(dataSource));
         TableMetaData actual = 
loader.decorate(Collections.singletonMap("logic_db", new 
SchemaMetaData("logic_db", tableMetaDataMap)),
                 rule, materials).get("logic_db").getTables().get("t_encrypt");
diff --git 
a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/metadata/ShardingSchemaMetaDataBuilder.java
 
b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/metadata/ShardingSchemaMetaDataBuilder.java
index 4780ab9935a..fd8b1abccd4 100644
--- 
a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/metadata/ShardingSchemaMetaDataBuilder.java
+++ 
b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/metadata/ShardingSchemaMetaDataBuilder.java
@@ -22,7 +22,7 @@ import lombok.RequiredArgsConstructor;
 import org.apache.shardingsphere.infra.config.props.ConfigurationPropertyKey;
 import org.apache.shardingsphere.infra.datanode.DataNode;
 import org.apache.shardingsphere.infra.exception.ShardingSphereException;
-import 
org.apache.shardingsphere.infra.metadata.database.schema.builder.SchemaBuilderMaterials;
+import 
org.apache.shardingsphere.infra.metadata.database.schema.builder.GenericSchemaBuilderMaterials;
 import 
org.apache.shardingsphere.infra.metadata.database.schema.builder.spi.RuleBasedSchemaMetaDataBuilder;
 import 
org.apache.shardingsphere.infra.metadata.database.schema.loader.SchemaMetaDataLoaderEngine;
 import 
org.apache.shardingsphere.infra.metadata.database.schema.loader.TableMetaDataLoaderMaterial;
@@ -53,7 +53,7 @@ import java.util.stream.Collectors;
 public final class ShardingSchemaMetaDataBuilder implements 
RuleBasedSchemaMetaDataBuilder<ShardingRule> {
     
     @Override
-    public Map<String, SchemaMetaData> load(final Collection<String> 
tableNames, final ShardingRule rule, final SchemaBuilderMaterials materials) 
throws SQLException {
+    public Map<String, SchemaMetaData> load(final Collection<String> 
tableNames, final ShardingRule rule, final GenericSchemaBuilderMaterials 
materials) throws SQLException {
         Collection<String> needLoadTables = tableNames.stream().filter(each -> 
rule.findTableRule(each).isPresent() || 
rule.isBroadcastTable(each)).collect(Collectors.toList());
         if (needLoadTables.isEmpty()) {
             return Collections.emptyMap();
@@ -71,7 +71,7 @@ public final class ShardingSchemaMetaDataBuilder implements 
RuleBasedSchemaMetaD
     }
     
     @Override
-    public Map<String, SchemaMetaData> decorate(final Map<String, 
SchemaMetaData> schemaMetaDataMap, final ShardingRule rule, final 
SchemaBuilderMaterials materials) throws SQLException {
+    public Map<String, SchemaMetaData> decorate(final Map<String, 
SchemaMetaData> schemaMetaDataMap, final ShardingRule rule, final 
GenericSchemaBuilderMaterials materials) throws SQLException {
         Map<String, SchemaMetaData> result = new LinkedHashMap<>();
         for (Entry<String, SchemaMetaData> entry : 
schemaMetaDataMap.entrySet()) {
             Map<String, TableMetaData> tables = new 
LinkedHashMap<>(entry.getValue().getTables().size(), 1);
diff --git 
a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/metadata/ShardingSchemaMetaDataBuilderTest.java
 
b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/metadata/ShardingSchemaMetaDataBuilderTest.java
index f2015a99879..5fded3d02a0 100644
--- 
a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/metadata/ShardingSchemaMetaDataBuilderTest.java
+++ 
b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding/metadata/ShardingSchemaMetaDataBuilderTest.java
@@ -22,7 +22,7 @@ import 
org.apache.shardingsphere.infra.config.props.ConfigurationPropertyKey;
 import org.apache.shardingsphere.infra.database.type.DatabaseType;
 import 
org.apache.shardingsphere.infra.database.type.dialect.OracleDatabaseType;
 import 
org.apache.shardingsphere.infra.metadata.database.schema.builder.spi.RuleBasedSchemaMetaDataBuilderFactory;
-import 
org.apache.shardingsphere.infra.metadata.database.schema.builder.SchemaBuilderMaterials;
+import 
org.apache.shardingsphere.infra.metadata.database.schema.builder.GenericSchemaBuilderMaterials;
 import 
org.apache.shardingsphere.infra.metadata.database.schema.loader.model.ColumnMetaData;
 import 
org.apache.shardingsphere.infra.metadata.database.schema.loader.model.IndexMetaData;
 import 
org.apache.shardingsphere.infra.metadata.database.schema.loader.model.SchemaMetaData;
@@ -251,7 +251,7 @@ public class ShardingSchemaMetaDataBuilderTest {
         Collection<ShardingSphereRule> rules = 
Collections.singletonList(shardingRule);
         ShardingSchemaMetaDataBuilder loader = (ShardingSchemaMetaDataBuilder) 
RuleBasedSchemaMetaDataBuilderFactory.getInstances(rules).get(shardingRule);
         Map<String, SchemaMetaData> actual = loader.load(tableNames, 
shardingRule,
-                new SchemaBuilderMaterials(databaseType, databaseType, 
Collections.singletonMap("ds", dataSource), rules, props, "sharding_db"));
+                new GenericSchemaBuilderMaterials(databaseType, databaseType, 
Collections.singletonMap("ds", dataSource), rules, props, "sharding_db"));
         assertResult(actual, "sharding_db");
     }
     
@@ -264,7 +264,7 @@ public class ShardingSchemaMetaDataBuilderTest {
         Collection<ShardingSphereRule> rules = 
Collections.singletonList(shardingRule);
         ShardingSchemaMetaDataBuilder loader = (ShardingSchemaMetaDataBuilder) 
RuleBasedSchemaMetaDataBuilderFactory.getInstances(rules).get(shardingRule);
         Map<String, SchemaMetaData> actual = loader.load(tableNames, 
shardingRule,
-                new SchemaBuilderMaterials(databaseType, databaseType, 
Collections.singletonMap("ds", dataSource), rules, props, "sharding_db"));
+                new GenericSchemaBuilderMaterials(databaseType, databaseType, 
Collections.singletonMap("ds", dataSource), rules, props, "sharding_db"));
         assertResult(actual, "sharding_db");
     }
     
@@ -277,7 +277,7 @@ public class ShardingSchemaMetaDataBuilderTest {
         DatabaseType databaseType = mock(OracleDatabaseType.class);
         when(databaseType.getType()).thenReturn("Oracle");
         Map<String, SchemaMetaData> actual = 
loader.load(Collections.singletonList(TABLE_NAME), shardingRule,
-                new SchemaBuilderMaterials(databaseType, databaseType, 
Collections.singletonMap("ds", dataSource), rules, props, "sharding_db"));
+                new GenericSchemaBuilderMaterials(databaseType, databaseType, 
Collections.singletonMap("ds", dataSource), rules, props, "sharding_db"));
         
assertThat(actual.get("sharding_db").getTables().keySet().iterator().next(), 
is("T_ORDER_0"));
         TableMetaData tableMetaData = 
actual.get("sharding_db").getTables().values().iterator().next();
         List<String> actualColumnNames = new 
ArrayList<>(tableMetaData.getColumns().keySet());
@@ -307,7 +307,7 @@ public class ShardingSchemaMetaDataBuilderTest {
         ResultSet schemaMetaData = mockSchemaMetaData();
         
when(dataSource.getConnection().getMetaData().getSchemas()).thenReturn(schemaMetaData);
         Map<String, SchemaMetaData> actual = loader.load(tableNames, 
shardingRule,
-                new SchemaBuilderMaterials(databaseType, databaseType, 
Collections.singletonMap("ds", dataSource), rules, props, "sharding_db"));
+                new GenericSchemaBuilderMaterials(databaseType, databaseType, 
Collections.singletonMap("ds", dataSource), rules, props, "sharding_db"));
         assertResult(actual, "public");
     }
     
@@ -334,7 +334,7 @@ public class ShardingSchemaMetaDataBuilderTest {
         Collection<ShardingSphereRule> rules = 
Collections.singletonList(shardingRule);
         ShardingSchemaMetaDataBuilder loader = (ShardingSchemaMetaDataBuilder) 
RuleBasedSchemaMetaDataBuilderFactory.getInstances(rules).get(shardingRule);
         Map<String, SchemaMetaData> actual = loader.load(tableNames, 
shardingRule,
-                new SchemaBuilderMaterials(databaseType, databaseType, 
Collections.singletonMap("ds", dataSource), rules, props, "sharding_db"));
+                new GenericSchemaBuilderMaterials(databaseType, databaseType, 
Collections.singletonMap("ds", dataSource), rules, props, "sharding_db"));
         assertResult(actual, "sharding_db");
     }
     
@@ -358,7 +358,7 @@ public class ShardingSchemaMetaDataBuilderTest {
         Collection<ShardingSphereRule> rules = 
Collections.singletonList(shardingRule);
         ShardingSchemaMetaDataBuilder loader = (ShardingSchemaMetaDataBuilder) 
RuleBasedSchemaMetaDataBuilderFactory.getInstances(rules).get(shardingRule);
         Map<String, SchemaMetaData> actual = loader.load(tableNames, 
shardingRule,
-                new SchemaBuilderMaterials(databaseType, databaseType, 
Collections.singletonMap("ds", dataSource), rules, props, "sharding_db"));
+                new GenericSchemaBuilderMaterials(databaseType, databaseType, 
Collections.singletonMap("ds", dataSource), rules, props, "sharding_db"));
         TableMetaData tableMetaData = 
actual.get("sharding_db").getTables().values().iterator().next();
         List<String> actualColumnNames = new 
ArrayList<>(tableMetaData.getColumns().keySet());
         
assertThat(tableMetaData.getColumns().get(actualColumnNames.get(0)).getName(), 
is("id"));
@@ -376,7 +376,7 @@ public class ShardingSchemaMetaDataBuilderTest {
         Collection<ShardingSphereRule> rules = 
Collections.singletonList(shardingRule);
         ShardingSchemaMetaDataBuilder loader = (ShardingSchemaMetaDataBuilder) 
RuleBasedSchemaMetaDataBuilderFactory.getInstances(rules).get(shardingRule);
         Map<String, SchemaMetaData> actual = loader.load(tableNames, 
shardingRule,
-                new SchemaBuilderMaterials(databaseType, databaseType, 
Collections.singletonMap("ds", dataSource), rules, props, "sharding_db"));
+                new GenericSchemaBuilderMaterials(databaseType, databaseType, 
Collections.singletonMap("ds", dataSource), rules, props, "sharding_db"));
         TableMetaData tableMetaData = 
actual.get("sharding_db").getTables().values().iterator().next();
         List<String> actualColumnNames = new 
ArrayList<>(tableMetaData.getColumns().keySet());
         
assertThat(tableMetaData.getColumns().get(actualColumnNames.get(0)).getName(), 
is("id"));
@@ -391,7 +391,7 @@ public class ShardingSchemaMetaDataBuilderTest {
         Map<String, TableMetaData> tableMetaDataMap = new LinkedHashMap<>();
         tableMetaDataMap.put(TABLE_NAME, createTableMetaData());
         Map<String, ColumnMetaData> columns = 
builder.decorate(Collections.singletonMap("sharding_db", new 
SchemaMetaData("sharding_db", tableMetaDataMap)),
-                shardingRule, 
mock(SchemaBuilderMaterials.class)).get("sharding_db").getTables().get(TABLE_NAME).getColumns();
+                shardingRule, 
mock(GenericSchemaBuilderMaterials.class)).get("sharding_db").getTables().get(TABLE_NAME).getColumns();
         Iterator<ColumnMetaData> iterator = columns.values().iterator();
         assertTrue(iterator.next().isGenerated());
         assertFalse(iterator.next().isGenerated());
diff --git 
a/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/database/schema/builder/GenericSchemaBuilder.java
 
b/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/database/schema/builder/GenericSchemaBuilder.java
index d033e137cfb..ede990d816f 100644
--- 
a/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/database/schema/builder/GenericSchemaBuilder.java
+++ 
b/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/database/schema/builder/GenericSchemaBuilder.java
@@ -55,7 +55,7 @@ public final class GenericSchemaBuilder {
                                                           final 
Collection<ShardingSphereRule> rules, final ConfigurationProperties props) 
throws SQLException {
         String defaultSchemaName = 
DatabaseTypeEngine.getDefaultSchemaName(protocolType, databaseName);
         Map<String, SchemaMetaData> schemaMetaDataMap = 
SchemaMetaDataBuilder.load(
-                getAllTableNames(rules), new 
SchemaBuilderMaterials(protocolType, storageType, dataSourceMap, rules, props, 
defaultSchemaName));
+                getAllTableNames(rules), new 
GenericSchemaBuilderMaterials(protocolType, storageType, dataSourceMap, rules, 
props, defaultSchemaName));
         if (schemaMetaDataMap.isEmpty()) {
             return Collections.singletonMap(defaultSchemaName, new 
ShardingSphereSchema());
         }
diff --git 
a/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/database/schema/builder/SchemaBuilderMaterials.java
 
b/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/database/schema/builder/GenericSchemaBuilderMaterials.java
similarity index 96%
rename from 
shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/database/schema/builder/SchemaBuilderMaterials.java
rename to 
shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/database/schema/builder/GenericSchemaBuilderMaterials.java
index 373f87ae218..40a97d25fa1 100644
--- 
a/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/database/schema/builder/SchemaBuilderMaterials.java
+++ 
b/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/database/schema/builder/GenericSchemaBuilderMaterials.java
@@ -32,7 +32,7 @@ import java.util.Map;
  */
 @RequiredArgsConstructor
 @Getter
-public final class SchemaBuilderMaterials {
+public final class GenericSchemaBuilderMaterials {
     
     private final DatabaseType protocolType;
     
diff --git 
a/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/database/schema/builder/SchemaMetaDataBuilder.java
 
b/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/database/schema/builder/SchemaMetaDataBuilder.java
index 71a909eee6e..6f4aa752609 100644
--- 
a/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/database/schema/builder/SchemaMetaDataBuilder.java
+++ 
b/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/database/schema/builder/SchemaMetaDataBuilder.java
@@ -50,7 +50,7 @@ public final class SchemaMetaDataBuilder {
      * @return table meta data map
      * @throws SQLException SQL exception
      */
-    public static Map<String, SchemaMetaData> load(final Collection<String> 
tableNames, final SchemaBuilderMaterials materials) throws SQLException {
+    public static Map<String, SchemaMetaData> load(final Collection<String> 
tableNames, final GenericSchemaBuilderMaterials materials) throws SQLException {
         Map<String, SchemaMetaData> result = 
loadSchemasWithTableContainedRules(tableNames, materials);
         if (!materials.getProtocolType().equals(materials.getStorageType())) {
             result = translate(result, materials);
@@ -59,7 +59,7 @@ public final class SchemaMetaDataBuilder {
     }
     
     @SuppressWarnings({"unchecked", "rawtypes"})
-    private static Map<String, SchemaMetaData> 
loadSchemasWithTableContainedRules(final Collection<String> tableNames, final 
SchemaBuilderMaterials materials) throws SQLException {
+    private static Map<String, SchemaMetaData> 
loadSchemasWithTableContainedRules(final Collection<String> tableNames, final 
GenericSchemaBuilderMaterials materials) throws SQLException {
         Map<String, SchemaMetaData> result = new LinkedHashMap<>();
         for (Entry<ShardingSphereRule, RuleBasedSchemaMetaDataBuilder> entry : 
RuleBasedSchemaMetaDataBuilderFactory.getInstances(materials.getRules()).entrySet())
 {
             ShardingSphereRule rule = entry.getKey();
@@ -86,7 +86,7 @@ public final class SchemaMetaDataBuilder {
         }
     }
     
-    private static Map<String, SchemaMetaData> translate(final Map<String, 
SchemaMetaData> schemaMetaDataMap, final SchemaBuilderMaterials materials) {
+    private static Map<String, SchemaMetaData> translate(final Map<String, 
SchemaMetaData> schemaMetaDataMap, final GenericSchemaBuilderMaterials 
materials) {
         Map<String, SchemaMetaData> result = new LinkedHashMap<>();
         Map<String, TableMetaData> tableMetaDataMap = 
Optional.ofNullable(schemaMetaDataMap.get(
                 
DatabaseTypeEngine.getDefaultSchemaName(materials.getStorageType(), 
materials.getDefaultSchemaName()))).map(SchemaMetaData::getTables).orElseGet(Collections::emptyMap);
@@ -96,7 +96,7 @@ public final class SchemaMetaDataBuilder {
     }
     
     @SuppressWarnings({"unchecked", "rawtypes"})
-    private static Map<String, SchemaMetaData> decorate(final Map<String, 
SchemaMetaData> schemaMetaDataMap, final SchemaBuilderMaterials materials) 
throws SQLException {
+    private static Map<String, SchemaMetaData> decorate(final Map<String, 
SchemaMetaData> schemaMetaDataMap, final GenericSchemaBuilderMaterials 
materials) throws SQLException {
         Map<String, SchemaMetaData> result = new 
LinkedHashMap<>(schemaMetaDataMap);
         for (Entry<ShardingSphereRule, RuleBasedSchemaMetaDataBuilder> entry : 
RuleBasedSchemaMetaDataBuilderFactory.getInstances(materials.getRules()).entrySet())
 {
             if (!(entry.getKey() instanceof TableContainedRule)) {
diff --git 
a/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/database/schema/builder/spi/RuleBasedSchemaMetaDataBuilder.java
 
b/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/database/schema/builder/spi/RuleBasedSchemaMetaDataBuilder.java
index d4b40a202b1..943d58aa1b0 100644
--- 
a/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/database/schema/builder/spi/RuleBasedSchemaMetaDataBuilder.java
+++ 
b/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/database/schema/builder/spi/RuleBasedSchemaMetaDataBuilder.java
@@ -17,7 +17,7 @@
 
 package org.apache.shardingsphere.infra.metadata.database.schema.builder.spi;
 
-import 
org.apache.shardingsphere.infra.metadata.database.schema.builder.SchemaBuilderMaterials;
+import 
org.apache.shardingsphere.infra.metadata.database.schema.builder.GenericSchemaBuilderMaterials;
 import 
org.apache.shardingsphere.infra.metadata.database.schema.loader.model.SchemaMetaData;
 import org.apache.shardingsphere.infra.rule.identifier.type.TableContainedRule;
 import org.apache.shardingsphere.spi.annotation.SingletonSPI;
@@ -44,7 +44,7 @@ public interface RuleBasedSchemaMetaDataBuilder<T extends 
TableContainedRule> ex
      * @return schema meta data map
      * @throws SQLException SQL exception
      */
-    Map<String, SchemaMetaData> load(Collection<String> tableNames, T rule, 
SchemaBuilderMaterials materials) throws SQLException;
+    Map<String, SchemaMetaData> load(Collection<String> tableNames, T rule, 
GenericSchemaBuilderMaterials materials) throws SQLException;
     
     /**
      * Decorate schema meta data.
@@ -55,5 +55,5 @@ public interface RuleBasedSchemaMetaDataBuilder<T extends 
TableContainedRule> ex
      * @return schema meta data map
      * @throws SQLException SQL exception
      */
-    Map<String, SchemaMetaData> decorate(Map<String, SchemaMetaData> 
schemaMetaDataMap, T rule, SchemaBuilderMaterials materials) throws 
SQLException;
+    Map<String, SchemaMetaData> decorate(Map<String, SchemaMetaData> 
schemaMetaDataMap, T rule, GenericSchemaBuilderMaterials materials) throws 
SQLException;
 }
diff --git 
a/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/database/schema/util/TableMetaDataUtil.java
 
b/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/database/schema/util/TableMetaDataUtil.java
index f7b496e4be7..c2879b68073 100644
--- 
a/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/database/schema/util/TableMetaDataUtil.java
+++ 
b/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/database/schema/util/TableMetaDataUtil.java
@@ -24,7 +24,7 @@ import org.apache.shardingsphere.infra.datanode.DataNode;
 import org.apache.shardingsphere.infra.datanode.DataNodes;
 import 
org.apache.shardingsphere.infra.datasource.registry.GlobalDataSourceRegistry;
 import org.apache.shardingsphere.infra.exception.ShardingSphereException;
-import 
org.apache.shardingsphere.infra.metadata.database.schema.builder.SchemaBuilderMaterials;
+import 
org.apache.shardingsphere.infra.metadata.database.schema.builder.GenericSchemaBuilderMaterials;
 import 
org.apache.shardingsphere.infra.metadata.database.schema.loader.TableMetaDataLoaderMaterial;
 
 import java.util.Collection;
@@ -48,7 +48,8 @@ public class TableMetaDataUtil {
      * @param checkMetaDataEnable config CHECK_TABLE_METADATA_ENABLED
      * @return TableMetaDataLoadMaterials
      */
-    public static Collection<TableMetaDataLoaderMaterial> 
getTableMetaDataLoadMaterial(final Collection<String> tableNames, final 
SchemaBuilderMaterials materials, final boolean checkMetaDataEnable) {
+    public static Collection<TableMetaDataLoaderMaterial> 
getTableMetaDataLoadMaterial(final Collection<String> tableNames, 
+                                                                               
        final GenericSchemaBuilderMaterials materials, final boolean 
checkMetaDataEnable) {
         Map<String, Collection<String>> dataSourceTableGroups = new 
LinkedHashMap<>();
         DataNodes dataNodes = new DataNodes(materials.getRules());
         for (String each : tableNames) {
@@ -76,14 +77,15 @@ public class TableMetaDataUtil {
         }
     }
     
-    private static void addOneActualTableDataNode(final SchemaBuilderMaterials 
materials, final Map<String, Collection<String>> dataSourceTableGroups, final 
DataNodes dataNodes, final String table) {
+    private static void addOneActualTableDataNode(final 
GenericSchemaBuilderMaterials materials, 
+                                                  final Map<String, 
Collection<String>> dataSourceTableGroups, final DataNodes dataNodes, final 
String table) {
         Optional<DataNode> dataNode = 
dataNodes.getDataNodes(table).stream().filter(each -> 
isSameDataSourceNameSchemaName(materials, each)).findFirst();
         String dataSourceName = 
dataNode.map(DataNode::getDataSourceName).orElseGet(() -> 
materials.getDataSourceMap().keySet().iterator().next());
         String tableName = dataNode.map(DataNode::getTableName).orElse(table);
         addDataSourceTableGroups(dataSourceName, tableName, 
dataSourceTableGroups);
     }
     
-    private static boolean isSameDataSourceNameSchemaName(final 
SchemaBuilderMaterials materials, final DataNode dataNode) {
+    private static boolean isSameDataSourceNameSchemaName(final 
GenericSchemaBuilderMaterials materials, final DataNode dataNode) {
         String dataSourceName = dataNode.getDataSourceName().contains(".") ? 
dataNode.getDataSourceName().split("\\.")[0] : dataNode.getDataSourceName();
         if (!materials.getDataSourceMap().containsKey(dataSourceName)) {
             return false;
@@ -91,7 +93,8 @@ public class TableMetaDataUtil {
         return null == dataNode.getSchemaName() || 
dataNode.getSchemaName().equalsIgnoreCase(materials.getDefaultSchemaName());
     }
     
-    private static void addAllActualTableDataNode(final SchemaBuilderMaterials 
materials, final Map<String, Collection<String>> dataSourceTableGroups, final 
DataNodes dataNodes, final String table) {
+    private static void addAllActualTableDataNode(final 
GenericSchemaBuilderMaterials materials, 
+                                                  final Map<String, 
Collection<String>> dataSourceTableGroups, final DataNodes dataNodes, final 
String table) {
         Collection<DataNode> tableDataNodes = dataNodes.getDataNodes(table);
         if (tableDataNodes.isEmpty()) {
             
addDataSourceTableGroups(materials.getDataSourceMap().keySet().iterator().next(),
 table, dataSourceTableGroups);
diff --git 
a/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/database/schema/builder/SchemaMetaDataBuilderTest.java
 
b/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/database/schema/builder/SchemaMetaDataBuilderTest.java
index 099ed11f4cf..00ecd7b7abb 100644
--- 
a/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/database/schema/builder/SchemaMetaDataBuilderTest.java
+++ 
b/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/database/schema/builder/SchemaMetaDataBuilderTest.java
@@ -49,21 +49,21 @@ public final class SchemaMetaDataBuilderTest {
     
     @Test
     public void assertLoadWithExistedTableName() throws SQLException {
-        SchemaBuilderMaterials materials = new 
SchemaBuilderMaterials(databaseType, databaseType, 
Collections.singletonMap("logic_db", new MockedDataSource()),
+        GenericSchemaBuilderMaterials materials = new 
GenericSchemaBuilderMaterials(databaseType, databaseType, 
Collections.singletonMap("logic_db", new MockedDataSource()),
                 Arrays.asList(new CommonFixtureRule(), new 
DataNodeContainedFixtureRule()), new ConfigurationProperties(new Properties()), 
"sharding_db");
         
assertFalse(SchemaMetaDataBuilder.load(Collections.singletonList("data_node_routed_table1"),
 materials).isEmpty());
     }
     
     @Test
     public void assertLoadWithNotExistedTableName() throws SQLException {
-        SchemaBuilderMaterials materials = new 
SchemaBuilderMaterials(databaseType, databaseType, 
Collections.singletonMap("logic_db", new MockedDataSource()),
+        GenericSchemaBuilderMaterials materials = new 
GenericSchemaBuilderMaterials(databaseType, databaseType, 
Collections.singletonMap("logic_db", new MockedDataSource()),
                 Arrays.asList(new CommonFixtureRule(), new 
DataNodeContainedFixtureRule()), new ConfigurationProperties(new Properties()), 
"sharding_db");
         
assertTrue(SchemaMetaDataBuilder.load(Collections.singletonList("invalid_table"),
 materials).isEmpty());
     }
     
     @Test
     public void assertLoadAllTables() throws SQLException {
-        SchemaBuilderMaterials materials = new 
SchemaBuilderMaterials(databaseType, databaseType, 
Collections.singletonMap("logic_db", new MockedDataSource()),
+        GenericSchemaBuilderMaterials materials = new 
GenericSchemaBuilderMaterials(databaseType, databaseType, 
Collections.singletonMap("logic_db", new MockedDataSource()),
                 Arrays.asList(new CommonFixtureRule(), new 
DataNodeContainedFixtureRule()), new ConfigurationProperties(new Properties()), 
"sharding_db");
         Map<String, SchemaMetaData> actual = SchemaMetaDataBuilder.load(new 
DataNodeContainedFixtureRule().getTables(), materials);
         assertThat(actual.size(), is(1));
diff --git 
a/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/database/schema/builder/RuleBasedSchemaMetaDataBuilderFactoryTest.java
 
b/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/database/schema/builder/spi/RuleBasedSchemaMetaDataBuilderFactoryTest.java
similarity index 92%
rename from 
shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/database/schema/builder/RuleBasedSchemaMetaDataBuilderFactoryTest.java
rename to 
shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/database/schema/builder/spi/RuleBasedSchemaMetaDataBuilderFactoryTest.java
index ec71464e2a6..71b96379952 100644
--- 
a/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/database/schema/builder/RuleBasedSchemaMetaDataBuilderFactoryTest.java
+++ 
b/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/database/schema/builder/spi/RuleBasedSchemaMetaDataBuilderFactoryTest.java
@@ -15,9 +15,8 @@
  * limitations under the License.
  */
 
-package org.apache.shardingsphere.infra.metadata.database.schema.builder;
+package org.apache.shardingsphere.infra.metadata.database.schema.builder.spi;
 
-import 
org.apache.shardingsphere.infra.metadata.database.schema.builder.spi.RuleBasedSchemaMetaDataBuilderFactory;
 import 
org.apache.shardingsphere.infra.metadata.database.schema.fixture.loader.CommonFixtureSchemaMetaDataBuilder;
 import 
org.apache.shardingsphere.infra.metadata.database.schema.fixture.rule.CommonFixtureRule;
 import org.junit.Test;
diff --git 
a/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/database/schema/fixture/loader/CommonFixtureSchemaMetaDataBuilder.java
 
b/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/database/schema/fixture/loader/CommonFixtureSchemaMetaDataBuilder.java
index 844e3640b6e..4c6a8d3e14c 100644
--- 
a/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/database/schema/fixture/loader/CommonFixtureSchemaMetaDataBuilder.java
+++ 
b/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/database/schema/fixture/loader/CommonFixtureSchemaMetaDataBuilder.java
@@ -17,7 +17,7 @@
 
 package 
org.apache.shardingsphere.infra.metadata.database.schema.fixture.loader;
 
-import 
org.apache.shardingsphere.infra.metadata.database.schema.builder.SchemaBuilderMaterials;
+import 
org.apache.shardingsphere.infra.metadata.database.schema.builder.GenericSchemaBuilderMaterials;
 import 
org.apache.shardingsphere.infra.metadata.database.schema.builder.spi.RuleBasedSchemaMetaDataBuilder;
 import 
org.apache.shardingsphere.infra.metadata.database.schema.fixture.rule.CommonFixtureRule;
 import 
org.apache.shardingsphere.infra.metadata.database.schema.loader.model.SchemaMetaData;
@@ -30,12 +30,12 @@ import java.util.Map;
 public final class CommonFixtureSchemaMetaDataBuilder implements 
RuleBasedSchemaMetaDataBuilder<CommonFixtureRule> {
     
     @Override
-    public Map<String, SchemaMetaData> load(final Collection<String> 
tableNames, final CommonFixtureRule rule, final SchemaBuilderMaterials 
materials) throws SQLException {
+    public Map<String, SchemaMetaData> load(final Collection<String> 
tableNames, final CommonFixtureRule rule, final GenericSchemaBuilderMaterials 
materials) throws SQLException {
         return Collections.emptyMap();
     }
     
     @Override
-    public Map<String, SchemaMetaData> decorate(final Map<String, 
SchemaMetaData> schemaMetaDataMap, final CommonFixtureRule rule, final 
SchemaBuilderMaterials materials) throws SQLException {
+    public Map<String, SchemaMetaData> decorate(final Map<String, 
SchemaMetaData> schemaMetaDataMap, final CommonFixtureRule rule, final 
GenericSchemaBuilderMaterials materials) throws SQLException {
         return schemaMetaDataMap;
     }
     
diff --git 
a/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/database/schema/fixture/loader/DataNodeContainedFixtureRuleBasedSchemaMetaDataBuilder.java
 
b/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/database/schema/fixture/loader/DataNodeContainedFixtureRuleBasedSchemaMetaDataBuilder.java
index 31f2d26d7dd..a0d5a11ca6e 100644
--- 
a/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/database/schema/fixture/loader/DataNodeContainedFixtureRuleBasedSchemaMetaDataBuilder.java
+++ 
b/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/database/schema/fixture/loader/DataNodeContainedFixtureRuleBasedSchemaMetaDataBuilder.java
@@ -17,7 +17,7 @@
 
 package 
org.apache.shardingsphere.infra.metadata.database.schema.fixture.loader;
 
-import 
org.apache.shardingsphere.infra.metadata.database.schema.builder.SchemaBuilderMaterials;
+import 
org.apache.shardingsphere.infra.metadata.database.schema.builder.GenericSchemaBuilderMaterials;
 import 
org.apache.shardingsphere.infra.metadata.database.schema.builder.spi.RuleBasedSchemaMetaDataBuilder;
 import 
org.apache.shardingsphere.infra.metadata.database.schema.fixture.rule.DataNodeContainedFixtureRule;
 import 
org.apache.shardingsphere.infra.metadata.database.schema.loader.model.SchemaMetaData;
@@ -32,7 +32,7 @@ import java.util.Map;
 public final class DataNodeContainedFixtureRuleBasedSchemaMetaDataBuilder 
implements RuleBasedSchemaMetaDataBuilder<DataNodeContainedFixtureRule> {
     
     @Override
-    public Map<String, SchemaMetaData> load(final Collection<String> 
tableNames, final DataNodeContainedFixtureRule rule, final 
SchemaBuilderMaterials materials) throws SQLException {
+    public Map<String, SchemaMetaData> load(final Collection<String> 
tableNames, final DataNodeContainedFixtureRule rule, final 
GenericSchemaBuilderMaterials materials) throws SQLException {
         if (!tableNames.isEmpty() && 
(tableNames.contains("data_node_routed_table1") || 
tableNames.contains("data_node_routed_table2"))) {
             Map<String, TableMetaData> tableMetaDataMap = new 
LinkedHashMap<>();
             for (String tableName : tableNames) {
@@ -45,7 +45,7 @@ public final class 
DataNodeContainedFixtureRuleBasedSchemaMetaDataBuilder implem
     
     @Override
     public Map<String, SchemaMetaData> decorate(final Map<String, 
SchemaMetaData> schemaMetaDataMap,
-                                                final 
DataNodeContainedFixtureRule rule, final SchemaBuilderMaterials materials) 
throws SQLException {
+                                                final 
DataNodeContainedFixtureRule rule, final GenericSchemaBuilderMaterials 
materials) throws SQLException {
         return schemaMetaDataMap;
     }
     
diff --git 
a/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/database/schema/util/TableMetaDataUtilTest.java
 
b/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/database/schema/util/TableMetaDataUtilTest.java
index 0e3a9e4b553..248974ea565 100644
--- 
a/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/database/schema/util/TableMetaDataUtilTest.java
+++ 
b/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/database/schema/util/TableMetaDataUtilTest.java
@@ -20,7 +20,7 @@ package 
org.apache.shardingsphere.infra.metadata.database.schema.util;
 import org.apache.shardingsphere.infra.config.props.ConfigurationProperties;
 import org.apache.shardingsphere.infra.database.type.DatabaseType;
 import org.apache.shardingsphere.infra.datanode.DataNode;
-import 
org.apache.shardingsphere.infra.metadata.database.schema.builder.SchemaBuilderMaterials;
+import 
org.apache.shardingsphere.infra.metadata.database.schema.builder.GenericSchemaBuilderMaterials;
 import 
org.apache.shardingsphere.infra.metadata.database.schema.loader.TableMetaDataLoaderMaterial;
 import 
org.apache.shardingsphere.infra.rule.identifier.type.DataNodeContainedRule;
 import 
org.apache.shardingsphere.infra.rule.identifier.type.DataSourceContainedRule;
@@ -47,7 +47,7 @@ public final class TableMetaDataUtilTest {
     public void 
assertGetTableMetaDataLoadMaterialWhenConfigCheckMetaDataEnable() {
         DataNodeContainedRule dataNodeContainedRule = 
mock(DataNodeContainedRule.class);
         
when(dataNodeContainedRule.getDataNodesByTableName("t_order")).thenReturn(mockShardingDataNodes());
-        SchemaBuilderMaterials materials = new 
SchemaBuilderMaterials(mock(DatabaseType.class), mock(DatabaseType.class), 
mockDataSourceMap(),
+        GenericSchemaBuilderMaterials materials = new 
GenericSchemaBuilderMaterials(mock(DatabaseType.class), 
mock(DatabaseType.class), mockDataSourceMap(),
                 Arrays.asList(dataNodeContainedRule, 
mock(DataSourceContainedRule.class)), mock(ConfigurationProperties.class), 
"sharding_db");
         Collection<TableMetaDataLoaderMaterial> actual = 
TableMetaDataUtil.getTableMetaDataLoadMaterial(Collections.singleton("t_order"),
 materials, true);
         assertThat(actual.size(), is(2));
@@ -64,7 +64,7 @@ public final class TableMetaDataUtilTest {
     public void 
assertGetTableMetaDataLoadMaterialWhenNotConfigCheckMetaDataEnable() {
         DataNodeContainedRule dataNodeContainedRule = 
mock(DataNodeContainedRule.class);
         
when(dataNodeContainedRule.getDataNodesByTableName("t_order")).thenReturn(mockShardingDataNodes());
-        SchemaBuilderMaterials materials = new 
SchemaBuilderMaterials(mock(DatabaseType.class), mock(DatabaseType.class), 
mockDataSourceMap(),
+        GenericSchemaBuilderMaterials materials = new 
GenericSchemaBuilderMaterials(mock(DatabaseType.class), 
mock(DatabaseType.class), mockDataSourceMap(),
                 Arrays.asList(dataNodeContainedRule, 
mock(DataSourceContainedRule.class)), mock(ConfigurationProperties.class), 
"sharding_db");
         Collection<TableMetaDataLoaderMaterial> actual = 
TableMetaDataUtil.getTableMetaDataLoadMaterial(Collections.singleton("t_order"),
 materials, false);
         assertThat(actual.size(), is(1));
@@ -78,7 +78,7 @@ public final class TableMetaDataUtilTest {
     public void 
assertGetTableMetaDataLoadMaterialWhenNotConfigCheckMetaDataEnableForSingleTableDataNode()
 {
         DataNodeContainedRule dataNodeContainedRule = 
mock(DataNodeContainedRule.class);
         
when(dataNodeContainedRule.getDataNodesByTableName("t_single")).thenReturn(mockSingleTableDataNodes());
-        SchemaBuilderMaterials materials = new 
SchemaBuilderMaterials(mock(DatabaseType.class), mock(DatabaseType.class), 
mockDataSourceMap(),
+        GenericSchemaBuilderMaterials materials = new 
GenericSchemaBuilderMaterials(mock(DatabaseType.class), 
mock(DatabaseType.class), mockDataSourceMap(),
                 Arrays.asList(dataNodeContainedRule, 
mock(DataSourceContainedRule.class)), mock(ConfigurationProperties.class), 
"public");
         Collection<TableMetaDataLoaderMaterial> actual = 
TableMetaDataUtil.getTableMetaDataLoadMaterial(Collections.singleton("t_single"),
 materials, false);
         assertThat(actual.size(), is(1));
diff --git 
a/shardingsphere-infra/shardingsphere-infra-context/src/main/java/org/apache/shardingsphere/infra/context/refresher/type/AlterTableStatementSchemaRefresher.java
 
b/shardingsphere-infra/shardingsphere-infra-context/src/main/java/org/apache/shardingsphere/infra/context/refresher/type/AlterTableStatementSchemaRefresher.java
index e7f817756ca..6f34c9d1848 100644
--- 
a/shardingsphere-infra/shardingsphere-infra-context/src/main/java/org/apache/shardingsphere/infra/context/refresher/type/AlterTableStatementSchemaRefresher.java
+++ 
b/shardingsphere-infra/shardingsphere-infra-context/src/main/java/org/apache/shardingsphere/infra/context/refresher/type/AlterTableStatementSchemaRefresher.java
@@ -24,7 +24,7 @@ import 
org.apache.shardingsphere.infra.federation.optimizer.context.planner.Opti
 import 
org.apache.shardingsphere.infra.federation.optimizer.context.planner.OptimizerPlannerContextFactory;
 import 
org.apache.shardingsphere.infra.federation.optimizer.metadata.FederationDatabaseMetaData;
 import 
org.apache.shardingsphere.infra.metadata.database.ShardingSphereDatabase;
-import 
org.apache.shardingsphere.infra.metadata.database.schema.builder.SchemaBuilderMaterials;
+import 
org.apache.shardingsphere.infra.metadata.database.schema.builder.GenericSchemaBuilderMaterials;
 import 
org.apache.shardingsphere.infra.metadata.database.schema.builder.SchemaMetaDataBuilder;
 import 
org.apache.shardingsphere.infra.metadata.database.schema.event.SchemaAlteredEvent;
 import 
org.apache.shardingsphere.infra.metadata.database.schema.loader.model.SchemaMetaData;
@@ -77,7 +77,7 @@ public final class AlterTableStatementSchemaRefresher 
implements MetaDataRefresh
         if (!containsInImmutableDataNodeContainedRule(tableName, database)) {
             
database.getRuleMetaData().findRules(MutableDataNodeRule.class).forEach(each -> 
each.put(logicDataSourceNames.iterator().next(), schemaName, tableName));
         }
-        SchemaBuilderMaterials materials = new 
SchemaBuilderMaterials(database.getProtocolType(),
+        GenericSchemaBuilderMaterials materials = new 
GenericSchemaBuilderMaterials(database.getProtocolType(),
                 database.getResource().getDatabaseType(), 
database.getResource().getDataSources(), database.getRuleMetaData().getRules(), 
props, schemaName);
         Map<String, SchemaMetaData> metaDataMap = 
SchemaMetaDataBuilder.load(Collections.singletonList(tableName), materials);
         Optional<TableMetaData> actualTableMetaData = 
Optional.ofNullable(metaDataMap.get(schemaName)).map(optional -> 
optional.getTables().get(tableName));
diff --git 
a/shardingsphere-infra/shardingsphere-infra-context/src/main/java/org/apache/shardingsphere/infra/context/refresher/type/AlterViewStatementSchemaRefresher.java
 
b/shardingsphere-infra/shardingsphere-infra-context/src/main/java/org/apache/shardingsphere/infra/context/refresher/type/AlterViewStatementSchemaRefresher.java
index d36e6cbafb7..cc89ba75d7f 100644
--- 
a/shardingsphere-infra/shardingsphere-infra-context/src/main/java/org/apache/shardingsphere/infra/context/refresher/type/AlterViewStatementSchemaRefresher.java
+++ 
b/shardingsphere-infra/shardingsphere-infra-context/src/main/java/org/apache/shardingsphere/infra/context/refresher/type/AlterViewStatementSchemaRefresher.java
@@ -24,7 +24,7 @@ import 
org.apache.shardingsphere.infra.federation.optimizer.context.planner.Opti
 import 
org.apache.shardingsphere.infra.federation.optimizer.context.planner.OptimizerPlannerContextFactory;
 import 
org.apache.shardingsphere.infra.federation.optimizer.metadata.FederationDatabaseMetaData;
 import 
org.apache.shardingsphere.infra.metadata.database.ShardingSphereDatabase;
-import 
org.apache.shardingsphere.infra.metadata.database.schema.builder.SchemaBuilderMaterials;
+import 
org.apache.shardingsphere.infra.metadata.database.schema.builder.GenericSchemaBuilderMaterials;
 import 
org.apache.shardingsphere.infra.metadata.database.schema.builder.SchemaMetaDataBuilder;
 import 
org.apache.shardingsphere.infra.metadata.database.schema.event.SchemaAlteredEvent;
 import 
org.apache.shardingsphere.infra.metadata.database.schema.loader.model.SchemaMetaData;
@@ -80,7 +80,7 @@ public final class AlterViewStatementSchemaRefresher 
implements MetaDataRefreshe
         if (!containsInImmutableDataNodeContainedRule(viewName, database)) {
             
database.getRuleMetaData().findRules(MutableDataNodeRule.class).forEach(each -> 
each.put(logicDataSourceNames.iterator().next(), schemaName, viewName));
         }
-        SchemaBuilderMaterials materials = new 
SchemaBuilderMaterials(database.getProtocolType(),
+        GenericSchemaBuilderMaterials materials = new 
GenericSchemaBuilderMaterials(database.getProtocolType(),
                 database.getResource().getDatabaseType(), 
database.getResource().getDataSources(), database.getRuleMetaData().getRules(), 
props, schemaName);
         Map<String, SchemaMetaData> metaDataMap = 
SchemaMetaDataBuilder.load(Collections.singletonList(viewName), materials);
         Optional<TableMetaData> actualViewMetaData = 
Optional.ofNullable(metaDataMap.get(schemaName)).map(optional -> 
optional.getTables().get(viewName));
diff --git 
a/shardingsphere-infra/shardingsphere-infra-context/src/main/java/org/apache/shardingsphere/infra/context/refresher/type/CreateTableStatementSchemaRefresher.java
 
b/shardingsphere-infra/shardingsphere-infra-context/src/main/java/org/apache/shardingsphere/infra/context/refresher/type/CreateTableStatementSchemaRefresher.java
index c0518f5a6d4..8b1cf8ea62e 100644
--- 
a/shardingsphere-infra/shardingsphere-infra-context/src/main/java/org/apache/shardingsphere/infra/context/refresher/type/CreateTableStatementSchemaRefresher.java
+++ 
b/shardingsphere-infra/shardingsphere-infra-context/src/main/java/org/apache/shardingsphere/infra/context/refresher/type/CreateTableStatementSchemaRefresher.java
@@ -24,7 +24,7 @@ import 
org.apache.shardingsphere.infra.federation.optimizer.context.planner.Opti
 import 
org.apache.shardingsphere.infra.federation.optimizer.context.planner.OptimizerPlannerContextFactory;
 import 
org.apache.shardingsphere.infra.federation.optimizer.metadata.FederationDatabaseMetaData;
 import 
org.apache.shardingsphere.infra.metadata.database.ShardingSphereDatabase;
-import 
org.apache.shardingsphere.infra.metadata.database.schema.builder.SchemaBuilderMaterials;
+import 
org.apache.shardingsphere.infra.metadata.database.schema.builder.GenericSchemaBuilderMaterials;
 import 
org.apache.shardingsphere.infra.metadata.database.schema.builder.SchemaMetaDataBuilder;
 import 
org.apache.shardingsphere.infra.metadata.database.schema.event.SchemaAlteredEvent;
 import 
org.apache.shardingsphere.infra.metadata.database.schema.loader.model.SchemaMetaData;
@@ -53,7 +53,7 @@ public final class CreateTableStatementSchemaRefresher 
implements MetaDataRefres
         if (!containsInImmutableDataNodeContainedRule(tableName, database)) {
             
database.getRuleMetaData().findRules(MutableDataNodeRule.class).forEach(each -> 
each.put(logicDataSourceNames.iterator().next(), schemaName, tableName));
         }
-        SchemaBuilderMaterials materials = new 
SchemaBuilderMaterials(database.getProtocolType(),
+        GenericSchemaBuilderMaterials materials = new 
GenericSchemaBuilderMaterials(database.getProtocolType(),
                 database.getResource().getDatabaseType(), 
database.getResource().getDataSources(), database.getRuleMetaData().getRules(), 
props, schemaName);
         Map<String, SchemaMetaData> metaDataMap = 
SchemaMetaDataBuilder.load(Collections.singletonList(tableName), materials);
         Optional<TableMetaData> actualTableMetaData = 
Optional.ofNullable(metaDataMap.get(schemaName)).map(optional -> 
optional.getTables().get(tableName));
diff --git 
a/shardingsphere-infra/shardingsphere-infra-context/src/main/java/org/apache/shardingsphere/infra/context/refresher/type/CreateViewStatementSchemaRefresher.java
 
b/shardingsphere-infra/shardingsphere-infra-context/src/main/java/org/apache/shardingsphere/infra/context/refresher/type/CreateViewStatementSchemaRefresher.java
index 29574efd927..3f9c7db8358 100644
--- 
a/shardingsphere-infra/shardingsphere-infra-context/src/main/java/org/apache/shardingsphere/infra/context/refresher/type/CreateViewStatementSchemaRefresher.java
+++ 
b/shardingsphere-infra/shardingsphere-infra-context/src/main/java/org/apache/shardingsphere/infra/context/refresher/type/CreateViewStatementSchemaRefresher.java
@@ -24,7 +24,7 @@ import 
org.apache.shardingsphere.infra.federation.optimizer.context.planner.Opti
 import 
org.apache.shardingsphere.infra.federation.optimizer.context.planner.OptimizerPlannerContextFactory;
 import 
org.apache.shardingsphere.infra.federation.optimizer.metadata.FederationDatabaseMetaData;
 import 
org.apache.shardingsphere.infra.metadata.database.ShardingSphereDatabase;
-import 
org.apache.shardingsphere.infra.metadata.database.schema.builder.SchemaBuilderMaterials;
+import 
org.apache.shardingsphere.infra.metadata.database.schema.builder.GenericSchemaBuilderMaterials;
 import 
org.apache.shardingsphere.infra.metadata.database.schema.builder.SchemaMetaDataBuilder;
 import 
org.apache.shardingsphere.infra.metadata.database.schema.event.SchemaAlteredEvent;
 import 
org.apache.shardingsphere.infra.metadata.database.schema.loader.model.SchemaMetaData;
@@ -53,7 +53,7 @@ public final class CreateViewStatementSchemaRefresher 
implements MetaDataRefresh
         if (!containsInImmutableDataNodeContainedRule(viewName, database)) {
             
database.getRuleMetaData().findRules(MutableDataNodeRule.class).forEach(each -> 
each.put(logicDataSourceNames.iterator().next(), schemaName, viewName));
         }
-        SchemaBuilderMaterials materials = new 
SchemaBuilderMaterials(database.getProtocolType(),
+        GenericSchemaBuilderMaterials materials = new 
GenericSchemaBuilderMaterials(database.getProtocolType(),
                 database.getResource().getDatabaseType(), 
database.getResource().getDataSources(), database.getRuleMetaData().getRules(), 
props, schemaName);
         Map<String, SchemaMetaData> metaDataMap = 
SchemaMetaDataBuilder.load(Collections.singletonList(viewName), materials);
         Optional<TableMetaData> actualViewMetaData = 
Optional.ofNullable(metaDataMap.get(schemaName)).map(optional -> 
optional.getTables().get(viewName));
diff --git 
a/shardingsphere-infra/shardingsphere-infra-context/src/main/java/org/apache/shardingsphere/infra/context/refresher/type/RenameTableStatementSchemaRefresher.java
 
b/shardingsphere-infra/shardingsphere-infra-context/src/main/java/org/apache/shardingsphere/infra/context/refresher/type/RenameTableStatementSchemaRefresher.java
index 5304377388d..03b4ad880c6 100644
--- 
a/shardingsphere-infra/shardingsphere-infra-context/src/main/java/org/apache/shardingsphere/infra/context/refresher/type/RenameTableStatementSchemaRefresher.java
+++ 
b/shardingsphere-infra/shardingsphere-infra-context/src/main/java/org/apache/shardingsphere/infra/context/refresher/type/RenameTableStatementSchemaRefresher.java
@@ -24,7 +24,7 @@ import 
org.apache.shardingsphere.infra.federation.optimizer.context.planner.Opti
 import 
org.apache.shardingsphere.infra.federation.optimizer.context.planner.OptimizerPlannerContextFactory;
 import 
org.apache.shardingsphere.infra.federation.optimizer.metadata.FederationDatabaseMetaData;
 import 
org.apache.shardingsphere.infra.metadata.database.ShardingSphereDatabase;
-import 
org.apache.shardingsphere.infra.metadata.database.schema.builder.SchemaBuilderMaterials;
+import 
org.apache.shardingsphere.infra.metadata.database.schema.builder.GenericSchemaBuilderMaterials;
 import 
org.apache.shardingsphere.infra.metadata.database.schema.builder.SchemaMetaDataBuilder;
 import 
org.apache.shardingsphere.infra.metadata.database.schema.event.SchemaAlteredEvent;
 import 
org.apache.shardingsphere.infra.metadata.database.schema.loader.model.SchemaMetaData;
@@ -75,7 +75,7 @@ public final class RenameTableStatementSchemaRefresher 
implements MetaDataRefres
         if (!containsInImmutableDataNodeContainedRule(tableName, database)) {
             
database.getRuleMetaData().findRules(MutableDataNodeRule.class).forEach(each -> 
each.put(logicDataSourceNames.iterator().next(), schemaName, tableName));
         }
-        SchemaBuilderMaterials materials = new 
SchemaBuilderMaterials(database.getProtocolType(),
+        GenericSchemaBuilderMaterials materials = new 
GenericSchemaBuilderMaterials(database.getProtocolType(),
                 database.getResource().getDatabaseType(), 
database.getResource().getDataSources(), database.getRuleMetaData().getRules(), 
props, schemaName);
         Map<String, SchemaMetaData> metaDataMap = 
SchemaMetaDataBuilder.load(Collections.singletonList(tableName), materials);
         Optional<TableMetaData> actualTableMetaData = 
Optional.ofNullable(metaDataMap.get(schemaName)).map(optional -> 
optional.getTables().get(tableName));
diff --git 
a/shardingsphere-infra/shardingsphere-infra-federation/shardingsphere-infra-federation-optimizer/src/test/java/org/apache/shardingsphere/infra/federation/optimizer/metadata/fixture/CommonFixtureSchemaMetaDataBuilder.java
 
b/shardingsphere-infra/shardingsphere-infra-federation/shardingsphere-infra-federation-optimizer/src/test/java/org/apache/shardingsphere/infra/federation/optimizer/metadata/fixture/CommonFixtureSchemaMetaDataBuilder.java
index e18b7436298..ec6e5d1b0b6 100644
--- 
a/shardingsphere-infra/shardingsphere-infra-federation/shardingsphere-infra-federation-optimizer/src/test/java/org/apache/shardingsphere/infra/federation/optimizer/metadata/fixture/CommonFixtureSchemaMetaDataBuilder.java
+++ 
b/shardingsphere-infra/shardingsphere-infra-federation/shardingsphere-infra-federation-optimizer/src/test/java/org/apache/shardingsphere/infra/federation/optimizer/metadata/fixture/CommonFixtureSchemaMetaDataBuilder.java
@@ -17,7 +17,7 @@
 
 package org.apache.shardingsphere.infra.federation.optimizer.metadata.fixture;
 
-import 
org.apache.shardingsphere.infra.metadata.database.schema.builder.SchemaBuilderMaterials;
+import 
org.apache.shardingsphere.infra.metadata.database.schema.builder.GenericSchemaBuilderMaterials;
 import 
org.apache.shardingsphere.infra.metadata.database.schema.builder.spi.RuleBasedSchemaMetaDataBuilder;
 import 
org.apache.shardingsphere.infra.metadata.database.schema.loader.model.SchemaMetaData;
 import 
org.apache.shardingsphere.infra.metadata.database.schema.loader.model.TableMetaData;
@@ -30,14 +30,14 @@ import java.util.Map;
 public final class CommonFixtureSchemaMetaDataBuilder implements 
RuleBasedSchemaMetaDataBuilder<CommonFixtureRule> {
     
     @Override
-    public Map<String, SchemaMetaData> load(final Collection<String> 
tableNames, final CommonFixtureRule rule, final SchemaBuilderMaterials 
materials) throws SQLException {
+    public Map<String, SchemaMetaData> load(final Collection<String> 
tableNames, final CommonFixtureRule rule, final GenericSchemaBuilderMaterials 
materials) throws SQLException {
         Map<String, TableMetaData> tableMetaDataMap = 
Collections.singletonMap("t_order_new",
                 new TableMetaData("t_order_new", Collections.emptyList(), 
Collections.emptyList(), Collections.emptyList()));
         return Collections.singletonMap(materials.getDefaultSchemaName(), new 
SchemaMetaData(materials.getDefaultSchemaName(), tableMetaDataMap));
     }
     
     @Override
-    public Map<String, SchemaMetaData> decorate(final Map<String, 
SchemaMetaData> schemaMetaDataMap, final CommonFixtureRule rule, final 
SchemaBuilderMaterials materials) throws SQLException {
+    public Map<String, SchemaMetaData> decorate(final Map<String, 
SchemaMetaData> schemaMetaDataMap, final CommonFixtureRule rule, final 
GenericSchemaBuilderMaterials materials) throws SQLException {
         return schemaMetaDataMap;
     }
     
diff --git 
a/shardingsphere-kernel/shardingsphere-single-table/shardingsphere-single-table-core/src/main/java/org/apache/shardingsphere/singletable/metadata/SingleTableSchemaMetaDataBuilder.java
 
b/shardingsphere-kernel/shardingsphere-single-table/shardingsphere-single-table-core/src/main/java/org/apache/shardingsphere/singletable/metadata/SingleTableSchemaMetaDataBuilder.java
index bccdf96983e..6f17097bcf6 100644
--- 
a/shardingsphere-kernel/shardingsphere-single-table/shardingsphere-single-table-core/src/main/java/org/apache/shardingsphere/singletable/metadata/SingleTableSchemaMetaDataBuilder.java
+++ 
b/shardingsphere-kernel/shardingsphere-single-table/shardingsphere-single-table-core/src/main/java/org/apache/shardingsphere/singletable/metadata/SingleTableSchemaMetaDataBuilder.java
@@ -17,7 +17,7 @@
 
 package org.apache.shardingsphere.singletable.metadata;
 
-import 
org.apache.shardingsphere.infra.metadata.database.schema.builder.SchemaBuilderMaterials;
+import 
org.apache.shardingsphere.infra.metadata.database.schema.builder.GenericSchemaBuilderMaterials;
 import 
org.apache.shardingsphere.infra.metadata.database.schema.builder.spi.RuleBasedSchemaMetaDataBuilder;
 import 
org.apache.shardingsphere.infra.metadata.database.schema.loader.SchemaMetaDataLoaderEngine;
 import 
org.apache.shardingsphere.infra.metadata.database.schema.loader.TableMetaDataLoaderMaterial;
@@ -44,7 +44,7 @@ import java.util.stream.Collectors;
 public final class SingleTableSchemaMetaDataBuilder implements 
RuleBasedSchemaMetaDataBuilder<SingleTableRule> {
     
     @Override
-    public Map<String, SchemaMetaData> load(final Collection<String> 
tableNames, final SingleTableRule rule, final SchemaBuilderMaterials materials) 
throws SQLException {
+    public Map<String, SchemaMetaData> load(final Collection<String> 
tableNames, final SingleTableRule rule, final GenericSchemaBuilderMaterials 
materials) throws SQLException {
         Collection<String> ruleTables = rule.getTables();
         Collection<String> needLoadTables = 
tableNames.stream().filter(ruleTables::contains).collect(Collectors.toSet());
         if (needLoadTables.isEmpty()) {
@@ -58,7 +58,7 @@ public final class SingleTableSchemaMetaDataBuilder 
implements RuleBasedSchemaMe
     }
     
     @Override
-    public Map<String, SchemaMetaData> decorate(final Map<String, 
SchemaMetaData> schemaMetaDataMap, final SingleTableRule rule, final 
SchemaBuilderMaterials materials) throws SQLException {
+    public Map<String, SchemaMetaData> decorate(final Map<String, 
SchemaMetaData> schemaMetaDataMap, final SingleTableRule rule, final 
GenericSchemaBuilderMaterials materials) throws SQLException {
         Map<String, SchemaMetaData> result = new LinkedHashMap<>();
         for (Entry<String, SchemaMetaData> entry : 
schemaMetaDataMap.entrySet()) {
             Map<String, TableMetaData> tables = new 
LinkedHashMap<>(entry.getValue().getTables().size(), 1);
diff --git 
a/shardingsphere-kernel/shardingsphere-single-table/shardingsphere-single-table-core/src/test/java/org/apache/shardingsphere/singletable/metadata/SingleTableSchemaBuilderTest.java
 
b/shardingsphere-kernel/shardingsphere-single-table/shardingsphere-single-table-core/src/test/java/org/apache/shardingsphere/singletable/metadata/SingleTableSchemaBuilderTest.java
index ecc70912f94..775025d3c9f 100644
--- 
a/shardingsphere-kernel/shardingsphere-single-table/shardingsphere-single-table-core/src/test/java/org/apache/shardingsphere/singletable/metadata/SingleTableSchemaBuilderTest.java
+++ 
b/shardingsphere-kernel/shardingsphere-single-table/shardingsphere-single-table-core/src/test/java/org/apache/shardingsphere/singletable/metadata/SingleTableSchemaBuilderTest.java
@@ -21,7 +21,7 @@ import lombok.SneakyThrows;
 import org.apache.shardingsphere.infra.config.props.ConfigurationProperties;
 import org.apache.shardingsphere.infra.database.DefaultDatabase;
 import org.apache.shardingsphere.infra.database.type.DatabaseType;
-import 
org.apache.shardingsphere.infra.metadata.database.schema.builder.SchemaBuilderMaterials;
+import 
org.apache.shardingsphere.infra.metadata.database.schema.builder.GenericSchemaBuilderMaterials;
 import 
org.apache.shardingsphere.infra.metadata.database.schema.builder.SchemaMetaDataBuilder;
 import 
org.apache.shardingsphere.infra.metadata.database.schema.loader.model.SchemaMetaData;
 import 
org.apache.shardingsphere.infra.metadata.database.schema.loader.model.TableMetaData;
@@ -74,7 +74,7 @@ public final class SingleTableSchemaBuilderTest {
         when(dataSource.getConnection()).thenReturn(connection);
         Collection<ShardingSphereRule> rules = 
Collections.singletonList(mockSingleTableRuleLoad(connection));
         mockSQLLoad(connection);
-        Map<String, SchemaMetaData> actual = 
SchemaMetaDataBuilder.load(Arrays.asList(singleTableNames), new 
SchemaBuilderMaterials(
+        Map<String, SchemaMetaData> actual = 
SchemaMetaDataBuilder.load(Arrays.asList(singleTableNames), new 
GenericSchemaBuilderMaterials(
                 databaseType, databaseType, 
Collections.singletonMap(DefaultDatabase.LOGIC_NAME, dataSource), rules, new 
ConfigurationProperties(new Properties()), DefaultDatabase.LOGIC_NAME));
         assertThat(actual.size(), is(1));
         assertThat(actual.values().iterator().next().getTables().size(), 
is(2));
diff --git 
a/shardingsphere-kernel/shardingsphere-single-table/shardingsphere-single-table-core/src/test/java/org/apache/shardingsphere/singletable/metadata/SingleTableSchemaMetaDataBuilderTest.java
 
b/shardingsphere-kernel/shardingsphere-single-table/shardingsphere-single-table-core/src/test/java/org/apache/shardingsphere/singletable/metadata/SingleTableSchemaMetaDataBuilderTest.java
index fbc981bf5fe..6293b9c5744 100644
--- 
a/shardingsphere-kernel/shardingsphere-single-table/shardingsphere-single-table-core/src/test/java/org/apache/shardingsphere/singletable/metadata/SingleTableSchemaMetaDataBuilderTest.java
+++ 
b/shardingsphere-kernel/shardingsphere-single-table/shardingsphere-single-table-core/src/test/java/org/apache/shardingsphere/singletable/metadata/SingleTableSchemaMetaDataBuilderTest.java
@@ -21,7 +21,7 @@ import 
org.apache.shardingsphere.infra.config.props.ConfigurationProperties;
 import org.apache.shardingsphere.infra.database.DefaultDatabase;
 import org.apache.shardingsphere.infra.database.type.DatabaseType;
 import 
org.apache.shardingsphere.infra.metadata.database.schema.builder.spi.RuleBasedSchemaMetaDataBuilderFactory;
-import 
org.apache.shardingsphere.infra.metadata.database.schema.builder.SchemaBuilderMaterials;
+import 
org.apache.shardingsphere.infra.metadata.database.schema.builder.GenericSchemaBuilderMaterials;
 import 
org.apache.shardingsphere.infra.metadata.database.schema.loader.model.ColumnMetaData;
 import 
org.apache.shardingsphere.infra.metadata.database.schema.loader.model.IndexMetaData;
 import 
org.apache.shardingsphere.infra.metadata.database.schema.loader.model.SchemaMetaData;
@@ -116,7 +116,7 @@ public final class SingleTableSchemaMetaDataBuilderTest {
         Collection<ShardingSphereRule> rules = 
Collections.singletonList(singleTableRule);
         SingleTableSchemaMetaDataBuilder builder = 
(SingleTableSchemaMetaDataBuilder) 
RuleBasedSchemaMetaDataBuilderFactory.getInstances(rules).get(singleTableRule);
         Map<String, SchemaMetaData> actual = 
builder.load(Collections.singleton("tbl"), singleTableRule,
-                new SchemaBuilderMaterials(databaseType, databaseType, 
Collections.singletonMap("ds", dataSource), rules, new 
ConfigurationProperties(new Properties()), "sharding_db"));
+                new GenericSchemaBuilderMaterials(databaseType, databaseType, 
Collections.singletonMap("ds", dataSource), rules, new 
ConfigurationProperties(new Properties()), "sharding_db"));
         assertFalse(actual.isEmpty());
         assertTrue(actual.containsKey("sharding_db"));
         assertTrue(actual.get("sharding_db").getTables().containsKey("tbl"));
@@ -133,7 +133,7 @@ public final class SingleTableSchemaMetaDataBuilderTest {
         Collection<ShardingSphereRule> rules = 
Collections.singletonList(singleTableRule);
         final SingleTableSchemaMetaDataBuilder builder = 
(SingleTableSchemaMetaDataBuilder) 
RuleBasedSchemaMetaDataBuilderFactory.getInstances(rules).get(singleTableRule);
         Map<String, SchemaMetaData> actual = 
builder.load(Collections.singleton("tbl"), singleTableRule,
-                new SchemaBuilderMaterials(databaseType, databaseType, 
Collections.singletonMap("ds", dataSource), rules, new 
ConfigurationProperties(new Properties()), "sharding_db"));
+                new GenericSchemaBuilderMaterials(databaseType, databaseType, 
Collections.singletonMap("ds", dataSource), rules, new 
ConfigurationProperties(new Properties()), "sharding_db"));
         assertFalse(actual.isEmpty());
         assertTrue(actual.containsKey("sharding_db"));
         TableMetaData actualTableMetaData = 
actual.get("sharding_db").getTables().get("tbl");
@@ -142,7 +142,7 @@ public final class SingleTableSchemaMetaDataBuilderTest {
         
assertThat(actualTableMetaData.getColumns().get(actualColumnNames.get(0)), 
is(new ColumnMetaData("id", 4, true, false, false)));
         
assertThat(actualTableMetaData.getColumns().get(actualColumnNames.get(1)), 
is(new ColumnMetaData("name", 12, false, false, false)));
         
assertThat(actualTableMetaData.getColumns().get(actualColumnNames.get(2)), 
is(new ColumnMetaData("doc", -1, false, false, false)));
-        TableMetaData tableMetaData = builder.decorate(actual, 
singleTableRule, 
mock(SchemaBuilderMaterials.class)).get("sharding_db").getTables().get("tbl");
+        TableMetaData tableMetaData = builder.decorate(actual, 
singleTableRule, 
mock(GenericSchemaBuilderMaterials.class)).get("sharding_db").getTables().get("tbl");
         actualColumnNames = new 
ArrayList<>(tableMetaData.getColumns().keySet());
         assertThat(tableMetaData.getColumns().get(actualColumnNames.get(0)), 
is(new ColumnMetaData("id", 4, true, false, false)));
         assertThat(tableMetaData.getColumns().get(actualColumnNames.get(1)), 
is(new ColumnMetaData("name", 12, false, false, false)));
diff --git 
a/shardingsphere-mode/shardingsphere-mode-core/src/main/java/org/apache/shardingsphere/mode/manager/ContextManager.java
 
b/shardingsphere-mode/shardingsphere-mode-core/src/main/java/org/apache/shardingsphere/mode/manager/ContextManager.java
index 75fa2f3fcbf..39c0a285c2f 100644
--- 
a/shardingsphere-mode/shardingsphere-mode-core/src/main/java/org/apache/shardingsphere/mode/manager/ContextManager.java
+++ 
b/shardingsphere-mode/shardingsphere-mode-core/src/main/java/org/apache/shardingsphere/mode/manager/ContextManager.java
@@ -39,7 +39,7 @@ import 
org.apache.shardingsphere.infra.metadata.database.resource.ShardingSphere
 import 
org.apache.shardingsphere.infra.metadata.database.rule.ShardingSphereRuleMetaData;
 import 
org.apache.shardingsphere.infra.metadata.database.schema.ShardingSphereSchema;
 import 
org.apache.shardingsphere.infra.metadata.database.schema.builder.GenericSchemaBuilder;
-import 
org.apache.shardingsphere.infra.metadata.database.schema.builder.SchemaBuilderMaterials;
+import 
org.apache.shardingsphere.infra.metadata.database.schema.builder.GenericSchemaBuilderMaterials;
 import 
org.apache.shardingsphere.infra.metadata.database.schema.builder.SchemaMetaDataBuilder;
 import 
org.apache.shardingsphere.infra.metadata.database.schema.builder.SystemSchemaBuilder;
 import 
org.apache.shardingsphere.infra.metadata.database.schema.loader.model.SchemaMetaData;
@@ -413,7 +413,7 @@ public final class ContextManager implements AutoCloseable {
      */
     public void reloadMetaData(final String databaseName, final String 
schemaName, final String tableName) {
         try {
-            SchemaBuilderMaterials materials = new 
SchemaBuilderMaterials(metaDataContexts.getDatabase(databaseName).getProtocolType(),
+            GenericSchemaBuilderMaterials materials = new 
GenericSchemaBuilderMaterials(metaDataContexts.getDatabase(databaseName).getProtocolType(),
                     
metaDataContexts.getDatabase(databaseName).getResource().getDatabaseType(), 
metaDataContexts.getDatabase(databaseName).getResource().getDataSources(),
                     
metaDataContexts.getDatabase(databaseName).getRuleMetaData().getRules(), 
metaDataContexts.getMetaData().getProps(), schemaName);
             loadTableMetaData(databaseName, schemaName, tableName, materials);
@@ -432,7 +432,7 @@ public final class ContextManager implements AutoCloseable {
      */
     public void reloadMetaData(final String databaseName, final String 
schemaName, final String tableName, final String dataSourceName) {
         try {
-            SchemaBuilderMaterials materials = new 
SchemaBuilderMaterials(metaDataContexts.getDatabase(databaseName).getProtocolType(),
+            GenericSchemaBuilderMaterials materials = new 
GenericSchemaBuilderMaterials(metaDataContexts.getDatabase(databaseName).getProtocolType(),
                     
metaDataContexts.getDatabase(databaseName).getResource().getDatabaseType(), 
Collections.singletonMap(dataSourceName,
                             
metaDataContexts.getDatabase(databaseName).getResource().getDataSources().get(dataSourceName)),
                     
metaDataContexts.getDatabase(databaseName).getRuleMetaData().getRules(), 
metaDataContexts.getMetaData().getProps(), schemaName);
@@ -454,7 +454,7 @@ public final class ContextManager implements AutoCloseable {
         });
     }
     
-    private void loadTableMetaData(final String databaseName, final String 
schemaName, final String tableName, final SchemaBuilderMaterials materials) 
throws SQLException {
+    private void loadTableMetaData(final String databaseName, final String 
schemaName, final String tableName, final GenericSchemaBuilderMaterials 
materials) throws SQLException {
         SchemaMetaData schemaMetaData = 
SchemaMetaDataBuilder.load(Collections.singletonList(tableName), 
materials).getOrDefault(schemaName, new SchemaMetaData("", 
Collections.emptyMap()));
         if (schemaMetaData.getTables().containsKey(tableName)) {
             
metaDataContexts.getDatabase(databaseName).getSchemas().get(schemaName).put(tableName,
 schemaMetaData.getTables().get(tableName));

Reply via email to