Commit 517e178e authored by terrymanu's avatar terrymanu
Browse files

refactor DatabaseAllRoutingEngine => DatabaseBroadcastRoutingEngine

parent e06b3e16
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -35,7 +35,7 @@ import io.shardingjdbc.core.routing.SQLRouteResult;
import io.shardingjdbc.core.routing.type.RoutingEngine;
import io.shardingjdbc.core.routing.type.RoutingResult;
import io.shardingjdbc.core.routing.type.TableUnit;
import io.shardingjdbc.core.routing.type.all.DatabaseAllRoutingEngine;
import io.shardingjdbc.core.routing.type.broadcast.DatabaseBroadcastRoutingEngine;
import io.shardingjdbc.core.routing.type.broadcast.TableBroadcastRoutingEngine;
import io.shardingjdbc.core.routing.type.complex.CartesianDataSource;
import io.shardingjdbc.core.routing.type.complex.CartesianRoutingResult;
@@ -126,7 +126,7 @@ public final class ParsingSQLRouter implements SQLRouter {
        } else if (sqlStatement instanceof DescStatement) {
            routingEngine = new UnicastRoutingEngine(shardingRule, sqlStatement);
        } else if (tableNames.isEmpty()) {
            routingEngine = new DatabaseAllRoutingEngine(shardingRule.getDataSourceMap());
            routingEngine = new DatabaseBroadcastRoutingEngine(shardingRule);
        } else if (1 == tableNames.size() || shardingRule.isAllBindingTables(tableNames) || shardingRule.isAllInDefaultDataSource(tableNames)) {
            routingEngine = new SimpleRoutingEngine(shardingRule, parameters, tableNames.iterator().next(), sqlStatement);
        } else {
+6 −8
Original line number Diff line number Diff line
@@ -15,30 +15,28 @@
 * </p>
 */

package io.shardingjdbc.core.routing.type.all;
package io.shardingjdbc.core.routing.type.broadcast;

import io.shardingjdbc.core.routing.type.RoutingEngine;
import io.shardingjdbc.core.routing.type.RoutingResult;
import io.shardingjdbc.core.routing.type.TableUnit;
import io.shardingjdbc.core.rule.ShardingRule;
import lombok.RequiredArgsConstructor;

import javax.sql.DataSource;
import java.util.Map;

/**
 * Database all routing engine.
 * Broadcast routing engine for databases.
 * 
 * @author zhangliang
 */
@RequiredArgsConstructor
public final class DatabaseAllRoutingEngine implements RoutingEngine {
public final class DatabaseBroadcastRoutingEngine implements RoutingEngine {
    
    private final Map<String, DataSource> dataSourceMap;
    private final ShardingRule shardingRule;
    
    @Override
    public RoutingResult route() {
        RoutingResult result = new RoutingResult();
        for (String each : dataSourceMap.keySet()) {
        for (String each : shardingRule.getDataSourceMap().keySet()) {
            result.getTableUnits().getTableUnits().add(new TableUnit(each, "", ""));
        }
        return result;