This is an automated email from the ASF dual-hosted git repository.
jianglongtao 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 1a88337955b Remove useless RALBackendHandler (#29821)
1a88337955b is described below
commit 1a88337955bc26df7ce5c4cd648e715cdcd0713d
Author: Liang Zhang <[email protected]>
AuthorDate: Tue Jan 23 22:30:38 2024 +0800
Remove useless RALBackendHandler (#29821)
* Remove useless generic type on RuleDefinitionBackendHandler
* Refactor CreateDatabaseRuleRDLExecuteEngine
* Refactor DropDatabaseRuleRDLExecuteEngine
* Remove useless RALBackendHandler
* Refactor QueryableRALBackendHandler
* Refactor QueryableRALBackendHandler
* Refactor CreateDatabaseRuleRDLExecuteEngine
---
.../distsql/ral/QueryableRALBackendHandler.java | 11 ++++-----
.../handler/distsql/ral/RALBackendHandler.java | 26 ----------------------
.../distsql/ral/UpdatableRALBackendHandler.java | 3 ++-
.../type/CreateDatabaseRuleRDLExecuteEngine.java | 15 ++++---------
4 files changed, 10 insertions(+), 45 deletions(-)
diff --git
a/proxy/backend/core/src/main/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/QueryableRALBackendHandler.java
b/proxy/backend/core/src/main/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/QueryableRALBackendHandler.java
index cb8d485824e..3427c3c5958 100644
---
a/proxy/backend/core/src/main/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/QueryableRALBackendHandler.java
+++
b/proxy/backend/core/src/main/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/QueryableRALBackendHandler.java
@@ -17,6 +17,7 @@
package org.apache.shardingsphere.proxy.backend.handler.distsql.ral;
+import lombok.RequiredArgsConstructor;
import
org.apache.shardingsphere.distsql.handler.type.ral.query.ConnectionSizeAwareQueryableRALExecutor;
import
org.apache.shardingsphere.distsql.handler.type.ral.query.DatabaseAwareQueryableRALExecutor;
import
org.apache.shardingsphere.distsql.handler.type.ral.query.InstanceContextAwareQueryableRALExecutor;
@@ -27,6 +28,7 @@ import
org.apache.shardingsphere.infra.merge.result.impl.local.LocalDataMergedRe
import
org.apache.shardingsphere.infra.merge.result.impl.local.LocalDataQueryResultRow;
import org.apache.shardingsphere.infra.spi.type.typed.TypedSPILoader;
import org.apache.shardingsphere.proxy.backend.context.ProxyContext;
+import
org.apache.shardingsphere.proxy.backend.handler.distsql.DistSQLBackendHandler;
import org.apache.shardingsphere.proxy.backend.response.data.QueryResponseCell;
import org.apache.shardingsphere.proxy.backend.response.data.QueryResponseRow;
import org.apache.shardingsphere.proxy.backend.response.header.ResponseHeader;
@@ -47,7 +49,8 @@ import java.util.stream.Collectors;
*
* @param <T> type of queryable RAL statement
*/
-public final class QueryableRALBackendHandler<T extends QueryableRALStatement>
implements RALBackendHandler {
+@RequiredArgsConstructor
+public final class QueryableRALBackendHandler<T extends QueryableRALStatement>
implements DistSQLBackendHandler {
private final T sqlStatement;
@@ -57,12 +60,6 @@ public final class QueryableRALBackendHandler<T extends
QueryableRALStatement> i
private MergedResult mergedResult;
- @SuppressWarnings("unchecked")
- public QueryableRALBackendHandler(final QueryableRALStatement
sqlStatement, final ConnectionSession connectionSession) {
- this.sqlStatement = (T) sqlStatement;
- this.connectionSession = connectionSession;
- }
-
@SuppressWarnings("unchecked")
@Override
public ResponseHeader execute() {
diff --git
a/proxy/backend/core/src/main/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/RALBackendHandler.java
b/proxy/backend/core/src/main/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/RALBackendHandler.java
deleted file mode 100644
index 1d622db1270..00000000000
---
a/proxy/backend/core/src/main/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/RALBackendHandler.java
+++ /dev/null
@@ -1,26 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.shardingsphere.proxy.backend.handler.distsql.ral;
-
-import
org.apache.shardingsphere.proxy.backend.handler.distsql.DistSQLBackendHandler;
-
-/**
- * RAL backend handler.
- */
-public interface RALBackendHandler extends DistSQLBackendHandler {
-}
diff --git
a/proxy/backend/core/src/main/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/UpdatableRALBackendHandler.java
b/proxy/backend/core/src/main/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/UpdatableRALBackendHandler.java
index aae7434e2b2..a4dabf7709d 100644
---
a/proxy/backend/core/src/main/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/UpdatableRALBackendHandler.java
+++
b/proxy/backend/core/src/main/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/UpdatableRALBackendHandler.java
@@ -23,6 +23,7 @@ import
org.apache.shardingsphere.distsql.handler.type.ral.update.DatabaseAwareUp
import org.apache.shardingsphere.distsql.statement.ral.UpdatableRALStatement;
import org.apache.shardingsphere.infra.spi.type.typed.TypedSPILoader;
import org.apache.shardingsphere.proxy.backend.context.ProxyContext;
+import
org.apache.shardingsphere.proxy.backend.handler.distsql.DistSQLBackendHandler;
import org.apache.shardingsphere.proxy.backend.response.header.ResponseHeader;
import
org.apache.shardingsphere.proxy.backend.response.header.update.UpdateResponseHeader;
import org.apache.shardingsphere.proxy.backend.session.ConnectionSession;
@@ -36,7 +37,7 @@ import java.sql.SQLException;
* @param <T> type of SQL statement
*/
@RequiredArgsConstructor
-public final class UpdatableRALBackendHandler<T extends UpdatableRALStatement>
implements RALBackendHandler {
+public final class UpdatableRALBackendHandler<T extends UpdatableRALStatement>
implements DistSQLBackendHandler {
private final UpdatableRALStatement sqlStatement;
diff --git
a/proxy/backend/core/src/main/java/org/apache/shardingsphere/proxy/backend/handler/distsql/rdl/rule/database/execute/type/CreateDatabaseRuleRDLExecuteEngine.java
b/proxy/backend/core/src/main/java/org/apache/shardingsphere/proxy/backend/handler/distsql/rdl/rule/database/execute/type/CreateDatabaseRuleRDLExecuteEngine.java
index 01a54550538..ada833f2da5 100644
---
a/proxy/backend/core/src/main/java/org/apache/shardingsphere/proxy/backend/handler/distsql/rdl/rule/database/execute/type/CreateDatabaseRuleRDLExecuteEngine.java
+++
b/proxy/backend/core/src/main/java/org/apache/shardingsphere/proxy/backend/handler/distsql/rdl/rule/database/execute/type/CreateDatabaseRuleRDLExecuteEngine.java
@@ -28,8 +28,6 @@ import
org.apache.shardingsphere.infra.metadata.version.MetaDataVersion;
import org.apache.shardingsphere.infra.spi.type.typed.TypedSPILoader;
import org.apache.shardingsphere.proxy.backend.context.ProxyContext;
import
org.apache.shardingsphere.proxy.backend.handler.distsql.rdl.rule.database.execute.DatabaseRuleRDLExecuteEngine;
-import
org.apache.shardingsphere.single.distsql.statement.rdl.LoadSingleTableStatement;
-import
org.apache.shardingsphere.single.distsql.statement.rdl.SetDefaultSingleTableStorageUnitStatement;
import java.util.Collection;
import java.util.LinkedHashMap;
@@ -49,17 +47,12 @@ public final class CreateDatabaseRuleRDLExecuteEngine
implements DatabaseRuleRDL
@SuppressWarnings("unchecked")
public Collection<MetaDataVersion> execute(final RuleDefinitionStatement
sqlStatement, final ShardingSphereDatabase database, final RuleConfiguration
currentRuleConfig) {
RuleConfiguration toBeCreatedRuleConfig =
executor.buildToBeCreatedRuleConfiguration(currentRuleConfig, sqlStatement);
- executor.updateCurrentRuleConfiguration(currentRuleConfig,
toBeCreatedRuleConfig);
ModeContextManager modeContextManager =
ProxyContext.getInstance().getContextManager().getInstanceContext().getModeContextManager();
- return modeContextManager.alterRuleConfiguration(database.getName(),
getToBeCreatedRuleConfiguration(sqlStatement, database, currentRuleConfig,
toBeCreatedRuleConfig));
- }
-
- private RuleConfiguration getToBeCreatedRuleConfiguration(final
RuleDefinitionStatement sqlStatement,
- final
ShardingSphereDatabase database, final RuleConfiguration currentRuleConfig,
final RuleConfiguration toBeCreatedRuleConfig) {
- if (sqlStatement instanceof LoadSingleTableStatement || sqlStatement
instanceof SetDefaultSingleTableStorageUnitStatement) {
- return null == currentRuleConfig ?
decorateRuleConfiguration(database, toBeCreatedRuleConfig) :
decorateRuleConfiguration(database, currentRuleConfig);
+ if (null == currentRuleConfig) {
+ return
modeContextManager.alterRuleConfiguration(database.getName(),
decorateRuleConfiguration(database, toBeCreatedRuleConfig));
}
- return toBeCreatedRuleConfig;
+ executor.updateCurrentRuleConfiguration(currentRuleConfig,
toBeCreatedRuleConfig);
+ return modeContextManager.alterRuleConfiguration(database.getName(),
decorateRuleConfiguration(database, currentRuleConfig));
}
@SuppressWarnings("unchecked")