Skip to content

Commit 4f85565

Browse files
authored
Refactor ProxyBackendHandlerFactory (#36905)
1 parent 2a9efaf commit 4f85565

File tree

1 file changed

+3
-6
lines changed

1 file changed

+3
-6
lines changed

proxy/backend/core/src/main/java/org/apache/shardingsphere/proxy/backend/handler/ProxyBackendHandlerFactory.java

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -143,10 +143,9 @@ public static ProxyBackendHandler newInstance(final DatabaseType databaseType, f
143143
String databaseName = sqlStatementContext.getTablesContext().getDatabaseName().isPresent()
144144
? sqlStatementContext.getTablesContext().getDatabaseName().get()
145145
: connectionSession.getUsedDatabaseName();
146-
if (null == databaseName) {
147-
return DatabaseProxyBackendHandlerFactory.newInstance(queryContext, connectionSession, preferPreparedStatement);
146+
if (null != databaseName) {
147+
checkSQLExecution(queryContext, connectionSession.getConnectionContext().getGrantee(), databaseName);
148148
}
149-
checkSQLExecution(queryContext, connectionSession.getConnectionContext().getGrantee(), databaseName);
150149
return DatabaseProxyBackendHandlerFactory.newInstance(queryContext, connectionSession, preferPreparedStatement);
151150
}
152151

@@ -199,8 +198,6 @@ private static Optional<ProxyBackendHandler> findDatabaseOperateProxyBackendHand
199198

200199
private static void checkSQLExecution(final QueryContext queryContext, final Grantee grantee, final String databaseName) {
201200
ShardingSphereDatabase database = queryContext.getMetaData().getDatabase(databaseName);
202-
for (SQLExecutionChecker each : ShardingSphereServiceLoader.getServiceInstances(SQLExecutionChecker.class)) {
203-
each.check(grantee, queryContext, database);
204-
}
201+
ShardingSphereServiceLoader.getServiceInstances(SQLExecutionChecker.class).forEach(each -> each.check(grantee, queryContext, database));
205202
}
206203
}

0 commit comments

Comments
 (0)