This is an automated email from the ASF dual-hosted git repository.
chenjiahao 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 c13d95706aa * Made some optimizations for the isColumnNameNotConflicts
method (#28465)
c13d95706aa is described below
commit c13d95706aa50fb01c292e410e0e0772ad95d436
Author: DaleyZou's World <[email protected]>
AuthorDate: Tue Sep 19 18:54:18 2023 +0800
* Made some optimizations for the isColumnNameNotConflicts method (#28465)
---
.../handler/update/AlterEncryptRuleStatementUpdater.java | 12 ++----------
.../handler/update/CreateEncryptRuleStatementUpdater.java | 12 ++----------
2 files changed, 4 insertions(+), 20 deletions(-)
diff --git
a/features/encrypt/distsql/handler/src/main/java/org/apache/shardingsphere/encrypt/distsql/handler/update/AlterEncryptRuleStatementUpdater.java
b/features/encrypt/distsql/handler/src/main/java/org/apache/shardingsphere/encrypt/distsql/handler/update/AlterEncryptRuleStatementUpdater.java
index 4f1f84b110e..c27191cb497 100644
---
a/features/encrypt/distsql/handler/src/main/java/org/apache/shardingsphere/encrypt/distsql/handler/update/AlterEncryptRuleStatementUpdater.java
+++
b/features/encrypt/distsql/handler/src/main/java/org/apache/shardingsphere/encrypt/distsql/handler/update/AlterEncryptRuleStatementUpdater.java
@@ -26,7 +26,6 @@ import
org.apache.shardingsphere.encrypt.api.config.EncryptRuleConfiguration;
import
org.apache.shardingsphere.encrypt.api.config.rule.EncryptColumnItemRuleConfiguration;
import
org.apache.shardingsphere.encrypt.api.config.rule.EncryptTableRuleConfiguration;
import
org.apache.shardingsphere.encrypt.distsql.handler.converter.EncryptRuleStatementConverter;
-import
org.apache.shardingsphere.encrypt.distsql.parser.segment.EncryptColumnSegment;
import
org.apache.shardingsphere.encrypt.distsql.parser.segment.EncryptRuleSegment;
import
org.apache.shardingsphere.encrypt.distsql.parser.statement.AlterEncryptRuleStatement;
import org.apache.shardingsphere.encrypt.spi.EncryptAlgorithm;
@@ -78,15 +77,8 @@ public final class AlterEncryptRuleStatementUpdater
implements RuleDefinitionAlt
}
private boolean isColumnNameNotConflicts(final EncryptRuleSegment rule) {
- for (EncryptColumnSegment each : rule.getColumns()) {
- if (null != each.getLikeQuery() &&
each.getName().equals(each.getLikeQuery().getName())) {
- return false;
- }
- if (null != each.getAssistedQuery() &&
each.getName().equals(each.getAssistedQuery().getName())) {
- return false;
- }
- }
- return true;
+ return rule.getColumns().stream().noneMatch(each -> null !=
each.getLikeQuery() && each.getName().equals(each.getLikeQuery().getName())
+ || null != each.getAssistedQuery() &&
each.getName().equals(each.getAssistedQuery().getName()));
}
private void checkToBeAlteredEncryptors(final AlterEncryptRuleStatement
sqlStatement) {
diff --git
a/features/encrypt/distsql/handler/src/main/java/org/apache/shardingsphere/encrypt/distsql/handler/update/CreateEncryptRuleStatementUpdater.java
b/features/encrypt/distsql/handler/src/main/java/org/apache/shardingsphere/encrypt/distsql/handler/update/CreateEncryptRuleStatementUpdater.java
index 88d0fbb8d70..fd89993ba78 100644
---
a/features/encrypt/distsql/handler/src/main/java/org/apache/shardingsphere/encrypt/distsql/handler/update/CreateEncryptRuleStatementUpdater.java
+++
b/features/encrypt/distsql/handler/src/main/java/org/apache/shardingsphere/encrypt/distsql/handler/update/CreateEncryptRuleStatementUpdater.java
@@ -30,7 +30,6 @@ import
org.apache.shardingsphere.encrypt.api.encrypt.like.LikeEncryptAlgorithm;
import
org.apache.shardingsphere.encrypt.api.encrypt.standard.StandardEncryptAlgorithm;
import
org.apache.shardingsphere.encrypt.distsql.handler.converter.EncryptRuleStatementConverter;
import
org.apache.shardingsphere.encrypt.distsql.parser.segment.EncryptColumnItemSegment;
-import
org.apache.shardingsphere.encrypt.distsql.parser.segment.EncryptColumnSegment;
import
org.apache.shardingsphere.encrypt.distsql.parser.segment.EncryptRuleSegment;
import
org.apache.shardingsphere.encrypt.distsql.parser.statement.CreateEncryptRuleStatement;
import org.apache.shardingsphere.encrypt.spi.EncryptAlgorithm;
@@ -96,15 +95,8 @@ public final class CreateEncryptRuleStatementUpdater
implements RuleDefinitionCr
}
private boolean isColumnNameNotConflicts(final EncryptRuleSegment rule) {
- for (EncryptColumnSegment each : rule.getColumns()) {
- if (null != each.getLikeQuery() &&
each.getName().equals(each.getLikeQuery().getName())) {
- return false;
- }
- if (null != each.getAssistedQuery() &&
each.getName().equals(each.getAssistedQuery().getName())) {
- return false;
- }
- }
- return true;
+ return rule.getColumns().stream().noneMatch(each -> null !=
each.getLikeQuery() && each.getName().equals(each.getLikeQuery().getName())
+ || null != each.getAssistedQuery() &&
each.getName().equals(each.getAssistedQuery().getName()));
}
private void checkToBeCreatedEncryptors(final CreateEncryptRuleStatement
sqlStatement) {