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

acosentino pushed a commit to branch CAMEL-17339-dapr
in repository https://gitbox.apache.org/repos/asf/camel.git

commit 67b6922ba7b7ace579f67ecf2ef90e6c73e8eee3
Author: Andrea Cosentino <[email protected]>
AuthorDate: Fri Jul 18 12:07:31 2025 +0200

    CAMEL-17339 - Avoid List<String> as configuration parameter types in 
Endpoint configurations - Camel Dapr
    
    Signed-off-by: Andrea Cosentino <[email protected]>
---
 .../org/apache/camel/catalog/components/dapr.json  |  6 +--
 .../component/dapr/DaprComponentConfigurer.java    | 13 +----
 .../component/dapr/DaprEndpointConfigurer.java     | 13 +----
 .../org/apache/camel/component/dapr/dapr.json      |  6 +--
 .../camel/component/dapr/DaprConfiguration.java    | 16 +++++--
 .../dapr/DaprConfigurationOptionsProxy.java        |  6 ++-
 .../apache/camel/component/dapr/DaprConstants.java |  2 +-
 .../camel/component/dapr/DaprExchangeHeaders.java  |  4 +-
 .../dapr/consumer/DaprConfigurationConsumer.java   |  2 +-
 .../dapr/operations/DaprConfigurationHandler.java  |  4 +-
 .../consumer/DaprConfigurationConsumerTest.java    |  3 +-
 .../dapr/operations/DaprConfigurationTest.java     |  5 +-
 .../org/apache/camel/spi/GroovyScriptCompiler.java |  8 ++--
 .../camel/main/DefaultConfigurationProperties.java |  9 ++--
 .../scan/DefaultPackageScanResourceResolver.java   |  4 +-
 .../component/dsl/DaprComponentBuilderFactory.java |  7 ++-
 .../endpoint/dsl/DaprEndpointBuilderFactory.java   | 56 ++--------------------
 17 files changed, 52 insertions(+), 112 deletions(-)

diff --git 
a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/dapr.json
 
