This is an automated email from the ASF dual-hosted git repository.
sunnianjun 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 582caa20824 Refactor RouteSQLRewriteEngine (#31895)
582caa20824 is described below
commit 582caa208241eb3fabb76140d43635e1b07a8380
Author: Liang Zhang <[email protected]>
AuthorDate: Thu Jun 27 16:54:06 2024 +0800
Refactor RouteSQLRewriteEngine (#31895)
* Code format for GenericSQLRewriteEngine
* Refactor RouteSQLRewriteEngine
---
.../infra/rewrite/engine/GenericSQLRewriteEngine.java | 3 +--
.../infra/rewrite/engine/RouteSQLRewriteEngine.java | 15 ++++++++-------
2 files changed, 9 insertions(+), 9 deletions(-)
diff --git
a/infra/rewrite/src/main/java/org/apache/shardingsphere/infra/rewrite/engine/GenericSQLRewriteEngine.java
b/infra/rewrite/src/main/java/org/apache/shardingsphere/infra/rewrite/engine/GenericSQLRewriteEngine.java
index 178d2ec0185..f8f25c1464c 100644
---
a/infra/rewrite/src/main/java/org/apache/shardingsphere/infra/rewrite/engine/GenericSQLRewriteEngine.java
+++
b/infra/rewrite/src/main/java/org/apache/shardingsphere/infra/rewrite/engine/GenericSQLRewriteEngine.java
@@ -56,8 +56,7 @@ public final class GenericSQLRewriteEngine {
Map<String, StorageUnit> storageUnits =
database.getResourceMetaData().getStorageUnits();
DatabaseType storageType = storageUnits.isEmpty() ? protocolType :
storageUnits.values().iterator().next().getStorageType();
SQLTranslatorContext sqlTranslatorContext =
translatorRule.translate(new DefaultSQLBuilder(sqlRewriteContext.getSql(),
sqlRewriteContext.getSqlTokens()).toSQL(),
- sqlRewriteContext.getParameterBuilder().getParameters(),
queryContext,
- storageType, database, globalRuleMetaData);
+ sqlRewriteContext.getParameterBuilder().getParameters(),
queryContext, storageType, database, globalRuleMetaData);
return new GenericSQLRewriteResult(new
SQLRewriteUnit(sqlTranslatorContext.getSql(),
sqlTranslatorContext.getParameters()));
}
}
diff --git
a/infra/rewrite/src/main/java/org/apache/shardingsphere/infra/rewrite/engine/RouteSQLRewriteEngine.java
b/infra/rewrite/src/main/java/org/apache/shardingsphere/infra/rewrite/engine/RouteSQLRewriteEngine.java
index 2ac5c96181c..2577402c3cc 100644
---
a/infra/rewrite/src/main/java/org/apache/shardingsphere/infra/rewrite/engine/RouteSQLRewriteEngine.java
+++
b/infra/rewrite/src/main/java/org/apache/shardingsphere/infra/rewrite/engine/RouteSQLRewriteEngine.java
@@ -118,26 +118,27 @@ public final class RouteSQLRewriteEngine {
if (containsDollarMarker && !params.isEmpty()) {
continue;
}
-
params.addAll(getParameters(sqlRewriteContext.getParameterBuilder(),
routeContext, each));
+ params.addAll(getParameters(sqlRewriteContext, routeContext,
each));
}
return new SQLRewriteUnit(String.join(" UNION ALL ", sql), params);
}
private SQLRewriteUnit createSQLRewriteUnit(final SQLRewriteContext
sqlRewriteContext, final RouteContext routeContext, final RouteUnit routeUnit) {
- return new SQLRewriteUnit(getActualSQL(sqlRewriteContext, routeUnit),
getParameters(sqlRewriteContext.getParameterBuilder(), routeContext,
routeUnit));
+ return new SQLRewriteUnit(getActualSQL(sqlRewriteContext, routeUnit),
getParameters(sqlRewriteContext, routeContext, routeUnit));
}
private String getActualSQL(final SQLRewriteContext sqlRewriteContext,
final RouteUnit routeUnit) {
return new RouteSQLBuilder(sqlRewriteContext.getSql(),
sqlRewriteContext.getSqlTokens(), routeUnit).toSQL();
}
- private List<Object> getParameters(final ParameterBuilder paramBuilder,
final RouteContext routeContext, final RouteUnit routeUnit) {
- if (paramBuilder instanceof StandardParameterBuilder) {
- return paramBuilder.getParameters();
+ private List<Object> getParameters(final SQLRewriteContext
sqlRewriteContext, final RouteContext routeContext, final RouteUnit routeUnit) {
+ ParameterBuilder parameterBuilder =
sqlRewriteContext.getParameterBuilder();
+ if (parameterBuilder instanceof StandardParameterBuilder) {
+ return parameterBuilder.getParameters();
}
return routeContext.getOriginalDataNodes().isEmpty()
- ? ((GroupedParameterBuilder) paramBuilder).getParameters()
- : buildRouteParameters((GroupedParameterBuilder) paramBuilder,
routeContext, routeUnit);
+ ? ((GroupedParameterBuilder) parameterBuilder).getParameters()
+ : buildRouteParameters((GroupedParameterBuilder)
parameterBuilder, routeContext, routeUnit);
}
private List<Object> buildRouteParameters(final GroupedParameterBuilder
paramBuilder, final RouteContext routeContext, final RouteUnit routeUnit) {