You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@shardingsphere.apache.org by zh...@apache.org on 2022/05/20 16:41:00 UTC
[shardingsphere] branch master updated: Refactor ShadowRuleStatementChecker (#17840)
This is an automated email from the ASF dual-hosted git repository.
zhaojinchao 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 0e92670cc5b Refactor ShadowRuleStatementChecker (#17840)
0e92670cc5b is described below
commit 0e92670cc5b9d7978138cb134921fdd2735ce6da
Author: Liang Zhang <zh...@apache.org>
AuthorDate: Sat May 21 00:40:54 2022 +0800
Refactor ShadowRuleStatementChecker (#17840)
* Refactor ShadowRuleStatementChecker
* Refactor ShadowRuleStatementChecker
---
.../distsql/handler/checker/ShadowRuleStatementChecker.java | 5 ++---
.../distsql/handler/update/AlterShadowRuleStatementUpdater.java | 6 +++---
.../distsql/handler/update/CreateShadowRuleStatementUpdater.java | 6 +++---
.../rdl/rule/AlterDefaultSingleTableRuleStatementUpdater.java | 6 +++---
.../rdl/rule/CreateDefaultSingleTableRuleStatementUpdater.java | 9 ++++-----
5 files changed, 15 insertions(+), 17 deletions(-)
diff --git a/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/main/java/org/apache/shardingsphere/shadow/distsql/handler/checker/ShadowRuleStatementChecker.java b/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/main/java/org/apache/shardingsphere/shadow/distsql/handler/checker/ShadowRuleStatementChecker.java
index 6e4e22275f1..bfea6d128ed 100644
--- a/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/main/java/org/apache/shardingsphere/shadow/distsql/handler/checker/ShadowRuleStatementChecker.java
+++ b/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/main/java/org/apache/shardingsphere/shadow/distsql/handler/checker/ShadowRuleStatementChecker.java
@@ -54,12 +54,11 @@ public class ShadowRuleStatementChecker {
*
* @param resources resource being checked
* @param database database
- * @param databaseName database name
* @throws DistSQLException DistSQL exception
*/
- public static void checkResourceExist(final Collection<String> resources, final ShardingSphereDatabase database, final String databaseName) throws DistSQLException {
+ public static void checkResourceExist(final Collection<String> resources, final ShardingSphereDatabase database) throws DistSQLException {
Collection<String> notExistedResources = database.getResource().getNotExistedResources(resources);
- DistSQLException.predictionThrow(notExistedResources.isEmpty(), () -> new RequiredResourceMissedException(databaseName, notExistedResources));
+ DistSQLException.predictionThrow(notExistedResources.isEmpty(), () -> new RequiredResourceMissedException(database.getName(), notExistedResources));
}
/**
diff --git a/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/main/java/org/apache/shardingsphere/shadow/distsql/handler/update/AlterShadowRuleStatementUpdater.java b/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/main/java/org/apache/shardingsphere/shadow/distsql/handler/update/AlterShadowRuleStatementUpdater.java
index 2a3f5d28580..810995481d4 100644
--- a/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/main/java/org/apache/shardingsphere/shadow/distsql/handler/update/AlterShadowRuleStatementUpdater.java
+++ b/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/main/java/org/apache/shardingsphere/shadow/distsql/handler/update/AlterShadowRuleStatementUpdater.java
@@ -72,7 +72,7 @@ public final class AlterShadowRuleStatementUpdater implements RuleDefinitionAlte
Collection<ShadowRuleSegment> rules = sqlStatement.getRules();
checkConfigurationExist(databaseName, currentRuleConfig);
checkRuleNames(databaseName, rules, currentRuleConfig);
- checkResources(databaseName, database, rules);
+ checkResources(database, rules);
checkAlgorithms(databaseName, rules);
}
@@ -87,9 +87,9 @@ public final class AlterShadowRuleStatementUpdater implements RuleDefinitionAlte
ShadowRuleStatementChecker.checkRulesExist(requireRuleNames, currentRuleNames, different -> new InvalidAlgorithmConfigurationException("shadow rule name ", different));
}
- private void checkResources(final String databaseName, final ShardingSphereDatabase database, final Collection<ShadowRuleSegment> rules) throws DistSQLException {
+ private void checkResources(final ShardingSphereDatabase database, final Collection<ShadowRuleSegment> rules) throws DistSQLException {
Collection<String> requireResource = ShadowRuleStatementSupporter.getResourceNames(rules);
- ShadowRuleStatementChecker.checkResourceExist(requireResource, database, databaseName);
+ ShadowRuleStatementChecker.checkResourceExist(requireResource, database);
}
private void checkAlgorithms(final String databaseName, final Collection<ShadowRuleSegment> rules) throws DistSQLException {
diff --git a/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/main/java/org/apache/shardingsphere/shadow/distsql/handler/update/CreateShadowRuleStatementUpdater.java b/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/main/java/org/apache/shardingsphere/shadow/distsql/handler/update/CreateShadowRuleStatementUpdater.java
index b270d9c8122..66eadcc0628 100644
--- a/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/main/java/org/apache/shardingsphere/shadow/distsql/handler/update/CreateShadowRuleStatementUpdater.java
+++ b/shardingsphere-features/shardingsphere-shadow/shardingsphere-shadow-distsql/shardingsphere-shadow-distsql-handler/src/main/java/org/apache/shardingsphere/shadow/distsql/handler/update/CreateShadowRuleStatementUpdater.java
@@ -64,7 +64,7 @@ public final class CreateShadowRuleStatementUpdater implements RuleDefinitionCre
String databaseName = database.getName();
Collection<ShadowRuleSegment> rules = sqlStatement.getRules();
checkRuleNames(databaseName, rules, currentRuleConfig);
- checkResources(databaseName, database, rules);
+ checkResources(database, rules);
checkAlgorithms(databaseName, rules, currentRuleConfig);
}
@@ -75,9 +75,9 @@ public final class CreateShadowRuleStatementUpdater implements RuleDefinitionCre
ShadowRuleStatementChecker.checkAnyDuplicate(requireRuleNames, currentRuleName, identical -> new DuplicateRuleException(SHADOW, databaseName, identical));
}
- private void checkResources(final String databaseName, final ShardingSphereDatabase database, final Collection<ShadowRuleSegment> rules) throws DistSQLException {
+ private void checkResources(final ShardingSphereDatabase database, final Collection<ShadowRuleSegment> rules) throws DistSQLException {
Collection<String> requireResource = ShadowRuleStatementSupporter.getResourceNames(rules);
- ShadowRuleStatementChecker.checkResourceExist(requireResource, database, databaseName);
+ ShadowRuleStatementChecker.checkResourceExist(requireResource, database);
}
private void checkAlgorithms(final String databaseName, final Collection<ShadowRuleSegment> rules, final ShadowRuleConfiguration currentRuleConfig) throws DistSQLException {
diff --git a/shardingsphere-proxy/shardingsphere-proxy-backend/src/main/java/org/apache/shardingsphere/proxy/backend/text/distsql/rdl/rule/AlterDefaultSingleTableRuleStatementUpdater.java b/shardingsphere-proxy/shardingsphere-proxy-backend/src/main/java/org/apache/shardingsphere/proxy/backend/text/distsql/rdl/rule/AlterDefaultSingleTableRuleStatementUpdater.java
index 52fb7a5b645..172336d3864 100644
--- a/shardingsphere-proxy/shardingsphere-proxy-backend/src/main/java/org/apache/shardingsphere/proxy/backend/text/distsql/rdl/rule/AlterDefaultSingleTableRuleStatementUpdater.java
+++ b/shardingsphere-proxy/shardingsphere-proxy-backend/src/main/java/org/apache/shardingsphere/proxy/backend/text/distsql/rdl/rule/AlterDefaultSingleTableRuleStatementUpdater.java
@@ -38,7 +38,7 @@ public final class AlterDefaultSingleTableRuleStatementUpdater implements RuleDe
final AlterDefaultSingleTableRuleStatement sqlStatement, final SingleTableRuleConfiguration currentRuleConfig) throws DistSQLException {
String databaseName = database.getName();
checkConfigurationExist(databaseName, currentRuleConfig);
- checkResourceExist(databaseName, database, sqlStatement);
+ checkResourceExist(database, sqlStatement);
checkDefaultResourceExist(databaseName, currentRuleConfig);
}
@@ -46,10 +46,10 @@ public final class AlterDefaultSingleTableRuleStatementUpdater implements RuleDe
DistSQLException.predictionThrow(null != currentRuleConfig, () -> new RequiredRuleMissedException(databaseName, "single table"));
}
- private void checkResourceExist(final String databaseName, final ShardingSphereDatabase database, final AlterDefaultSingleTableRuleStatement sqlStatement) throws DistSQLException {
+ private void checkResourceExist(final ShardingSphereDatabase database, final AlterDefaultSingleTableRuleStatement sqlStatement) throws DistSQLException {
Set<String> resourceNames = database.getResource().getDataSources().keySet();
DistSQLException.predictionThrow(resourceNames.contains(sqlStatement.getDefaultResource()), () -> new RequiredResourceMissedException(
- databaseName, Collections.singleton(sqlStatement.getDefaultResource())));
+ database.getName(), Collections.singleton(sqlStatement.getDefaultResource())));
}
private void checkDefaultResourceExist(final String databaseName, final SingleTableRuleConfiguration currentRuleConfig) throws DistSQLException {
diff --git a/shardingsphere-proxy/shardingsphere-proxy-backend/src/main/java/org/apache/shardingsphere/proxy/backend/text/distsql/rdl/rule/CreateDefaultSingleTableRuleStatementUpdater.java b/shardingsphere-proxy/shardingsphere-proxy-backend/src/main/java/org/apache/shardingsphere/proxy/backend/text/distsql/rdl/rule/CreateDefaultSingleTableRuleStatementUpdater.java
index 7fa210a82e1..2c1bd3067a0 100644
--- a/shardingsphere-proxy/shardingsphere-proxy-backend/src/main/java/org/apache/shardingsphere/proxy/backend/text/distsql/rdl/rule/CreateDefaultSingleTableRuleStatementUpdater.java
+++ b/shardingsphere-proxy/shardingsphere-proxy-backend/src/main/java/org/apache/shardingsphere/proxy/backend/text/distsql/rdl/rule/CreateDefaultSingleTableRuleStatementUpdater.java
@@ -36,15 +36,14 @@ public final class CreateDefaultSingleTableRuleStatementUpdater implements RuleD
@Override
public void checkSQLStatement(final ShardingSphereDatabase database, final CreateDefaultSingleTableRuleStatement sqlStatement,
final SingleTableRuleConfiguration currentRuleConfig) throws DistSQLException {
- String databaseName = database.getName();
- checkResourceExist(databaseName, database, sqlStatement);
- checkDefaultResourceDuplicate(databaseName, currentRuleConfig);
+ checkResourceExist(database, sqlStatement);
+ checkDefaultResourceDuplicate(database.getName(), currentRuleConfig);
}
- private void checkResourceExist(final String databaseName, final ShardingSphereDatabase database, final CreateDefaultSingleTableRuleStatement sqlStatement) throws DistSQLException {
+ private void checkResourceExist(final ShardingSphereDatabase database, final CreateDefaultSingleTableRuleStatement sqlStatement) throws DistSQLException {
Collection<String> resourceNames = database.getResource().getDataSources().keySet();
DistSQLException.predictionThrow(resourceNames.contains(sqlStatement.getDefaultResource()), () -> new RequiredResourceMissedException(
- databaseName, Collections.singleton(sqlStatement.getDefaultResource())));
+ database.getName(), Collections.singleton(sqlStatement.getDefaultResource())));
}
private void checkDefaultResourceDuplicate(final String databaseName, final SingleTableRuleConfiguration currentRuleConfig) throws DistSQLException {