From 78b1947d8fe8fad3bef3cfd4fe91d91d74c187d2 Mon Sep 17 00:00:00 2001 From: Robert Yokota Date: Wed, 13 Dec 2023 18:53:12 -0800 Subject: [PATCH] DGS-9450 Strip rule param prefix from configs --- .../encryption/tools/RegisterDeks.java | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/client-encryption/src/main/java/io/confluent/kafka/schemaregistry/encryption/tools/RegisterDeks.java b/client-encryption/src/main/java/io/confluent/kafka/schemaregistry/encryption/tools/RegisterDeks.java index a9f3a54c659..82e3e619d8f 100644 --- a/client-encryption/src/main/java/io/confluent/kafka/schemaregistry/encryption/tools/RegisterDeks.java +++ b/client-encryption/src/main/java/io/confluent/kafka/schemaregistry/encryption/tools/RegisterDeks.java @@ -34,8 +34,10 @@ import java.util.HashMap; import java.util.List; import java.util.Map; +import java.util.Map.Entry; import java.util.Optional; import java.util.concurrent.Callable; +import java.util.stream.Collectors; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import picocli.CommandLine; @@ -50,6 +52,8 @@ public class RegisterDeks implements Callable { private static final Logger LOG = LoggerFactory.getLogger(RegisterDeks.class); + private static final String RULE_PARAM_PREFIX = "rule.executors._default_.param."; + @Parameters(index = "0", description = "SR (Schema Registry) URL", paramLabel = "") private String baseUrl; @@ -92,7 +96,13 @@ public Integer call() throws Exception { return 0; } try (FieldEncryptionExecutor executor = new FieldEncryptionExecutor()) { - executor.configure(configs); + Map ruleConfigs = configs.entrySet().stream() + .collect(Collectors.toMap( + e -> e.getKey().startsWith(RULE_PARAM_PREFIX) + ? e.getKey().substring(RULE_PARAM_PREFIX.length()) + : e.getKey(), + Entry::getValue)); + executor.configure(ruleConfigs); List rules = parsedSchema.ruleSet().getDomainRules(); for (int i = 0; i < rules.size(); i++) { Rule rule = rules.get(i);