use of com.actiontech.dble.route.parser.druid.DruidParser in project dble by actiontech.
the class DefaultRouteStrategy method routeNormalSqlWithAST.
@Override
public RouteResultset routeNormalSqlWithAST(SchemaConfig schema, String originSql, RouteResultset rrs, LayerCachePool cachePool, ServerConnection sc) throws SQLException {
SQLStatement statement = parserSQL(originSql);
sc.getSession2().endParse();
DruidParser druidParser = DruidParserFactory.create(statement, rrs.getSqlType());
return RouterUtil.routeFromParser(druidParser, schema, rrs, statement, originSql, cachePool, new ServerSchemaStatVisitor(), sc);
}
use of com.actiontech.dble.route.parser.druid.DruidParser in project dble by actiontech.
the class MergeBuilder method constructByStatement.
public RouteResultset constructByStatement(String sql, SQLSelectStatement select) throws SQLException {
ServerSchemaStatVisitor visitor = new ServerSchemaStatVisitor();
DruidParser druidParser = new DruidSingleUnitSelectParser();
RouteResultset rrs = new RouteResultset(sql, ServerParse.SELECT);
LayerCachePool pool = DbleServer.getInstance().getRouterService().getTableId2DataNodeCache();
SchemaConfig schemaConfig = schemaConfigMap.get(node.getReferedTableNodes().get(0).getSchema());
return RouterUtil.routeFromParser(druidParser, schemaConfig, rrs, select, sql, pool, visitor, session.getSource());
}
Aggregations