b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/dapr.json
index 001cdd9244a..d58fd9e6d26 100644
--- 
a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/dapr.json
+++ 
b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/dapr.json
@@ -24,7 +24,7 @@
     "remote": true
   },
   "componentProperties": {
-    "configKeys": { "index": 0, "kind": "property", "displayName": "Config 
Keys", "group": "common", "label": "common", "required": false, "type": 
"array", "javaType": "java.util.List<java.lang.String>", "deprecated": false, 
"autowired": false, "secret": false, "configurationClass": 
"org.apache.camel.component.dapr.DaprConfiguration", "configurationField": 
"configuration", "description": "List of keys for configuration operation" },
+    "configKeys": { "index": 0, "kind": "property", "displayName": "Config 
Keys", "group": "common", "label": "common", "required": false, "type": 
"string", "javaType": "java.lang.String", "deprecated": false, "autowired": 
false, "secret": false, "configurationClass": 
"org.apache.camel.component.dapr.DaprConfiguration", "configurationField": 
"configuration", "description": "List of keys for configuration operation" },
     "configStore": { "index": 1, "kind": "property", "displayName": "Config 
Store", "group": "common", "label": "common", "required": false, "type": 
"string", "javaType": "java.lang.String", "deprecated": false, "autowired": 
false, "secret": false, "configurationClass": 
"org.apache.camel.component.dapr.DaprConfiguration", "configurationField": 
"configuration", "description": "The name of the Dapr configuration store to 
interact with, defined in statestore.yaml config" },
     "configuration": { "index": 2, "kind": "property", "displayName": 
"Configuration", "group": "common", "label": "", "required": false, "type": 
"object", "javaType": "org.apache.camel.component.dapr.DaprConfiguration", 
"deprecated": false, "autowired": false, "secret": false, "description": "The 
component configurations" },
     "contentType": { "index": 3, "kind": "property", "displayName": "Content 
Type", "group": "common", "label": "common", "required": false, "type": 
"string", "javaType": "java.lang.String", "deprecated": false, "autowired": 
false, "secret": false, "configurationClass": 
"org.apache.camel.component.dapr.DaprConfiguration", "configurationField": 
"configuration", "description": "The contentType for the Pub\/Sub component to 
use." },
@@ -81,13 +81,13 @@
     "CamelDaprTraceState": { "index": 29, "kind": "header", "displayName": "", 
"group": "consumer", "label": "consumer", "required": false, "javaType": 
"String", "deprecated": false, "deprecationNote": "", "autowired": false, 
"secret": false, "description": "Gets additional vendor-specific trace 
context", "constantName": 
"org.apache.camel.component.dapr.DaprConstants#TRACE_STATE" },
     "CamelDaprBindingName": { "index": 30, "kind": "header", "displayName": 
"", "group": "producer", "label": "producer", "required": false, "javaType": 
"String", "deprecated": false, "deprecationNote": "", "autowired": false, 
"secret": false, "description": "The name of the Dapr binding to invoke", 
"constantName": "org.apache.camel.component.dapr.DaprConstants#BINDING_NAME" },
     "CamelDaprBindingOperation": { "index": 31, "kind": "header", 
"displayName": "", "group": "producer", "label": "producer", "required": false, 
"javaType": "String", "deprecated": false, "deprecationNote": "", "autowired": 
false, "secret": false, "description": "The operation to perform on the 
binding", "constantName": 
"org.apache.camel.component.dapr.DaprConstants#BINDING_OPERATION" },
-    "CamelDaprConfigKeys": { "index": 32, "kind": "header", "displayName": "", 
"group": "producer", "label": "producer", "required": false, "javaType": 
"List<String>", "deprecated": false, "deprecationNote": "", "autowired": false, 
"secret": false, "description": "List of keys for configuration operation", 
"constantName": "org.apache.camel.component.dapr.DaprConstants#CONFIG_KEYS" },
+    "CamelDaprConfigKeys": { "index": 32, "kind": "header", "displayName": "", 
"group": "producer", "label": "producer", "required": false, "javaType": 
"String", "deprecated": false, "deprecationNote": "", "autowired": false, 
"secret": false, "description": "List of keys for configuration operation", 
"constantName": "org.apache.camel.component.dapr.DaprConstants#CONFIG_KEYS" },
     "CamelDaprSubscriptionId": { "index": 33, "kind": "header", "displayName": 
"", "group": "consumer", "label": "consumer", "required": false, "javaType": 
"String", "deprecated": false, "deprecationNote": "", "autowired": false, 
"secret": false, "description": "The id for configuration change subscription", 
"constantName": "org.apache.camel.component.dapr.DaprConstants#SUBSCRIPTION_ID" 
},
     "CamelDaprRawConfigResponse": { "index": 34, "kind": "header", 
"displayName": "", "group": "common", "label": "common", "required": false, 
"javaType": "Map<String, io.dapr.client.domain.ConfigurationItem", 
"deprecated": false, "deprecationNote": "", "autowired": false, "secret": 
false, "description": "The raw configuration update response", "constantName": 
"org.apache.camel.component.dapr.DaprConstants#RAW_CONFIG_RESPONSE" }
   },
   "properties": {
     "operation": { "index": 0, "kind": "path", "displayName": "Operation", 
"group": "producer", "label": "producer", "required": true, "type": "object", 
"javaType": "org.apache.camel.component.dapr.DaprOperation", "enum": [ 
"invokeService", "state" ], "deprecated": false, "deprecationNote": "", 
"autowired": false, "secret": false, "configurationClass": 
"org.apache.camel.component.dapr.DaprConfiguration", "configurationField": 
"configuration", "description": "The Dapr building block opera [...]
-    "configKeys": { "index": 1, "kind": "parameter", "displayName": "Config 
Keys", "group": "common", "label": "common", "required": false, "type": 
"array", "javaType": "java.util.List<java.lang.String>", "deprecated": false, 
"autowired": false, "secret": false, "configurationClass": 
"org.apache.camel.component.dapr.DaprConfiguration", "configurationField": 
"configuration", "description": "List of keys for configuration operation" },
+    "configKeys": { "index": 1, "kind": "parameter", "displayName": "Config 
Keys", "group": "common", "label": "common", "required": false, "type": 
"string", "javaType": "java.lang.String", "deprecated": false, "autowired": 
false, "secret": false, "configurationClass": 
"org.apache.camel.component.dapr.DaprConfiguration", "configurationField": 
"configuration", "description": "List of keys for configuration operation" },
     "configStore": { "index": 2, "kind": "parameter", "displayName": "Config 
Store", "group": "common", "label": "common", "required": false, "type": 
"string", "javaType": "java.lang.String", "deprecated": false, "autowired": 
false, "secret": false, "configurationClass": 
"org.apache.camel.component.dapr.DaprConfiguration", "configurationField": 
"configuration", "description": "The name of the Dapr configuration store to 
interact with, defined in statestore.yaml config" },
     "contentType": { "index": 3, "kind": "parameter", "displayName": "Content 
Type", "group": "common", "label": "common", "required": false, "type": 
"string", "javaType": "java.lang.String", "deprecated": false, "autowired": 
false, "secret": false, "configurationClass": 
"org.apache.camel.component.dapr.DaprConfiguration", "configurationField": 
"configuration", "description": "The contentType for the Pub\/Sub component to 
use." },
     "pubSubName": { "index": 4, "kind": "parameter", "displayName": "Pub Sub 
Name", "group": "common", "label": "common", "required": false, "type": 
"string", "javaType": "java.lang.String", "deprecated": false, "autowired": 
false, "secret": false, "configurationClass": 
"org.apache.camel.component.dapr.DaprConfiguration", "configurationField": 
"configuration", "description": "The name of the Dapr Pub\/Sub component to 
use. This identifies which underlying messaging system Dapr will inter [...]
diff --git 
a/components/camel-dapr/src/generated/java/org/apache/camel/component/dapr/DaprComponentConfigurer.java
 
b/components/camel-dapr/src/generated/java/org/apache/camel/component/dapr/DaprComponentConfigurer.java
index e44296d8749..647d63e4261 100644
--- 
a/components/camel-dapr/src/generated/java/org/apache/camel/component/dapr/DaprComponentConfigurer.java
+++ 
b/components/camel-dapr/src/generated/java/org/apache/camel/component/dapr/DaprComponentConfigurer.java
@@ -40,7 +40,7 @@ public class DaprComponentConfigurer extends 
PropertyConfigurerSupport implement
         case "bridgeErrorHandler": 
target.setBridgeErrorHandler(property(camelContext, boolean.class, value)); 
return true;
         case "concurrency": 
getOrCreateConfiguration(target).setConcurrency(property(camelContext, 
io.dapr.client.domain.StateOptions.Concurrency.class, value)); return true;
         case "configkeys":
-        case "configKeys": 
getOrCreateConfiguration(target).setConfigKeys(property(camelContext, 
java.util.List.class, value)); return true;
+        case "configKeys": 
getOrCreateConfiguration(target).setConfigKeys(property(camelContext, 
java.lang.String.class, value)); return true;
         case "configstore":
         case "configStore": 
getOrCreateConfiguration(target).setConfigStore(property(camelContext, 
java.lang.String.class, value)); return true;
         case "configuration": target.setConfiguration(property(camelContext, 
org.apache.camel.component.dapr.DaprConfiguration.class, value)); return true;
@@ -92,7 +92,7 @@ public class DaprComponentConfigurer extends 
PropertyConfigurerSupport implement
         case "bridgeErrorHandler": return boolean.class;
         case "concurrency": return 
io.dapr.client.domain.StateOptions.Concurrency.class;
         case "configkeys":
-        case "configKeys": return java.util.List.class;
+        case "configKeys": return java.lang.String.class;
         case "configstore":
         case "configStore": return java.lang.String.class;
         case "configuration": return 
org.apache.camel.component.dapr.DaprConfiguration.class;
@@ -173,14 +173,5 @@ public class DaprComponentConfigurer extends 
PropertyConfigurerSupport implement
         default: return null;
         }
     }
-
-    @Override
-    public Object getCollectionValueType(Object target, String name, boolean 
ignoreCase) {
-        switch (ignoreCase ? name.toLowerCase() : name) {
-        case "configkeys":
-        case "configKeys": return java.lang.String.class;
-        default: return null;
-        }
-    }
 }
 
diff --git 
a/components/camel-dapr/src/generated/java/org/apache/camel/component/dapr/DaprEndpointConfigurer.java
 
b/components/camel-dapr/src/generated/java/org/apache/camel/component/dapr/DaprEndpointConfigurer.java
index 27b8953de24..4e685ce9396 100644
--- 
a/components/camel-dapr/src/generated/java/org/apache/camel/component/dapr/DaprEndpointConfigurer.java
+++ 
b/components/camel-dapr/src/generated/java/org/apache/camel/component/dapr/DaprEndpointConfigurer.java
@@ -31,7 +31,7 @@ public class DaprEndpointConfigurer extends 
PropertyConfigurerSupport implements
         case "bridgeErrorHandler": 
target.setBridgeErrorHandler(property(camelContext, boolean.class, value)); 
return true;
         case "concurrency": 
target.getConfiguration().setConcurrency(property(camelContext, 
io.dapr.client.domain.StateOptions.Concurrency.class, value)); return true;
         case "configkeys":
-        case "configKeys": 
target.getConfiguration().setConfigKeys(property(camelContext, 
java.util.List.class, value)); return true;
+        case "configKeys": 
target.getConfiguration().setConfigKeys(property(camelContext, 
java.lang.String.class, value)); return true;
         case "configstore":
         case "configStore": 
target.getConfiguration().setConfigStore(property(camelContext, 
java.lang.String.class, value)); return true;
         case "consistency": 
target.getConfiguration().setConsistency(property(camelContext, 
io.dapr.client.domain.StateOptions.Consistency.class, value)); return true;
@@ -84,7 +84,7 @@ public class DaprEndpointConfigurer extends 
PropertyConfigurerSupport implements
         case "bridgeErrorHandler": return boolean.class;
         case "concurrency": return 
io.dapr.client.domain.StateOptions.Concurrency.class;
         case "configkeys":
-        case "configKeys": return java.util.List.class;
+        case "configKeys": return java.lang.String.class;
         case "configstore":
         case "configStore": return java.lang.String.class;
         case "consistency": return 
io.dapr.client.domain.StateOptions.Consistency.class;
@@ -169,14 +169,5 @@ public class DaprEndpointConfigurer extends 
PropertyConfigurerSupport implements
         default: return null;
         }
     }
-
-    @Override
-    public Object getCollectionValueType(Object target, String name, boolean 
ignoreCase) {
-        switch (ignoreCase ? name.toLowerCase() : name) {
-        case "configkeys":
-        case "configKeys": return java.lang.String.class;
-        default: return null;
-        }
-    }
 }
 
diff --git 
a/components/camel-dapr/src/generated/resources/META-INF/org/apache/camel/component/dapr/dapr.json
 
b/components/camel-dapr/src/generated/resources/META-INF/org/apache/camel/component/dapr/dapr.json
index 001cdd9244a..d58fd9e6d26 100644
--- 
a/components/camel-dapr/src/generated/resources/META-INF/org/apache/camel/component/dapr/dapr.json
+++ 
b/components/camel-dapr/src/generated/resources/META-INF/org/apache/camel/component/dapr/dapr.json
@@ -24,7 +24,7 @@
     "remote": true
   },
   "componentProperties": {
-    "configKeys": { "index": 0, "kind": "property", "displayName": "Config 
Keys", "group": "common", "label": "common", "required": false, "type": 
"array", "javaType": "java.util.List<java.lang.String>", "deprecated": false, 
"autowired": false, "secret": false, "configurationClass": 
"org.apache.camel.component.dapr.DaprConfiguration", "configurationField": 
"configuration", "description": "List of keys for configuration operation" },
+    "configKeys": { "index": 0, "kind": "property", "displayName": "Config 
Keys", "group": "common", "label": "common", "required": false, "type": 
"string", "javaType": "java.lang.String", "deprecated": false, "autowired": 
false, "secret": false, "configurationClass": 
"org.apache.camel.component.dapr.DaprConfiguration", "configurationField": 
"configuration", "description": "List of keys for configuration operation" },
     "configStore": { "index": 1, "kind": "property", "displayName": "Config 
Store", "group": "common", "label": "common", "required": false, "type": 
"string", "javaType": "java.lang.String", "deprecated": false, "autowired": 
false, "secret": false, "configurationClass": 
"org.apache.camel.component.dapr.DaprConfiguration", "configurationField": 
"configuration", "description": "The name of the Dapr configuration store to 
interact with, defined in statestore.yaml config" },
     "configuration": { "index": 2, "kind": "property", "displayName": 
"Configuration", "group": "common", "label": "", "required": false, "type": 
"object", "javaType": "org.apache.camel.component.dapr.DaprConfiguration", 
"deprecated": false, "autowired": false, "secret": false, "description": "The 
component configurations" },
     "contentType": { "index": 3, "kind": "property", "displayName": "Content 
Type", "group": "common", "label": "common", "required": false, "type": 
"string", "javaType": "java.lang.String", "deprecated": false, "autowired": 
false, "secret": false, "configurationClass": 
"org.apache.camel.component.dapr.DaprConfiguration", "configurationField": 
"configuration", "description": "The contentType for the Pub\/Sub component to 
use." },
@@ -81,13 +81,13 @@
     "CamelDaprTraceState": { "index": 29, "kind": "header", "displayName": "", 
"group": "consumer", "label": "consumer", "required": false, "javaType": 
"String", "deprecated": false, "deprecationNote": "", "autowired": false, 
"secret": false, "description": "Gets additional vendor-specific trace 
context", "constantName": 
"org.apache.camel.component.dapr.DaprConstants#TRACE_STATE" },
     "CamelDaprBindingName": { "index": 30, "kind": "header", "displayName": 
"", "group": "producer", "label": "producer", "required": false, "javaType": 
"String", "deprecated": false, "deprecationNote": "", "autowired": false, 
"secret": false, "description": "The name of the Dapr binding to invoke", 
"constantName": "org.apache.camel.component.dapr.DaprConstants#BINDING_NAME" },
     "CamelDaprBindingOperation": { "index": 31, "kind": "header", 
"displayName": "", "group": "producer", "label": "producer", "required": false, 
"javaType": "String", "deprecated": false, "deprecationNote": "", "autowired": 
false, "secret": false, "description": "The operation to perform on the 
binding", "constantName": 
"org.apache.camel.component.dapr.DaprConstants#BINDING_OPERATION" },
-    "CamelDaprConfigKeys": { "index": 32, "kind": "header", "displayName": "", 
"group": "producer", "label": "producer", "required": false, "javaType": 
"List<String>", "deprecated": false, "deprecationNote": "", "autowired": false, 
"secret": false, "description": "List of keys for configuration operation", 
"constantName": "org.apache.camel.component.dapr.DaprConstants#CONFIG_KEYS" },
+    "CamelDaprConfigKeys": { "index": 32, "kind": "header", "displayName": "", 
"group": "producer", "label": "producer", "required": false, "javaType": 
"String", "deprecated": false, "deprecationNote": "", "autowired": false, 
"secret": false, "description": "List of keys for configuration operation", 
"constantName": "org.apache.camel.component.dapr.DaprConstants#CONFIG_KEYS" },
     "CamelDaprSubscriptionId": { "index": 33, "kind": "header", "displayName": 
"", "group": "consumer", "label": "consumer", "required": false, "javaType": 
"String", "deprecated": false, "deprecationNote": "", "autowired": false, 
"secret": false, "description": "The id for configuration change subscription", 
"constantName": "org.apache.camel.component.dapr.DaprConstants#SUBSCRIPTION_ID" 
},
     "CamelDaprRawConfigResponse": { "index": 34, "kind": "header", 
"displayName": "", "group": "common", "label": "common", "required": false, 
"javaType": "Map<String, io.dapr.client.domain.ConfigurationItem", 
"deprecated": false, "deprecationNote": "", "autowired": false, "secret": 
false, "description": "The raw configuration update response", "constantName": 
"org.apache.camel.component.dapr.DaprConstants#RAW_CONFIG_RESPONSE" }
   },
   "properties": {
     "operation": { "index": 0, "kind": "path", "displayName": "Operation", 
"group": "producer", "label": "producer", "required": true, "type": "object", 
"javaType": "org.apache.camel.component.dapr.DaprOperation", "enum": [ 
"invokeService", "state" ], "deprecated": false, "deprecationNote": "", 
"autowired": false, "secret": false, "configurationClass": 
"org.apache.camel.component.dapr.DaprConfiguration", "configurationField": 
"configuration", "description": "The Dapr building block opera [...]
-    "configKeys": { "index": 1, "kind": "parameter", "displayName": "Config 
Keys", "group": "common", "label": "common", "required": false, "type": 
"array", "javaType": "java.util.List<java.lang.String>", "deprecated": false, 
"autowired": false, "secret": false, "configurationClass": 
"org.apache.camel.component.dapr.DaprConfiguration", "configurationField": 
"configuration", "description": "List of keys for configuration operation" },
+    "configKeys": { "index": 1, "kind": "parameter", "displayName": "Config 
Keys", "group": "common", "label": "common", "required": false, "type": 
"string", "javaType": "java.lang.String", "deprecated": false, "autowired": 
false, "secret": false, "configurationClass": 
"org.apache.camel.component.dapr.DaprConfiguration", "configurationField": 
"configuration", "description": "List of keys for configuration operation" },
     "configStore": { "index": 2, "kind": "parameter", "displayName": "Config 
Store", "group": "common", "label": "common", "required": false, "type": 
"string", "javaType": "java.lang.String", "deprecated": false, "autowired": 
false, "secret": false, "configurationClass": 
"org.apache.camel.component.dapr.DaprConfiguration", "configurationField": 
"configuration", "description": "The name of the Dapr configuration store to 
interact with, defined in statestore.yaml config" },
     "contentType": { "index": 3, "kind": "parameter", "displayName": "Content 
Type", "group": "common", "label": "common", "required": false, "type": 
"string", "javaType": "java.lang.String", "deprecated": false, "autowired": 
false, "secret": false, "configurationClass": 
"org.apache.camel.component.dapr.DaprConfiguration", "configurationField": 
"configuration", "description": "The contentType for the Pub\/Sub component to 
use." },
     "pubSubName": { "index": 4, "kind": "parameter", "displayName": "Pub Sub 
Name", "group": "common", "label": "common", "required": false, "type": 
"string", "javaType": "java.lang.String", "deprecated": false, "autowired": 
false, "secret": false, "configurationClass": 
"org.apache.camel.component.dapr.DaprConfiguration", "configurationField": 
"configuration", "description": "The name of the Dapr Pub\/Sub component to 
use. This identifies which underlying messaging system Dapr will inter [...]
diff --git 
a/components/camel-dapr/src/main/java/org/apache/camel/component/dapr/DaprConfiguration.java
 
b/components/camel-dapr/src/main/java/org/apache/camel/component/dapr/DaprConfiguration.java
index 005a70e5b86..3463781e339 100644
--- 
a/components/camel-dapr/src/main/java/org/apache/camel/component/dapr/DaprConfiguration.java
+++ 
b/components/camel-dapr/src/main/java/org/apache/camel/component/dapr/DaprConfiguration.java
@@ -84,7 +84,7 @@ public class DaprConfiguration implements Cloneable {
     @UriParam(label = "producer", description = "The operation to perform on 
the binding")
     private String bindingOperation;
     @UriParam(label = "common", description = "List of keys for configuration 
operation")
-    private List<String> configKeys;
+    private String configKeys;
 
     /**
      * The Dapr <b>building block operation</b> to perform with this component
@@ -335,13 +335,21 @@ public class DaprConfiguration implements Cloneable {
     }
 
     /**
-     * List of <b>keys</b> for configuration operation.
+     * Comma separated list of <b>keys</b> for configuration operation.
      */
-    public List<String> getConfigKeys() {
+    public String getConfigKeys() {
         return configKeys;
     }
 
-    public void setConfigKeys(List<String> configKeys) {
+    public List<String> getConfigKeysAsList() {
+        if (configKeys != null) {
+            return List.of(configKeys.split(","));
+        } else {
+            return null;
+        }
+    }
+
+    public void setConfigKeys(String configKeys) {
         this.configKeys = configKeys;
     }
 
diff --git 
a/components/camel-dapr/src/main/java/org/apache/camel/component/dapr/DaprConfigurationOptionsProxy.java
 
b/components/camel-dapr/src/main/java/org/apache/camel/component/dapr/DaprConfigurationOptionsProxy.java
index 1fe7d5b6085..182e406615b 100644
--- 
a/components/camel-dapr/src/main/java/org/apache/camel/component/dapr/DaprConfigurationOptionsProxy.java
+++ 
b/components/camel-dapr/src/main/java/org/apache/camel/component/dapr/DaprConfigurationOptionsProxy.java
@@ -137,10 +137,14 @@ public class DaprConfigurationOptionsProxy {
         return getOption(DaprExchangeHeaders::getBindingOperationFromHeaders, 
configuration::getBindingOperation, exchange);
     }
 
-    public List<String> getConfigKeys(final Exchange exchange) {
+    public String getConfigKeys(final Exchange exchange) {
         return getOption(DaprExchangeHeaders::getConfigKeysFromHeaders, 
configuration::getConfigKeys, exchange);
     }
 
+    public List<String> getConfigKeysAsList(final Exchange exchange) {
+        return configuration.getConfigKeysAsList();
+    }
+
     private <R> R getOption(final Function<Exchange, R> exchangeFn, final 
Supplier<R> fallbackFn, final Exchange exchange) {
         // we first try to look if our value in exchange otherwise fallback to 
fallbackFn which could be either a function or constant
         return ObjectHelper.isEmpty(exchange) || 
ObjectHelper.isEmpty(exchangeFn.apply(exchange))
diff --git 
a/components/camel-dapr/src/main/java/org/apache/camel/component/dapr/DaprConstants.java
 
b/components/camel-dapr/src/main/java/org/apache/camel/component/dapr/DaprConstants.java
index 5cdcc047f80..4b1c7c5eb6b 100644
--- 
a/components/camel-dapr/src/main/java/org/apache/camel/component/dapr/DaprConstants.java
+++ 
b/components/camel-dapr/src/main/java/org/apache/camel/component/dapr/DaprConstants.java
@@ -122,7 +122,7 @@ public class DaprConstants {
     public static final String BINDING_NAME = HEADER_PREFIX + "BindingName";
     @Metadata(label = "producer", description = "The operation to perform on 
the binding", javaType = "String")
     public static final String BINDING_OPERATION = HEADER_PREFIX + 
"BindingOperation";
-    @Metadata(label = "producer", description = "List of keys for 
configuration operation", javaType = "List<String>")
+    @Metadata(label = "producer", description = "List of keys for 
configuration operation", javaType = "String")
     public static final String CONFIG_KEYS = HEADER_PREFIX + "ConfigKeys";
     @Metadata(label = "consumer", description = "The id for configuration 
change subscription", javaType = "String")
     public static final String SUBSCRIPTION_ID = HEADER_PREFIX + 
"SubscriptionId";
diff --git 
a/components/camel-dapr/src/main/java/org/apache/camel/component/dapr/DaprExchangeHeaders.java
 
b/components/camel-dapr/src/main/java/org/apache/camel/component/dapr/DaprExchangeHeaders.java
index a326eebb4fa..5def06d2037 100644
--- 
a/components/camel-dapr/src/main/java/org/apache/camel/component/dapr/DaprExchangeHeaders.java
+++ 
b/components/camel-dapr/src/main/java/org/apache/camel/component/dapr/DaprExchangeHeaders.java
@@ -128,8 +128,8 @@ public class DaprExchangeHeaders {
     }
 
     @SuppressWarnings("unchecked")
-    public static List<String> getConfigKeysFromHeaders(final Exchange 
exchange) {
-        return getObjectFromHeaders(exchange, DaprConstants.CONFIG_KEYS, 
List.class);
+    public static String getConfigKeysFromHeaders(final Exchange exchange) {
+        return getObjectFromHeaders(exchange, DaprConstants.CONFIG_KEYS, 
String.class);
     }
 
     private static <T> T getObjectFromHeaders(final Exchange exchange, final 
String headerName, final Class<T> classType) {
diff --git 
a/components/camel-dapr/src/main/java/org/apache/camel/component/dapr/consumer/DaprConfigurationConsumer.java
 
b/components/camel-dapr/src/main/java/org/apache/camel/component/dapr/consumer/DaprConfigurationConsumer.java
index 7c522ac976c..237316e6cc7 100644
--- 
a/components/camel-dapr/src/main/java/org/apache/camel/component/dapr/consumer/DaprConfigurationConsumer.java
+++ 
b/components/camel-dapr/src/main/java/org/apache/camel/component/dapr/consumer/DaprConfigurationConsumer.java
@@ -46,7 +46,7 @@ public class DaprConfigurationConsumer extends 
DefaultConsumer {
     public DaprConfigurationConsumer(final DaprEndpoint endpoint, final 
Processor processor) {
         super(endpoint, processor);
         configStore = endpoint.getConfiguration().getConfigStore();
-        configKeys = endpoint.getConfiguration().getConfigKeys();
+        configKeys = endpoint.getConfiguration().getConfigKeysAsList();
         client = endpoint.getClient();
     }
 
diff --git 
a/components/camel-dapr/src/main/java/org/apache/camel/component/dapr/operations/DaprConfigurationHandler.java
 
b/components/camel-dapr/src/main/java/org/apache/camel/component/dapr/operations/DaprConfigurationHandler.java
index 8596e57f154..9fb8e22a1ae 100644
--- 
a/components/camel-dapr/src/main/java/org/apache/camel/component/dapr/operations/DaprConfigurationHandler.java
+++ 
b/components/camel-dapr/src/main/java/org/apache/camel/component/dapr/operations/DaprConfigurationHandler.java
@@ -37,7 +37,7 @@ public class DaprConfigurationHandler implements 
DaprOperationHandler {
     @Override
     public DaprOperationResponse handle(Exchange exchange, DaprClient client) {
         String configStore = 
configurationOptionsProxy.getConfigStore(exchange);
-        List<String> configKeys = 
configurationOptionsProxy.getConfigKeys(exchange);
+        List<String> configKeys = 
configurationOptionsProxy.getConfigKeysAsList(exchange);
         Map<String, String> metadata = 
configurationOptionsProxy.getMetadata(exchange);
 
         GetConfigurationRequest configRequest = new 
GetConfigurationRequest(configStore, configKeys);
@@ -51,7 +51,7 @@ public class DaprConfigurationHandler implements 
DaprOperationHandler {
     @Override
     public void validateConfiguration(Exchange exchange) {
         String configStore = 
configurationOptionsProxy.getConfigStore(exchange);
-        List<String> configKeys = 
configurationOptionsProxy.getConfigKeys(exchange);
+        String configKeys = configurationOptionsProxy.getConfigKeys(exchange);
 
         if (ObjectHelper.isEmpty(configStore) || 
ObjectHelper.isEmpty(configKeys)) {
             throw new IllegalArgumentException("configStore and configKeys are 
mandatory for get configuration operation");
diff --git 
a/components/camel-dapr/src/test/java/org/apache/camel/component/dapr/consumer/DaprConfigurationConsumerTest.java
 
b/components/camel-dapr/src/test/java/org/apache/camel/component/dapr/consumer/DaprConfigurationConsumerTest.java
index 8295a7ae767..544d21b7936 100644
--- 
a/components/camel-dapr/src/test/java/org/apache/camel/component/dapr/consumer/DaprConfigurationConsumerTest.java
+++ 
b/components/camel-dapr/src/test/java/org/apache/camel/component/dapr/consumer/DaprConfigurationConsumerTest.java
@@ -17,7 +17,6 @@
 package org.apache.camel.component.dapr.consumer;
 
 import java.util.HashMap;
-import java.util.List;
 import java.util.Map;
 
 import io.dapr.client.DaprClient;
@@ -63,7 +62,7 @@ public class DaprConfigurationConsumerTest extends 
CamelTestSupport {
     private final ArgumentCaptor<AsyncCallback> callbackCaptor = 
ArgumentCaptor.forClass(AsyncCallback.class);
 
     private DaprConfigurationConsumer consumer;
-    private final List<String> configKeys = List.of("myKey1", "myKey2");
+    private final String configKeys = "myKey1,myKey2";
 
     @BeforeEach
     void beforeEach() throws Exception {
diff --git 
a/components/camel-dapr/src/test/java/org/apache/camel/component/dapr/operations/DaprConfigurationTest.java
 
b/components/camel-dapr/src/test/java/org/apache/camel/component/dapr/operations/DaprConfigurationTest.java
index e5067f1912a..da344606a8d 100644
--- 
a/components/camel-dapr/src/test/java/org/apache/camel/component/dapr/operations/DaprConfigurationTest.java
+++ 
b/components/camel-dapr/src/test/java/org/apache/camel/component/dapr/operations/DaprConfigurationTest.java
@@ -16,7 +16,6 @@
  */
 package org.apache.camel.component.dapr.operations;
 
-import java.util.List;
 import java.util.Map;
 
 import io.dapr.client.DaprClient;
@@ -58,7 +57,7 @@ public class DaprConfigurationTest extends CamelTestSupport {
         DaprConfiguration configuration = new DaprConfiguration();
         configuration.setOperation(DaprOperation.configuration);
         configuration.setSecretStore("myStore");
-        configuration.setConfigKeys(List.of("myKey"));
+        configuration.setConfigKeys("myKey");
         DaprConfigurationOptionsProxy configurationOptionsProxy = new 
DaprConfigurationOptionsProxy(configuration);
 
         final Exchange exchange = new DefaultExchange(context);
@@ -88,7 +87,7 @@ public class DaprConfigurationTest extends CamelTestSupport {
         assertThrows(IllegalArgumentException.class, () -> 
operation.validateConfiguration(exchange));
 
         // case 3: valid configuration
-        configuration.setConfigKeys(List.of("myKey"));
+        configuration.setConfigKeys("myKey");
         assertDoesNotThrow(() -> operation.validateConfiguration(exchange));
     }
 }
diff --git 
a/core/camel-api/src/main/java/org/apache/camel/spi/GroovyScriptCompiler.java 
b/core/camel-api/src/main/java/org/apache/camel/spi/GroovyScriptCompiler.java
index bdc1386b791..c9910dbc164 100644
--- 
a/core/camel-api/src/main/java/org/apache/camel/spi/GroovyScriptCompiler.java
+++ 
b/core/camel-api/src/main/java/org/apache/camel/spi/GroovyScriptCompiler.java
@@ -40,15 +40,13 @@ public interface GroovyScriptCompiler {
 
     /**
      * Whether to preload existing compiled Groovy sources from classpath and 
the {@link CompileStrategy#getWorkDir()},
-     * on startup. This can be enabled to avoid compiling sources that already 
has been compiled during
-     * a build phase.
+     * on startup. This can be enabled to avoid compiling sources that already 
has been compiled during a build phase.
      */
     void setPreloadCompiled(boolean preloadCompiled);
 
     /**
-     * Whether to preload existing compiled Groovy sources from the {@link 
CompileStrategy#getWorkDir()},
-     * on startup. This can be enabled to avoid compiling sources that already 
has been compiled during
-     * a build phase.
+     * Whether to preload existing compiled Groovy sources from the {@link 
CompileStrategy#getWorkDir()}, on startup.
+     * This can be enabled to avoid compiling sources that already has been 
compiled during a build phase.
      */
     boolean isPreloadCompiled();
 
diff --git 
a/core/camel-main/src/main/java/org/apache/camel/main/DefaultConfigurationProperties.java
 
b/core/camel-main/src/main/java/org/apache/camel/main/DefaultConfigurationProperties.java
index 7e9eefadabb..3c4c944e465 100644
--- 
a/core/camel-main/src/main/java/org/apache/camel/main/DefaultConfigurationProperties.java
+++ 
b/core/camel-main/src/main/java/org/apache/camel/main/DefaultConfigurationProperties.java
@@ -1420,8 +1420,8 @@ public abstract class DefaultConfigurationProperties<T> {
     }
 
     /**
-     * Whether to preload existing compiled Groovy sources from the 
compileWorkDir option on startup.
-     * This can be enabled to avoid compiling sources that already has been 
compiled during a build phase.
+     * Whether to preload existing compiled Groovy sources from the 
compileWorkDir option on startup. This can be
+     * enabled to avoid compiling sources that already has been compiled 
during a build phase.
      */
     public void setGroovyPreloadCompiled(boolean groovyPreloadCompiled) {
         this.groovyPreloadCompiled = groovyPreloadCompiled;
@@ -2817,15 +2817,14 @@ public abstract class DefaultConfigurationProperties<T> 
{
     }
 
     /**
-     * Whether to preload existing compiled Groovy sources from the 
compileWorkDir option on startup.
-     * This can be enabled to avoid compiling sources that already has been 
compiled during a build phase.
+     * Whether to preload existing compiled Groovy sources from the 
compileWorkDir option on startup. This can be
+     * enabled to avoid compiling sources that already has been compiled 
during a build phase.
      */
     public T withGroovyPreloadCompiled(boolean groovyPreloadCompiled) {
         this.groovyPreloadCompiled = groovyPreloadCompiled;
         return (T) this;
     }
 
-
     /**
      * Whether to use cloud properties location setting. Default is none.
      */
diff --git 
a/core/camel-support/src/main/java/org/apache/camel/support/scan/DefaultPackageScanResourceResolver.java
 
b/core/camel-support/src/main/java/org/apache/camel/support/scan/DefaultPackageScanResourceResolver.java
index 9e853047405..c47a9a5d0d8 100644
--- 
a/core/camel-support/src/main/java/org/apache/camel/support/scan/DefaultPackageScanResourceResolver.java
+++ 
b/core/camel-support/src/main/java/org/apache/camel/support/scan/DefaultPackageScanResourceResolver.java
@@ -168,8 +168,8 @@ public class DefaultPackageScanResourceResolver extends 
BasePackageScanResolver
                 } else {
                     InputStream stream;
                     if (urlPath.startsWith("http:") || 
urlPath.startsWith("https:")
-                        || urlPath.startsWith("sonicfs:")
-                        || isAcceptableScheme(urlPath)) {
+                            || urlPath.startsWith("sonicfs:")
+                            || isAcceptableScheme(urlPath)) {
                         // load resources using http/https, sonicfs and other 
acceptable scheme
                         // sonic ESB requires to be loaded using a regular 
URLConnection
                         LOG.trace("Loading from jar using url: {}", urlPath);
diff --git 
a/dsl/camel-componentdsl/src/generated/java/org/apache/camel/builder/component/dsl/DaprComponentBuilderFactory.java
 
b/dsl/camel-componentdsl/src/generated/java/org/apache/camel/builder/component/dsl/DaprComponentBuilderFactory.java
index 5aac854a5be..b83c279bca5 100644
--- 
a/dsl/camel-componentdsl/src/generated/java/org/apache/camel/builder/component/dsl/DaprComponentBuilderFactory.java
+++ 
b/dsl/camel-componentdsl/src/generated/java/org/apache/camel/builder/component/dsl/DaprComponentBuilderFactory.java
@@ -53,15 +53,14 @@ public interface DaprComponentBuilderFactory {
         /**
          * List of keys for configuration operation.
          * 
-         * The option is a:
-         * 
&lt;code&gt;java.util.List&amp;lt;java.lang.String&amp;gt;&lt;/code&gt; type.
+         * The option is a: &lt;code&gt;java.lang.String&lt;/code&gt; type.
          * 
          * Group: common
          * 
          * @param configKeys the value to set
          * @return the dsl builder
          */
-        default DaprComponentBuilder 
configKeys(java.util.List<java.lang.String> configKeys) {
+        default DaprComponentBuilder configKeys(java.lang.String configKeys) {
             doSetProperty("configKeys", configKeys);
             return this;
         }
@@ -468,7 +467,7 @@ public interface DaprComponentBuilderFactory {
                 String name,
                 Object value) {
             switch (name) {
-            case "configKeys": getOrCreateConfiguration((DaprComponent) 
component).setConfigKeys((java.util.List) value); return true;
+            case "configKeys": getOrCreateConfiguration((DaprComponent) 
component).setConfigKeys((java.lang.String) value); return true;
             case "configStore": getOrCreateConfiguration((DaprComponent) 
component).setConfigStore((java.lang.String) value); return true;
             case "configuration": ((DaprComponent) 
component).setConfiguration((org.apache.camel.component.dapr.DaprConfiguration) 
value); return true;
             case "contentType": getOrCreateConfiguration((DaprComponent) 
component).setContentType((java.lang.String) value); return true;
diff --git 
a/dsl/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/DaprEndpointBuilderFactory.java
 
b/dsl/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/DaprEndpointBuilderFactory.java
index a17d8efbe43..5b0cb60a3fc 100644
--- 
a/dsl/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/DaprEndpointBuilderFactory.java
+++ 
b/dsl/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/DaprEndpointBuilderFactory.java
@@ -46,23 +46,7 @@ public interface DaprEndpointBuilderFactory {
         /**
          * List of keys for configuration operation.
          * 
-         * The option is a: <code>java.util.List&lt;java.lang.String&gt;</code>
-         * type.
-         * 
-         * Group: common
-         * 
-         * @param configKeys the value to set
-         * @return the dsl builder
-         */
-        default DaprEndpointConsumerBuilder configKeys(List<java.lang.String> 
configKeys) {
-            doSetProperty("configKeys", configKeys);
-            return this;
-        }
-        /**
-         * List of keys for configuration operation.
-         * 
-         * The option will be converted to a
-         * <code>java.util.List&lt;java.lang.String&gt;</code> type.
+         * The option is a: <code>java.lang.String</code> type.
          * 
          * Group: common
          * 
@@ -305,23 +289,7 @@ public interface DaprEndpointBuilderFactory {
         /**
          * List of keys for configuration operation.
          * 
-         * The option is a: <code>java.util.List&lt;java.lang.String&gt;</code>
-         * type.
-         * 
-         * Group: common
-         * 
-         * @param configKeys the value to set
-         * @return the dsl builder
-         */
-        default DaprEndpointProducerBuilder configKeys(List<java.lang.String> 
configKeys) {
-            doSetProperty("configKeys", configKeys);
-            return this;
-        }
-        /**
-         * List of keys for configuration operation.
-         * 
-         * The option will be converted to a
-         * <code>java.util.List&lt;java.lang.String&gt;</code> type.
+         * The option is a: <code>java.lang.String</code> type.
          * 
          * Group: common
          * 
@@ -724,23 +692,7 @@ public interface DaprEndpointBuilderFactory {
         /**
          * List of keys for configuration operation.
          * 
-         * The option is a: <code>java.util.List&lt;java.lang.String&gt;</code>
-         * type.
-         * 
-         * Group: common
-         * 
-         * @param configKeys the value to set
-         * @return the dsl builder
-         */
-        default DaprEndpointBuilder configKeys(List<java.lang.String> 
configKeys) {
-            doSetProperty("configKeys", configKeys);
-            return this;
-        }
-        /**
-         * List of keys for configuration operation.
-         * 
-         * The option will be converted to a
-         * <code>java.util.List&lt;java.lang.String&gt;</code> type.
+         * The option is a: <code>java.lang.String</code> type.
          * 
          * Group: common
          * 
@@ -1300,7 +1252,7 @@ public interface DaprEndpointBuilderFactory {
         /**
          * List of keys for configuration operation.
          * 
-         * The option is a: {@code List<String>} type.
+         * The option is a: {@code String} type.
          * 
          * Group: producer
          * 


Reply via email to