This is an automated email from the ASF dual-hosted git repository.

orpiske pushed a commit to branch camel-kafka-connector-0.7.x
in repository https://gitbox.apache.org/repos/asf/camel-kafka-connector.git

commit 06e7313ac0b9e14146e217377b76f0caba18a534
Author: Otavio Rodolfo Piske <opi...@redhat.com>
AuthorDate: Tue Feb 23 10:12:50 2021 +0100

    Prevent sensitive data marked as secret config in Camel from leaking in 
Kafka Connect logs (issue #1050)
---
 .../kafkaconnector/maven/CamelKafkaConnectorUpdateMojo.java      | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git 
a/tooling/camel-kafka-connector-generator-maven-plugin/src/main/java/org/apache/camel/kafkaconnector/maven/CamelKafkaConnectorUpdateMojo.java
 
b/tooling/camel-kafka-connector-generator-maven-plugin/src/main/java/org/apache/camel/kafkaconnector/maven/CamelKafkaConnectorUpdateMojo.java
index 08013bf..a494a7d 100644
--- 
a/tooling/camel-kafka-connector-generator-maven-plugin/src/main/java/org/apache/camel/kafkaconnector/maven/CamelKafkaConnectorUpdateMojo.java
+++ 
b/tooling/camel-kafka-connector-generator-maven-plugin/src/main/java/org/apache/camel/kafkaconnector/maven/CamelKafkaConnectorUpdateMojo.java
@@ -111,6 +111,7 @@ public class CamelKafkaConnectorUpdateMojo extends 
AbstractCamelKafkaConnectorMo
     private static final Map<String, String> RESERVED_WORDS_SUBSTITUTION_MAP;
 
     private static final String CONFIG_DEF_TYPE_STRING = 
"ConfigDef.Type.STRING";
+    private static final String CONFIG_DEF_TYPE_PASSWORD = 
"ConfigDef.Type.PASSWORD";
     private static final String CONFIG_DEF_IMPORTANCE_LOW = 
"ConfigDef.Importance.LOW";
     private static final String CONFIG_DEF_IMPORTANCE_MEDIUM = 
"ConfigDef.Importance.MEDIUM";
     private static final String CONFIG_DEF_IMPORTANCE_HIGH = 
"ConfigDef.Importance.HIGH";
@@ -653,7 +654,13 @@ public class CamelKafkaConnectorUpdateMojo extends 
AbstractCamelKafkaConnectorMo
         
javaClass.addField().setFinal(true).setPublic().setStatic(true).setName(defaultFieldName).setType(defaultValueClass)
             .setLiteralInitializer(defaultValueClassLiteralInitializer);
 
-        String confType = 
PRIMITIVE_TYPES_TO_KAFKA_CONFIG_DEF_MAP.getOrDefault(baseOptionModel.getShortJavaType(),
 CONFIG_DEF_TYPE_STRING);
+        String confType;
+
+        if (baseOptionModel.isSecret()) {
+            confType = 
PRIMITIVE_TYPES_TO_KAFKA_CONFIG_DEF_MAP.getOrDefault(baseOptionModel.getShortJavaType(),
 CONFIG_DEF_TYPE_PASSWORD);
+        } else {
+            confType = 
PRIMITIVE_TYPES_TO_KAFKA_CONFIG_DEF_MAP.getOrDefault(baseOptionModel.getShortJavaType(),
 CONFIG_DEF_TYPE_STRING);
+        }
         String confPriority = baseOptionModel.isDeprecated() ? 
CONFIG_DEF_IMPORTANCE_LOW : CONFIG_DEF_IMPORTANCE_MEDIUM;
         confPriority = baseOptionModel.isRequired() ? 
CONFIG_DEF_IMPORTANCE_HIGH : confPriority;
         confMethod.setBody(confMethod.getBody() + "conf.define(" + 
confFieldName + ", " + confType + ", " + defaultFieldName + ", " + confPriority 
+ ", " + docFieldName + ");\n");

Reply via email to