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 2023/06/20 15:32:53 UTC
[shardingsphere] branch master updated: Refactor EncryptInsertOnDuplicateKeyUpdateValueParameterRewriter (#26465)
This is an automated email from the ASF dual-hosted git repository.
zhangliang 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 221388eaf86 Refactor EncryptInsertOnDuplicateKeyUpdateValueParameterRewriter (#26465)
221388eaf86 is described below
commit 221388eaf8612ee931815262b752784c51bdbf3d
Author: Liang Zhang <zh...@apache.org>
AuthorDate: Tue Jun 20 23:32:46 2023 +0800
Refactor EncryptInsertOnDuplicateKeyUpdateValueParameterRewriter (#26465)
* Refactor EncryptInsertOnDuplicateKeyUpdateValueParameterRewriter
---
...yptInsertOnDuplicateKeyUpdateValueParameterRewriter.java | 13 ++++---------
1 file changed, 4 insertions(+), 9 deletions(-)
diff --git a/features/encrypt/core/src/main/java/org/apache/shardingsphere/encrypt/rewrite/parameter/rewriter/EncryptInsertOnDuplicateKeyUpdateValueParameterRewriter.java b/features/encrypt/core/src/main/java/org/apache/shardingsphere/encrypt/rewrite/parameter/rewriter/EncryptInsertOnDuplicateKeyUpdateValueParameterRewriter.java
index de7a02971ca..5aec0da1cf9 100644
--- a/features/encrypt/core/src/main/java/org/apache/shardingsphere/encrypt/rewrite/parameter/rewriter/EncryptInsertOnDuplicateKeyUpdateValueParameterRewriter.java
+++ b/features/encrypt/core/src/main/java/org/apache/shardingsphere/encrypt/rewrite/parameter/rewriter/EncryptInsertOnDuplicateKeyUpdateValueParameterRewriter.java
@@ -19,8 +19,6 @@ package org.apache.shardingsphere.encrypt.rewrite.parameter.rewriter;
import com.google.common.base.Preconditions;
import lombok.Setter;
-import org.apache.shardingsphere.encrypt.api.context.EncryptContext;
-import org.apache.shardingsphere.encrypt.context.EncryptContextBuilder;
import org.apache.shardingsphere.encrypt.rewrite.aware.DatabaseNameAware;
import org.apache.shardingsphere.encrypt.rewrite.aware.EncryptRuleAware;
import org.apache.shardingsphere.encrypt.rule.EncryptRule;
@@ -73,10 +71,9 @@ public final class EncryptInsertOnDuplicateKeyUpdateValueParameterRewriter imple
if (plainValue instanceof FunctionSegment && "VALUES".equalsIgnoreCase(((FunctionSegment) plainValue).getFunctionName())) {
return;
}
- EncryptContext encryptContext = EncryptContextBuilder.build(databaseName, schemaName, tableName, encryptLogicColumnName);
Object cipherColumnValue = encryptRule.encrypt(databaseName, schemaName, tableName, encryptLogicColumnName, plainValue);
groupedParamBuilder.getGenericParameterBuilder().addReplacedParameters(index, cipherColumnValue);
- Collection<Object> addedParams = buildAddedParams(tableName, encryptLogicColumnName, plainValue, encryptContext);
+ Collection<Object> addedParams = buildAddedParams(schemaName, tableName, encryptLogicColumnName, plainValue);
if (!addedParams.isEmpty()) {
if (!groupedParamBuilder.getGenericParameterBuilder().getAddedIndexAndParameters().containsKey(index)) {
groupedParamBuilder.getGenericParameterBuilder().getAddedIndexAndParameters().put(index, new LinkedList<>());
@@ -86,7 +83,7 @@ public final class EncryptInsertOnDuplicateKeyUpdateValueParameterRewriter imple
}
}
- private Collection<Object> buildAddedParams(final String tableName, final String logicColumnName, final Object plainValue, final EncryptContext encryptContext) {
+ private Collection<Object> buildAddedParams(final String schemaName, final String tableName, final String logicColumnName, final Object plainValue) {
Optional<EncryptTable> encryptTable = encryptRule.findEncryptTable(tableName);
if (!encryptTable.isPresent()) {
return Collections.emptyList();
@@ -95,14 +92,12 @@ public final class EncryptInsertOnDuplicateKeyUpdateValueParameterRewriter imple
if (encryptTable.get().findAssistedQueryColumn(logicColumnName).isPresent()) {
Optional<String> assistedColumnName = encryptTable.get().findAssistedQueryColumn(logicColumnName);
Preconditions.checkArgument(assistedColumnName.isPresent(), "Can not find assisted query column name.");
- result.add(encryptRule.getEncryptAssistedQueryValue(
- encryptContext.getDatabaseName(), encryptContext.getSchemaName(), encryptContext.getTableName(), encryptContext.getColumnName(), plainValue));
+ result.add(encryptRule.getEncryptAssistedQueryValue(databaseName, schemaName, tableName, logicColumnName, plainValue));
}
if (encryptTable.get().findLikeQueryColumn(logicColumnName).isPresent()) {
Optional<String> likeColumnName = encryptTable.get().findLikeQueryColumn(logicColumnName);
Preconditions.checkArgument(likeColumnName.isPresent(), "Can not find assisted query column name.");
- result.add(encryptRule.getEncryptLikeQueryValue(
- encryptContext.getDatabaseName(), encryptContext.getSchemaName(), encryptContext.getTableName(), encryptContext.getColumnName(), plainValue));
+ result.add(encryptRule.getEncryptLikeQueryValue(databaseName, schemaName, tableName, logicColumnName, plainValue));
}
return result;
}