Skip to content

Commit

Permalink
TableMetaDataLoader.loadTableMetaData => TableMetaDataLoader.load
Browse files Browse the repository at this point in the history
  • Loading branch information
terrymanu committed Aug 1, 2018
1 parent a23323f commit d2b0242
Show file tree
Hide file tree
Showing 6 changed files with 15 additions and 18 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -67,7 +67,7 @@ public Map<String, TableMetaData> load(final ShardingRule shardingRule) {
private Map<String, TableMetaData> loadShardingTables(final ShardingRule shardingRule) {
Map<String, TableMetaData> result = new HashMap<>(shardingRule.getTableRules().size(), 1);
for (TableRule each : shardingRule.getTableRules()) {
result.put(each.getLogicTable(), tableMetaDataLoader.loadTableMetaData(each.getLogicTable(), shardingRule));
result.put(each.getLogicTable(), tableMetaDataLoader.load(each.getLogicTable(), shardingRule));
}
return result;
}
Expand All @@ -77,7 +77,7 @@ private Map<String, TableMetaData> loadDefaultTables(final ShardingRule sharding
Optional<String> actualDefaultDataSourceName = shardingRule.findActualDefaultDataSourceName();
if (actualDefaultDataSourceName.isPresent()) {
for (String each : getAllTableNames(actualDefaultDataSourceName.get())) {
result.put(each, tableMetaDataLoader.loadTableMetaData(each, shardingRule));
result.put(each, tableMetaDataLoader.load(each, shardingRule));
}
}
return result;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -57,27 +57,28 @@ public final class TableMetaDataLoader {
*
* @param logicTableName logic table name
* @param shardingRule sharding rule
* @return table meta data
*/
public TableMetaData loadTableMetaData(final String logicTableName, final ShardingRule shardingRule) {
return loadTableMetaData(shardingRule.getTableRuleByLogicTableName(logicTableName), shardingRule.getShardingDataSourceNames());
public TableMetaData load(final String logicTableName, final ShardingRule shardingRule) {
return load(shardingRule.getTableRuleByLogicTableName(logicTableName), shardingRule.getShardingDataSourceNames());
}

private TableMetaData loadTableMetaData(final TableRule tableRule, final ShardingDataSourceNames shardingDataSourceNames) {
private TableMetaData load(final TableRule tableRule, final ShardingDataSourceNames shardingDataSourceNames) {
List<TableMetaData> actualTableMetaDataList = loadActualTableMetaDataList(tableRule.getActualDataNodes(), shardingDataSourceNames);
checkUniformed(tableRule.getLogicTable(), actualTableMetaDataList);
return actualTableMetaDataList.iterator().next();
}

private TableMetaData loadTableMetaData(final DataNode dataNode) throws SQLException {
private TableMetaData load(final DataNode dataNode) throws SQLException {
if (executorAdapter.isAutoClose()) {
try (Connection connection = executorAdapter.getConnection(dataNode.getDataSourceName())) {
return loadTableMetaData(connection, dataNode);
return load(connection, dataNode);
}
}
return loadTableMetaData(executorAdapter.getConnection(dataNode.getDataSourceName()), dataNode);
return load(executorAdapter.getConnection(dataNode.getDataSourceName()), dataNode);
}

private TableMetaData loadTableMetaData(final Connection connection, final DataNode dataNode) throws SQLException {
private TableMetaData load(final Connection connection, final DataNode dataNode) throws SQLException {
return new TableMetaData(isTableExist(connection, dataNode.getTableName()) ? getColumnMetaDataList(connection, dataNode.getTableName()) : Collections.<ColumnMetaData>emptyList());
}

Expand Down Expand Up @@ -117,7 +118,7 @@ private List<TableMetaData> loadActualTableMetaDataList(final List<DataNode> act

@Override
public TableMetaData call() throws SQLException {
return loadTableMetaData(new DataNode(shardingDataSourceNames.getRawMasterDataSourceName(each.getDataSourceName()), each.getTableName()));
return load(new DataNode(shardingDataSourceNames.getRawMasterDataSourceName(each.getDataSourceName()), each.getTableName()));
}
}));
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,6 @@
import io.shardingsphere.core.merger.QueryResult;
import io.shardingsphere.core.merger.event.EventMergeType;
import io.shardingsphere.core.merger.event.ResultSetMergeEvent;
import io.shardingsphere.core.metadata.table.ShardingTableMetaData;
import io.shardingsphere.core.metadata.table.executor.TableMetaDataLoader;
import io.shardingsphere.core.parsing.parser.sql.dal.DALStatement;
import io.shardingsphere.core.parsing.parser.sql.dml.insert.InsertStatement;
Expand Down Expand Up @@ -215,10 +214,9 @@ private void sqlRoute() {
private void refreshTableMetaData() {
if (null != routeResult && null != connection && SQLType.DDL == routeResult.getSqlStatement().getType() && !routeResult.getSqlStatement().getTables().isEmpty()) {
String logicTableName = routeResult.getSqlStatement().getTables().getSingleTableName();
ShardingTableMetaData shardingTableMetaData = connection.getShardingContext().getMetaData().getTable();
TableMetaDataLoader tableMetaDataLoader = new TableMetaDataLoader(
connection.getShardingContext().getExecutorEngine().getExecutorService(), new ShardingConnectionTableMetaDataExecutorAdapter(logicTableName, connection));
shardingTableMetaData.put(logicTableName, tableMetaDataLoader.loadTableMetaData(logicTableName, connection.getShardingContext().getShardingRule()));
connection.getShardingContext().getMetaData().getTable().put(logicTableName, tableMetaDataLoader.load(logicTableName, connection.getShardingContext().getShardingRule()));
}
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,6 @@
import io.shardingsphere.core.merger.QueryResult;
import io.shardingsphere.core.merger.event.EventMergeType;
import io.shardingsphere.core.merger.event.ResultSetMergeEvent;
import io.shardingsphere.core.metadata.table.ShardingTableMetaData;
import io.shardingsphere.core.metadata.table.executor.TableMetaDataLoader;
import io.shardingsphere.core.parsing.parser.sql.dal.DALStatement;
import io.shardingsphere.core.parsing.parser.sql.dml.insert.InsertStatement;
Expand Down Expand Up @@ -249,10 +248,9 @@ private void sqlRoute(final String sql) {
private void refreshTableMetaData() {
if (null != routeResult && null != connection && SQLType.DDL == routeResult.getSqlStatement().getType() && !routeResult.getSqlStatement().getTables().isEmpty()) {
String logicTableName = routeResult.getSqlStatement().getTables().getSingleTableName();
ShardingTableMetaData shardingTableMetaData = connection.getShardingContext().getMetaData().getTable();
TableMetaDataLoader tableMetaDataLoader = new TableMetaDataLoader(
connection.getShardingContext().getExecutorEngine().getExecutorService(), new ShardingConnectionTableMetaDataExecutorAdapter(logicTableName, connection));
shardingTableMetaData.put(logicTableName, tableMetaDataLoader.loadTableMetaData(logicTableName, connection.getShardingContext().getShardingRule()));
connection.getShardingContext().getMetaData().getTable().put(logicTableName, tableMetaDataLoader.load(logicTableName, connection.getShardingContext().getShardingRule()));
}
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -99,7 +99,7 @@ private CommandResponsePackets execute(final SQLRouteResult routeResult) throws
String logicTableName = sqlStatement.getTables().getSingleTableName();
TableMetaDataLoader tableMetaDataLoader = new TableMetaDataLoader(
ExecutorContext.getInstance().getExecutorService(), new ProxyTableMetaDataExecutorAdapter(RULE_REGISTRY.getBackendDataSource()));
RULE_REGISTRY.getMetaData().getTable().put(logicTableName, tableMetaDataLoader.loadTableMetaData(logicTableName, RULE_REGISTRY.getShardingRule()));
RULE_REGISTRY.getMetaData().getTable().put(logicTableName, tableMetaDataLoader.load(logicTableName, RULE_REGISTRY.getShardingRule()));
}
return merge(sqlStatement);
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -144,7 +144,7 @@ private CommandResponsePackets executeForSharding() {
String logicTableName = sqlStatement.getTables().getSingleTableName();
TableMetaDataLoader tableMetaDataLoader = new TableMetaDataLoader(
ExecutorContext.getInstance().getExecutorService(), new ProxyTableMetaDataExecutorAdapter(RULE_REGISTRY.getBackendDataSource()));
RULE_REGISTRY.getMetaData().getTable().put(logicTableName, tableMetaDataLoader.loadTableMetaData(logicTableName, RULE_REGISTRY.getShardingRule()));
RULE_REGISTRY.getMetaData().getTable().put(logicTableName, tableMetaDataLoader.load(logicTableName, RULE_REGISTRY.getShardingRule()));
}
return result;
}
Expand Down

0 comments on commit d2b0242

Please sign in to comment.