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) {

Reply via email to