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 0afafe0be5b Refactor EncryptParameterRewriterBuilder (#33612)
0afafe0be5b is described below
commit 0afafe0be5b7d1d11176f334df0ca313fbcb6be6
Author: Liang Zhang <[email protected]>
AuthorDate: Mon Nov 11 15:58:03 2024 +0800
Refactor EncryptParameterRewriterBuilder (#33612)
---
.../rewrite/parameter/EncryptParameterRewriterBuilder.java | 12 ++++++------
.../rewriter/EncryptAssignmentParameterRewriter.java | 6 +++---
...ryptInsertOnDuplicateKeyUpdateValueParameterRewriter.java | 6 +++---
.../rewriter/EncryptInsertPredicateParameterRewriter.java | 4 ++--
.../rewriter/EncryptInsertValueParameterRewriter.java | 8 ++++----
.../rewriter/EncryptPredicateParameterRewriter.java | 4 ++--
6 files changed, 20 insertions(+), 20 deletions(-)
diff --git
a/features/encrypt/core/src/main/java/org/apache/shardingsphere/encrypt/rewrite/parameter/EncryptParameterRewriterBuilder.java
b/features/encrypt/core/src/main/java/org/apache/shardingsphere/encrypt/rewrite/parameter/EncryptParameterRewriterBuilder.java
index da9ad3e9eff..66e9c8205b6 100644
---
a/features/encrypt/core/src/main/java/org/apache/shardingsphere/encrypt/rewrite/parameter/EncryptParameterRewriterBuilder.java
+++
b/features/encrypt/core/src/main/java/org/apache/shardingsphere/encrypt/rewrite/parameter/EncryptParameterRewriterBuilder.java
@@ -45,7 +45,7 @@ import java.util.Map;
@RequiredArgsConstructor
public final class EncryptParameterRewriterBuilder implements
ParameterRewriterBuilder {
- private final EncryptRule encryptRule;
+ private final EncryptRule rule;
private final String databaseName;
@@ -58,11 +58,11 @@ public final class EncryptParameterRewriterBuilder
implements ParameterRewriterB
@Override
public Collection<ParameterRewriter> getParameterRewriters() {
Collection<ParameterRewriter> result = new LinkedList<>();
- addParameterRewriter(result, new
EncryptAssignmentParameterRewriter(encryptRule));
- addParameterRewriter(result, new
EncryptPredicateParameterRewriter(encryptRule));
- addParameterRewriter(result, new
EncryptInsertPredicateParameterRewriter(encryptRule));
- addParameterRewriter(result, new
EncryptInsertValueParameterRewriter(encryptRule));
- addParameterRewriter(result, new
EncryptInsertOnDuplicateKeyUpdateValueParameterRewriter(encryptRule));
+ addParameterRewriter(result, new
EncryptAssignmentParameterRewriter(rule));
+ addParameterRewriter(result, new
EncryptPredicateParameterRewriter(rule));
+ addParameterRewriter(result, new
EncryptInsertPredicateParameterRewriter(rule));
+ addParameterRewriter(result, new
EncryptInsertValueParameterRewriter(rule));
+ addParameterRewriter(result, new
EncryptInsertOnDuplicateKeyUpdateValueParameterRewriter(rule));
return result;
}
diff --git
a/features/encrypt/core/src/main/java/org/apache/shardingsphere/encrypt/rewrite/parameter/rewriter/EncryptAssignmentParameterRewriter.java
b/features/encrypt/core/src/main/java/org/apache/shardingsphere/encrypt/rewrite/parameter/rewriter/EncryptAssignmentParameterRewriter.java
index 59baf92780c..18b49943cd6 100644
---
a/features/encrypt/core/src/main/java/org/apache/shardingsphere/encrypt/rewrite/parameter/rewriter/EncryptAssignmentParameterRewriter.java
+++
b/features/encrypt/core/src/main/java/org/apache/shardingsphere/encrypt/rewrite/parameter/rewriter/EncryptAssignmentParameterRewriter.java
@@ -52,7 +52,7 @@ import java.util.Optional;
@Setter
public final class EncryptAssignmentParameterRewriter implements
ParameterRewriter, DatabaseNameAware {
- private final EncryptRule encryptRule;
+ private final EncryptRule rule;
private String databaseName;
@@ -74,8 +74,8 @@ public final class EncryptAssignmentParameterRewriter
implements ParameterRewrit
.orElseGet(() -> new
DatabaseTypeRegistry(sqlStatementContext.getDatabaseType()).getDefaultSchemaName(databaseName));
for (ColumnAssignmentSegment each :
getSetAssignmentSegment(sqlStatementContext.getSqlStatement()).getAssignments())
{
String columnName =
each.getColumns().get(0).getIdentifier().getValue();
- if (each.getValue() instanceof ParameterMarkerExpressionSegment &&
encryptRule.findEncryptTable(tableName).map(optional ->
optional.isEncryptColumn(columnName)).orElse(false)) {
- EncryptColumn encryptColumn =
encryptRule.getEncryptTable(tableName).getEncryptColumn(columnName);
+ if (each.getValue() instanceof ParameterMarkerExpressionSegment &&
rule.findEncryptTable(tableName).map(optional ->
optional.isEncryptColumn(columnName)).orElse(false)) {
+ EncryptColumn encryptColumn =
rule.getEncryptTable(tableName).getEncryptColumn(columnName);
StandardParameterBuilder standardParamBuilder = paramBuilder
instanceof StandardParameterBuilder
? (StandardParameterBuilder) paramBuilder
: ((GroupedParameterBuilder)
paramBuilder).getParameterBuilders().get(0);
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 fb8282c6447..ff199d3b890 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
@@ -42,7 +42,7 @@ import java.util.List;
@Setter
public final class EncryptInsertOnDuplicateKeyUpdateValueParameterRewriter
implements ParameterRewriter, DatabaseNameAware {
- private final EncryptRule encryptRule;
+ private final EncryptRule rule;
private String databaseName;
@@ -62,14 +62,14 @@ public final class
EncryptInsertOnDuplicateKeyUpdateValueParameterRewriter imple
.orElseGet(() -> new
DatabaseTypeRegistry(insertStatementContext.getDatabaseType()).getDefaultSchemaName(databaseName));
for (int index = 0; index <
onDuplicateKeyUpdateValueContext.getValueExpressions().size(); index++) {
String logicColumnName =
onDuplicateKeyUpdateValueContext.getColumn(index).getIdentifier().getValue();
- if (!encryptRule.findEncryptTable(tableName).map(optional ->
optional.isEncryptColumn(logicColumnName)).orElse(false)) {
+ if (!rule.findEncryptTable(tableName).map(optional ->
optional.isEncryptColumn(logicColumnName)).orElse(false)) {
continue;
}
Object plainValue =
onDuplicateKeyUpdateValueContext.getValue(index);
if (plainValue instanceof FunctionSegment &&
"VALUES".equalsIgnoreCase(((FunctionSegment) plainValue).getFunctionName())) {
return;
}
- EncryptColumn encryptColumn =
encryptRule.getEncryptTable(tableName).getEncryptColumn(logicColumnName);
+ EncryptColumn encryptColumn =
rule.getEncryptTable(tableName).getEncryptColumn(logicColumnName);
Object cipherColumnValue =
encryptColumn.getCipher().encrypt(databaseName, schemaName, tableName,
logicColumnName, plainValue);
groupedParamBuilder.getGenericParameterBuilder().addReplacedParameters(index,
cipherColumnValue);
Collection<Object> addedParams = buildAddedParams(schemaName,
tableName, encryptColumn, logicColumnName, plainValue);
diff --git
a/features/encrypt/core/src/main/java/org/apache/shardingsphere/encrypt/rewrite/parameter/rewriter/EncryptInsertPredicateParameterRewriter.java
b/features/encrypt/core/src/main/java/org/apache/shardingsphere/encrypt/rewrite/parameter/rewriter/EncryptInsertPredicateParameterRewriter.java
index a441bee4a92..4521eb65f89 100644
---
a/features/encrypt/core/src/main/java/org/apache/shardingsphere/encrypt/rewrite/parameter/rewriter/EncryptInsertPredicateParameterRewriter.java
+++
b/features/encrypt/core/src/main/java/org/apache/shardingsphere/encrypt/rewrite/parameter/rewriter/EncryptInsertPredicateParameterRewriter.java
@@ -38,7 +38,7 @@ import java.util.List;
@Setter
public final class EncryptInsertPredicateParameterRewriter implements
ParameterRewriter, EncryptConditionsAware, DatabaseNameAware {
- private final EncryptRule encryptRule;
+ private final EncryptRule rule;
private Collection<EncryptCondition> encryptConditions;
@@ -52,7 +52,7 @@ public final class EncryptInsertPredicateParameterRewriter
implements ParameterR
@Override
public void rewrite(final ParameterBuilder paramBuilder, final
SQLStatementContext sqlStatementContext, final List<Object> params) {
- EncryptPredicateParameterRewriter rewriter = new
EncryptPredicateParameterRewriter(encryptRule);
+ EncryptPredicateParameterRewriter rewriter = new
EncryptPredicateParameterRewriter(rule);
rewriter.setEncryptConditions(encryptConditions);
rewriter.setDatabaseName(databaseName);
rewriter.rewrite(paramBuilder, ((InsertStatementContext)
sqlStatementContext).getInsertSelectContext().getSelectStatementContext(),
params);
diff --git
a/features/encrypt/core/src/main/java/org/apache/shardingsphere/encrypt/rewrite/parameter/rewriter/EncryptInsertValueParameterRewriter.java
b/features/encrypt/core/src/main/java/org/apache/shardingsphere/encrypt/rewrite/parameter/rewriter/EncryptInsertValueParameterRewriter.java
index 190a20d6235..25001ddd709 100644
---
a/features/encrypt/core/src/main/java/org/apache/shardingsphere/encrypt/rewrite/parameter/rewriter/EncryptInsertValueParameterRewriter.java
+++
b/features/encrypt/core/src/main/java/org/apache/shardingsphere/encrypt/rewrite/parameter/rewriter/EncryptInsertValueParameterRewriter.java
@@ -47,7 +47,7 @@ import java.util.Optional;
@Setter
public final class EncryptInsertValueParameterRewriter implements
ParameterRewriter, DatabaseNameAware {
- private final EncryptRule encryptRule;
+ private final EncryptRule rule;
private String databaseName;
@@ -61,7 +61,7 @@ public final class EncryptInsertValueParameterRewriter
implements ParameterRewri
public void rewrite(final ParameterBuilder paramBuilder, final
SQLStatementContext sqlStatementContext, final List<Object> params) {
InsertStatementContext insertStatementContext =
(InsertStatementContext) sqlStatementContext;
String tableName =
insertStatementContext.getSqlStatement().getTable().map(optional ->
optional.getTableName().getIdentifier().getValue()).orElse("");
- Optional<EncryptTable> encryptTable =
encryptRule.findEncryptTable(tableName);
+ Optional<EncryptTable> encryptTable = rule.findEncryptTable(tableName);
if (!encryptTable.isPresent()) {
return;
}
@@ -70,7 +70,7 @@ public final class EncryptInsertValueParameterRewriter
implements ParameterRewri
.orElseGet(() -> new
DatabaseTypeRegistry(insertStatementContext.getDatabaseType()).getDefaultSchemaName(databaseName));
while (descendingColumnNames.hasNext()) {
String columnName = descendingColumnNames.next();
- if (encryptRule.findEncryptTable(tableName).map(optional ->
optional.isEncryptColumn(columnName)).orElse(false)) {
+ if (rule.findEncryptTable(tableName).map(optional ->
optional.isEncryptColumn(columnName)).orElse(false)) {
encryptInsertValues((GroupedParameterBuilder) paramBuilder,
insertStatementContext, schemaName, tableName, columnName);
}
}
@@ -78,7 +78,7 @@ public final class EncryptInsertValueParameterRewriter
implements ParameterRewri
private void encryptInsertValues(final GroupedParameterBuilder
paramBuilder, final InsertStatementContext insertStatementContext,
final String schemaName, final String
tableName, final String columnName) {
- EncryptColumn encryptColumn =
encryptRule.getEncryptTable(tableName).getEncryptColumn(columnName);
+ EncryptColumn encryptColumn =
rule.getEncryptTable(tableName).getEncryptColumn(columnName);
int columnIndex = getColumnIndex(paramBuilder, insertStatementContext,
columnName);
int count = 0;
for (List<Object> each :
insertStatementContext.getGroupedParameters()) {
diff --git
a/features/encrypt/core/src/main/java/org/apache/shardingsphere/encrypt/rewrite/parameter/rewriter/EncryptPredicateParameterRewriter.java
b/features/encrypt/core/src/main/java/org/apache/shardingsphere/encrypt/rewrite/parameter/rewriter/EncryptPredicateParameterRewriter.java
index da53e329e3d..57778d1c7f3 100644
---
a/features/encrypt/core/src/main/java/org/apache/shardingsphere/encrypt/rewrite/parameter/rewriter/EncryptPredicateParameterRewriter.java
+++
b/features/encrypt/core/src/main/java/org/apache/shardingsphere/encrypt/rewrite/parameter/rewriter/EncryptPredicateParameterRewriter.java
@@ -46,7 +46,7 @@ import java.util.Map.Entry;
@Setter
public final class EncryptPredicateParameterRewriter implements
ParameterRewriter, EncryptConditionsAware, DatabaseNameAware {
- private final EncryptRule encryptRule;
+ private final EncryptRule rule;
private Collection<EncryptCondition> encryptConditions;
@@ -69,7 +69,7 @@ public final class EncryptPredicateParameterRewriter
implements ParameterRewrite
private List<Object> getEncryptedValues(final String schemaName, final
EncryptCondition encryptCondition, final List<Object> originalValues) {
String tableName = encryptCondition.getTableName();
String columnName = encryptCondition.getColumnName();
- EncryptTable encryptTable = encryptRule.getEncryptTable(tableName);
+ EncryptTable encryptTable = rule.getEncryptTable(tableName);
EncryptColumn encryptColumn =
encryptTable.getEncryptColumn(columnName);
if (encryptCondition instanceof EncryptBinaryCondition &&
"LIKE".equals(((EncryptBinaryCondition) encryptCondition).getOperator()) &&
encryptColumn.getLikeQuery().isPresent()) {
return encryptColumn.getLikeQuery().get().encrypt(databaseName,
schemaName, tableName, columnName, originalValues);