You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by da...@apache.org on 2023/04/10 14:44:19 UTC

[camel-spring-boot] branch camel-spring-boot-3.x updated: Regen

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

davsclaus pushed a commit to branch camel-spring-boot-3.x
in repository https://gitbox.apache.org/repos/asf/camel-spring-boot.git


The following commit(s) were added to refs/heads/camel-spring-boot-3.x by this push:
     new 70fca6dabeb Regen
70fca6dabeb is described below

commit 70fca6dabeb4466a30472acd6b71eae5b1537df1
Author: Claus Ibsen <cl...@gmail.com>
AuthorDate: Mon Apr 10 16:44:08 2023 +0200

    Regen
---
 .../springboot/catalog/components/azure-cosmosdb.json      |  4 ++--
 .../camel/springboot/catalog/components/graphql.json       |  2 +-
 .../apache/camel/springboot/catalog/components/hdfs.json   |  4 ++--
 .../apache/camel/springboot/catalog/components/kudu.json   |  5 ++++-
 .../apache/camel/springboot/catalog/components/plc4x.json  |  2 +-
 .../apache/camel/springboot/catalog/components/pulsar.json |  1 +
 .../apache/camel/springboot/catalog/components/sql.json    |  2 ++
 .../src/main/docs/azure-cosmosdb.json                      |  4 ++--
 .../springboot/CosmosDbComponentConfiguration.java         | 10 ++++------
 .../cosmosdb/springboot/CosmosDbComponentConverter.java    |  2 --
 .../camel-sql-starter/src/main/docs/sql.json               |  6 ++++++
 .../sql/springboot/SqlComponentConfiguration.java          | 14 ++++++++++++++
 .../component/sql/springboot/SqlComponentConverter.java    |  2 ++
 13 files changed, 41 insertions(+), 17 deletions(-)

diff --git a/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/azure-cosmosdb.json b/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/azure-cosmosdb.json
index 4ecd3d428b4..e5741a66ab3 100644
--- a/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/azure-cosmosdb.json
+++ b/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/azure-cosmosdb.json
@@ -44,7 +44,7 @@
     "leaseContainerName": { "kind": "property", "displayName": "Lease Container Name", "group": "consumer", "label": "consumer", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "camel-lease", "configurationClass": "org.apache.camel.component.azure.cosmosdb.CosmosDbConfiguration", "configurationField": "configuration", "description": "Sets the lease container which acts as a state storage and co [...]
     "leaseDatabaseName": { "kind": "property", "displayName": "Lease Database Name", "group": "consumer", "label": "consumer", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.azure.cosmosdb.CosmosDbConfiguration", "configurationField": "configuration", "description": "Sets the lease database where the leaseContainerName will be stored. If it is not specified, t [...]
     "itemId": { "kind": "property", "displayName": "Item Id", "group": "producer", "label": "producer", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.azure.cosmosdb.CosmosDbConfiguration", "configurationField": "configuration", "description": "Sets the itemId in case needed for operation on item like delete, replace" },
-    "itemPartitionKey": { "kind": "property", "displayName": "Item Partition Key", "group": "producer", "label": "producer", "required": false, "type": "object", "javaType": "com.azure.cosmos.models.PartitionKey", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.azure.cosmosdb.CosmosDbConfiguration", "configurationField": "configuration", "description": "Sets partition key. Represents a partition key value in the Azure Cosmos DB  [...]
+    "itemPartitionKey": { "kind": "property", "displayName": "Item Partition Key", "group": "producer", "label": "producer", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.azure.cosmosdb.CosmosDbConfiguration", "configurationField": "configuration", "description": "Sets partition key. Represents a partition key value in the Azure Cosmos DB database service. A  [...]
     "lazyStartProducer": { "kind": "property", "displayName": "Lazy Start Producer", "group": "producer", "label": "producer", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during star [...]
     "operation": { "kind": "property", "displayName": "Operation", "group": "producer", "label": "producer", "required": false, "type": "object", "javaType": "org.apache.camel.component.azure.cosmosdb.CosmosDbOperationsDefinition", "enum": [ "listDatabases", "createDatabase", "queryDatabases", "deleteDatabase", "createContainer", "replaceDatabaseThroughput", "listContainers", "queryContainers", "deleteContainer", "replaceContainerThroughput", "createItem", "upsertItem", "deleteItem", "re [...]
     "query": { "kind": "property", "displayName": "Query", "group": "producer", "label": "producer", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.azure.cosmosdb.CosmosDbConfiguration", "configurationField": "configuration", "description": "An SQL query to execute on a given resources. To learn more about Cosmos SQL API, check this link {link https:\/\/docs.m [...]
@@ -78,7 +78,7 @@
     "exceptionHandler": { "kind": "parameter", "displayName": "Exception Handler", "group": "consumer (advanced)", "label": "consumer,advanced", "required": false, "type": "object", "javaType": "org.apache.camel.spi.ExceptionHandler", "optionalPrefix": "consumer.", "deprecated": false, "autowired": false, "secret": false, "description": "To let the consumer use a custom ExceptionHandler. Notice if the option bridgeErrorHandler is enabled then this option is not in use. By default the con [...]
     "exchangePattern": { "kind": "parameter", "displayName": "Exchange Pattern", "group": "consumer (advanced)", "label": "consumer,advanced", "required": false, "type": "object", "javaType": "org.apache.camel.ExchangePattern", "enum": [ "InOnly", "InOut", "InOptionalOut" ], "deprecated": false, "autowired": false, "secret": false, "description": "Sets the exchange pattern when the consumer creates an exchange." },
     "itemId": { "kind": "parameter", "displayName": "Item Id", "group": "producer", "label": "producer", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.azure.cosmosdb.CosmosDbConfiguration", "configurationField": "configuration", "description": "Sets the itemId in case needed for operation on item like delete, replace" },
-    "itemPartitionKey": { "kind": "parameter", "displayName": "Item Partition Key", "group": "producer", "label": "producer", "required": false, "type": "object", "javaType": "com.azure.cosmos.models.PartitionKey", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.azure.cosmosdb.CosmosDbConfiguration", "configurationField": "configuration", "description": "Sets partition key. Represents a partition key value in the Azure Cosmos DB [...]
+    "itemPartitionKey": { "kind": "parameter", "displayName": "Item Partition Key", "group": "producer", "label": "producer", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.azure.cosmosdb.CosmosDbConfiguration", "configurationField": "configuration", "description": "Sets partition key. Represents a partition key value in the Azure Cosmos DB database service. A [...]
     "operation": { "kind": "parameter", "displayName": "Operation", "group": "producer", "label": "producer", "required": false, "type": "object", "javaType": "org.apache.camel.component.azure.cosmosdb.CosmosDbOperationsDefinition", "enum": [ "listDatabases", "createDatabase", "queryDatabases", "deleteDatabase", "createContainer", "replaceDatabaseThroughput", "listContainers", "queryContainers", "deleteContainer", "replaceContainerThroughput", "createItem", "upsertItem", "deleteItem", "r [...]
     "query": { "kind": "parameter", "displayName": "Query", "group": "producer", "label": "producer", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.azure.cosmosdb.CosmosDbConfiguration", "configurationField": "configuration", "description": "An SQL query to execute on a given resources. To learn more about Cosmos SQL API, check this link {link https:\/\/docs. [...]
     "queryRequestOptions": { "kind": "parameter", "displayName": "Query Request Options", "group": "producer", "label": "producer", "required": false, "type": "object", "javaType": "com.azure.cosmos.models.CosmosQueryRequestOptions", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.azure.cosmosdb.CosmosDbConfiguration", "configurationField": "configuration", "description": "Set additional QueryRequestOptions that can be used with [...]
diff --git a/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/graphql.json b/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/graphql.json
index 642b9520100..9f2823dd4c2 100644
--- a/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/graphql.json
+++ b/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/graphql.json
@@ -19,7 +19,7 @@
     "api": false,
     "consumerOnly": false,
     "producerOnly": true,
-    "lenientProperties": false
+    "lenientProperties": true
   },
   "componentProperties": {
     "lazyStartProducer": { "kind": "property", "displayName": "Lazy Start Producer", "group": "producer", "label": "producer", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during star [...]
diff --git a/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/hdfs.json b/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/hdfs.json
index fe2f577161c..ddad8f85ec9 100644
--- a/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/hdfs.json
+++ b/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/hdfs.json
@@ -43,10 +43,10 @@
     "connectOnStartup": { "kind": "parameter", "displayName": "Connect On Startup", "group": "common", "label": "", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "configurationClass": "org.apache.camel.component.hdfs.HdfsConfiguration", "configurationField": "config", "description": "Whether to connect to the HDFS file system on starting the producer\/consumer. If false then the connection is c [...]
     "fileSystemType": { "kind": "parameter", "displayName": "File System Type", "group": "common", "label": "", "required": false, "type": "object", "javaType": "org.apache.camel.component.hdfs.HdfsFileSystemType", "enum": [ "LOCAL", "HDFS" ], "deprecated": false, "autowired": false, "secret": false, "defaultValue": "HDFS", "configurationClass": "org.apache.camel.component.hdfs.HdfsConfiguration", "configurationField": "config", "description": "Set to LOCAL to not use HDFS but local java [...]
     "fileType": { "kind": "parameter", "displayName": "File Type", "group": "common", "label": "", "required": false, "type": "object", "javaType": "org.apache.camel.component.hdfs.HdfsFileType", "enum": [ "NORMAL_FILE", "SEQUENCE_FILE", "MAP_FILE", "BLOOMMAP_FILE", "ARRAY_FILE" ], "deprecated": false, "autowired": false, "secret": false, "defaultValue": "NORMAL_FILE", "configurationClass": "org.apache.camel.component.hdfs.HdfsConfiguration", "configurationField": "config", "description" [...]
-    "keyType": { "kind": "parameter", "displayName": "Key Type", "group": "common", "label": "", "required": false, "type": "object", "javaType": "org.apache.camel.component.hdfs.WritableType", "enum": [ "NULL", "BOOLEAN", "BYTE", "INT", "FLOAT", "LONG", "DOUBLE", "TEXT", "BYTES" ], "deprecated": false, "autowired": false, "secret": false, "defaultValue": "NULL", "configurationClass": "org.apache.camel.component.hdfs.HdfsConfiguration", "configurationField": "config", "description": "The [...]
+    "keyType": { "kind": "parameter", "displayName": "Key Type", "group": "common", "label": "", "required": false, "type": "object", "javaType": "org.apache.camel.component.hdfs.WritableType", "enum": [ "NULL", "BOOLEAN", "BYTE", "SHORT", "INT", "FLOAT", "LONG", "DOUBLE", "TEXT", "BYTES" ], "deprecated": false, "autowired": false, "secret": false, "defaultValue": "NULL", "configurationClass": "org.apache.camel.component.hdfs.HdfsConfiguration", "configurationField": "config", "descripti [...]
     "namedNodes": { "kind": "parameter", "displayName": "Named Nodes", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.hdfs.HdfsConfiguration", "configurationField": "config", "description": "A comma separated list of named nodes (e.g. srv11.example.com:8020,srv12.example.com:8020)" },
     "owner": { "kind": "parameter", "displayName": "Owner", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.hdfs.HdfsConfiguration", "configurationField": "config", "description": "The file owner must match this owner for the consumer to pickup the file. Otherwise the file is skipped." },
-    "valueType": { "kind": "parameter", "displayName": "Value Type", "group": "common", "label": "", "required": false, "type": "object", "javaType": "org.apache.camel.component.hdfs.WritableType", "enum": [ "NULL", "BOOLEAN", "BYTE", "INT", "FLOAT", "LONG", "DOUBLE", "TEXT", "BYTES" ], "deprecated": false, "autowired": false, "secret": false, "defaultValue": "BYTES", "configurationClass": "org.apache.camel.component.hdfs.HdfsConfiguration", "configurationField": "config", "description": [...]
+    "valueType": { "kind": "parameter", "displayName": "Value Type", "group": "common", "label": "", "required": false, "type": "object", "javaType": "org.apache.camel.component.hdfs.WritableType", "enum": [ "NULL", "BOOLEAN", "BYTE", "SHORT", "INT", "FLOAT", "LONG", "DOUBLE", "TEXT", "BYTES" ], "deprecated": false, "autowired": false, "secret": false, "defaultValue": "BYTES", "configurationClass": "org.apache.camel.component.hdfs.HdfsConfiguration", "configurationField": "config", "desc [...]
     "pattern": { "kind": "parameter", "displayName": "Pattern", "group": "consumer", "label": "consumer", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "*", "configurationClass": "org.apache.camel.component.hdfs.HdfsConfiguration", "configurationField": "config", "description": "The pattern used for scanning the directory" },
     "sendEmptyMessageWhenIdle": { "kind": "parameter", "displayName": "Send Empty Message When Idle", "group": "consumer", "label": "consumer", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "If the polling consumer did not poll any files, you can enable this option to send an empty message (no body) instead." },
     "streamDownload": { "kind": "parameter", "displayName": "Stream Download", "group": "consumer", "label": "consumer", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.hdfs.HdfsConfiguration", "configurationField": "config", "description": "Sets the download method to use when not using a local working directory. If set to true, the remote files [...]
diff --git a/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/kudu.json b/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/kudu.json
index a8643b067d6..020fa1d6efc 100644
--- a/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/kudu.json
+++ b/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/kudu.json
@@ -27,7 +27,10 @@
   },
   "headers": {
     "CamelKuduSchema": { "kind": "header", "displayName": "", "group": "producer", "label": "", "required": false, "javaType": "org.apache.kudu.Schema", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "The schema", "constantName": "org.apache.camel.component.kudu.KuduConstants#CAMEL_KUDU_SCHEMA" },
-    "CamelKuduTableOptions": { "kind": "header", "displayName": "", "group": "producer", "label": "", "required": false, "javaType": "org.apache.kudu.client.CreateTableOptions", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "The create table options", "constantName": "org.apache.camel.component.kudu.KuduConstants#CAMEL_KUDU_TABLE_OPTIONS" }
+    "CamelKuduTableOptions": { "kind": "header", "displayName": "", "group": "producer", "label": "", "required": false, "javaType": "org.apache.kudu.client.CreateTableOptions", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "The create table options", "constantName": "org.apache.camel.component.kudu.KuduConstants#CAMEL_KUDU_TABLE_OPTIONS" },
+    "CamelKuduScanColumnNames": { "kind": "header", "displayName": "", "group": "producer", "label": "", "required": false, "javaType": "java.util.List<String>", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "The projected column names for scan operation", "constantName": "org.apache.camel.component.kudu.KuduConstants#CAMEL_KUDU_SCAN_COLUMN_NAMES" },
+    "CamelKuduScanPredicate": { "kind": "header", "displayName": "", "group": "producer", "label": "", "required": false, "javaType": "org.apache.kudu.client.KuduPredicate", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "The predicate for scan operation", "constantName": "org.apache.camel.component.kudu.KuduConstants#CAMEL_KUDU_SCAN_PREDICATE" },
+    "CamelKuduScanLimit": { "kind": "header", "displayName": "", "group": "producer", "label": "", "required": false, "javaType": "long", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "The limit on the number of rows for scan operation", "constantName": "org.apache.camel.component.kudu.KuduConstants#CAMEL_KUDU_SCAN_LIMIT" }
   },
   "properties": {
     "host": { "kind": "path", "displayName": "Host", "group": "common", "label": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "Host of the server to connect to" },
diff --git a/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/plc4x.json b/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/plc4x.json
index eb3cdb131f2..4791a9d6f32 100644
--- a/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/plc4x.json
+++ b/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/plc4x.json
@@ -29,8 +29,8 @@
   "properties": {
     "driver": { "kind": "path", "displayName": "Driver", "group": "common", "label": "", "required": true, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "PLC4X connection string for the connection to the target" },
     "autoReconnect": { "kind": "parameter", "displayName": "Auto Reconnect", "group": "common", "label": "", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "defaultValue": false, "description": "Whether to reconnect when no connection is present upon doing a request" },
-    "tags": { "kind": "parameter", "displayName": "Tags", "group": "common", "label": "", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "The tags to read as Map containing the tag name associated to its query" },
     "period": { "kind": "parameter", "displayName": "Period", "group": "consumer", "label": "consumer", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "Interval on which the Trigger should be checked" },
+    "tags": { "kind": "parameter", "displayName": "Tags", "group": "consumer", "label": "consumer", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.String>", "prefix": "tag.", "multiValue": true, "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "Tags as key\/values from the Map to use in query" },
     "trigger": { "kind": "parameter", "displayName": "Trigger", "group": "consumer", "label": "consumer", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "Query to a trigger. On a rising edge of the trigger, the tags will be read once" },
     "bridgeErrorHandler": { "kind": "parameter", "displayName": "Bridge Error Handler", "group": "consumer (advanced)", "label": "consumer,advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now [...]
     "exceptionHandler": { "kind": "parameter", "displayName": "Exception Handler", "group": "consumer (advanced)", "label": "consumer,advanced", "required": false, "type": "object", "javaType": "org.apache.camel.spi.ExceptionHandler", "optionalPrefix": "consumer.", "deprecated": false, "autowired": false, "secret": false, "description": "To let the consumer use a custom ExceptionHandler. Notice if the option bridgeErrorHandler is enabled then this option is not in use. By default the con [...]
diff --git a/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/pulsar.json b/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/pulsar.json
index d3a107fd362..4ffc5acfe3c 100644
--- a/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/pulsar.json
+++ b/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/pulsar.json
@@ -81,6 +81,7 @@
     "CamelPulsarProducerMessageKey": { "kind": "header", "displayName": "", "group": "producer", "label": "producer", "required": false, "javaType": "String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "The key of the message for routing policy.", "constantName": "org.apache.camel.component.pulsar.utils.message.PulsarMessageHeaders#KEY_OUT" },
     "CamelPulsarProducerMessageProperties": { "kind": "header", "displayName": "", "group": "producer", "label": "producer", "required": false, "javaType": "Map<String, String>", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "The properties of the message to add.", "constantName": "org.apache.camel.component.pulsar.utils.message.PulsarMessageHeaders#PROPERTIES_OUT" },
     "CamelPulsarProducerMessageEventTime": { "kind": "header", "displayName": "", "group": "producer", "label": "producer", "required": false, "javaType": "Long", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "The event time of the message message.", "constantName": "org.apache.camel.component.pulsar.utils.message.PulsarMessageHeaders#EVENT_TIME_OUT" },
+    "CamelPulsarProducerMessageDeliverAt": { "kind": "header", "displayName": "", "group": "producer", "label": "producer", "required": false, "javaType": "Long", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "Deliver the message only at or after the specified absolute timestamp. The timestamp is milliseconds and based on UTC (eg: System.currentTimeMillis) Note: messages are only delivered with delay when a consumer is consuming through a [...]
     "CamelPulsarRedeliveryCount": { "kind": "header", "displayName": "", "group": "consumer", "label": "consumer", "required": false, "javaType": "int", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "The message redelivery count, redelivery count maintain in pulsar broker.", "constantName": "org.apache.camel.component.pulsar.utils.message.PulsarMessageHeaders#PULSAR_REDELIVERY_COUNT" }
   },
   "properties": {
diff --git a/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/sql.json b/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/sql.json
index b755b026fea..ab4c562b051 100644
--- a/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/sql.json
+++ b/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/sql.json
@@ -26,6 +26,7 @@
     "bridgeErrorHandler": { "kind": "property", "displayName": "Bridge Error Handler", "group": "consumer", "label": "consumer", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a me [...]
     "lazyStartProducer": { "kind": "property", "displayName": "Lazy Start Producer", "group": "producer", "label": "producer", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during star [...]
     "autowiredEnabled": { "kind": "property", "displayName": "Autowired Enabled", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "description": "Whether autowiring is enabled. This is used for automatic autowiring options (the option must be marked as autowired) by looking up in the registry to find if there is a single instance of matching type, which t [...]
+    "rowMapperFactory": { "kind": "property", "displayName": "Row Mapper Factory", "group": "advanced", "label": "advanced", "required": false, "type": "object", "javaType": "org.apache.camel.component.sql.RowMapperFactory", "deprecated": false, "autowired": true, "secret": false, "description": "Factory for creating RowMapper" },
     "usePlaceholder": { "kind": "property", "displayName": "Use Placeholder", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "description": "Sets whether to use placeholder and replace all placeholder characters with sign in the SQL queries. This option is default true" }
   },
   "headers": {
@@ -69,6 +70,7 @@
     "parametersCount": { "kind": "parameter", "displayName": "Parameters Count", "group": "advanced", "label": "advanced", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "description": "If set greater than zero, then Camel will use this count value of parameters to replace instead of querying via JDBC metadata API. This is useful if the JDBC vendor could not return correct parameters count, then user may override instead." },
     "placeholder": { "kind": "parameter", "displayName": "Placeholder", "group": "advanced", "label": "advanced", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "#", "description": "Specifies a character that will be replaced to in SQL query. Notice, that it is simple String.replaceAll() operation and no SQL parsing is involved (quoted strings will also change)." },
     "prepareStatementStrategy": { "kind": "parameter", "displayName": "Prepare Statement Strategy", "group": "advanced", "label": "advanced", "required": false, "type": "object", "javaType": "org.apache.camel.component.sql.SqlPrepareStatementStrategy", "deprecated": false, "autowired": false, "secret": false, "description": "Allows to plugin to use a custom org.apache.camel.component.sql.SqlPrepareStatementStrategy to control preparation of the query and prepared statement." },
+    "rowMapperFactory": { "kind": "parameter", "displayName": "Row Mapper Factory", "group": "advanced", "label": "advanced", "required": false, "type": "object", "javaType": "org.apache.camel.component.sql.RowMapperFactory", "deprecated": false, "autowired": false, "secret": false, "description": "Factory for creating RowMapper" },
     "templateOptions": { "kind": "parameter", "displayName": "Template Options", "group": "advanced", "label": "advanced", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "template.", "multiValue": true, "deprecated": false, "autowired": false, "secret": false, "description": "Configures the Spring JdbcTemplate with the key\/values from the Map" },
     "usePlaceholder": { "kind": "parameter", "displayName": "Use Placeholder", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "description": "Sets whether to use placeholder and replace all placeholder characters with sign in the SQL queries." },
     "backoffErrorThreshold": { "kind": "parameter", "displayName": "Backoff Error Threshold", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "description": "The number of subsequent error polls (failed due some error) that should happen before the backoffMultipler should kick-in." },
diff --git a/components-starter/camel-azure-cosmosdb-starter/src/main/docs/azure-cosmosdb.json b/components-starter/camel-azure-cosmosdb-starter/src/main/docs/azure-cosmosdb.json
index 513a9c1d946..cfbc847abb6 100644
--- a/components-starter/camel-azure-cosmosdb-starter/src/main/docs/azure-cosmosdb.json
+++ b/components-starter/camel-azure-cosmosdb-starter/src/main/docs/azure-cosmosdb.json
@@ -143,8 +143,8 @@
     },
     {
       "name": "camel.component.azure-cosmosdb.item-partition-key",
-      "type": "com.azure.cosmos.models.PartitionKey",
-      "description": "Sets partition key. Represents a partition key value in the Azure Cosmos DB database service. A partition key identifies the partition where the item is stored in. The option is a com.azure.cosmos.models.PartitionKey type.",
+      "type": "java.lang.String",
+      "description": "Sets partition key. Represents a partition key value in the Azure Cosmos DB database service. A partition key identifies the partition where the item is stored in.",
       "sourceType": "org.apache.camel.component.azure.cosmosdb.springboot.CosmosDbComponentConfiguration"
     },
     {
diff --git a/components-starter/camel-azure-cosmosdb-starter/src/main/java/org/apache/camel/component/azure/cosmosdb/springboot/CosmosDbComponentConfiguration.java b/components-starter/camel-azure-cosmosdb-starter/src/main/java/org/apache/camel/component/azure/cosmosdb/springboot/CosmosDbComponentConfiguration.java
index 21c540c52d8..6d51ea6e828 100644
--- a/components-starter/camel-azure-cosmosdb-starter/src/main/java/org/apache/camel/component/azure/cosmosdb/springboot/CosmosDbComponentConfiguration.java
+++ b/components-starter/camel-azure-cosmosdb-starter/src/main/java/org/apache/camel/component/azure/cosmosdb/springboot/CosmosDbComponentConfiguration.java
@@ -21,7 +21,6 @@ import com.azure.cosmos.ConsistencyLevel;
 import com.azure.cosmos.CosmosAsyncClient;
 import com.azure.cosmos.models.ChangeFeedProcessorOptions;
 import com.azure.cosmos.models.CosmosQueryRequestOptions;
-import com.azure.cosmos.models.PartitionKey;
 import com.azure.cosmos.models.ThroughputProperties;
 import org.apache.camel.component.azure.cosmosdb.CosmosDbComponent;
 import org.apache.camel.component.azure.cosmosdb.CosmosDbConfiguration;
@@ -203,10 +202,9 @@ public class CosmosDbComponentConfiguration
     /**
      * Sets partition key. Represents a partition key value in the Azure Cosmos
      * DB database service. A partition key identifies the partition where the
-     * item is stored in. The option is a com.azure.cosmos.models.PartitionKey
-     * type.
+     * item is stored in.
      */
-    private PartitionKey itemPartitionKey;
+    private String itemPartitionKey;
     /**
      * Whether the producer should be started lazy (on the first message). By
      * starting lazy you can use this to allow CamelContext and routes to
@@ -435,11 +433,11 @@ public class CosmosDbComponentConfiguration
         this.itemId = itemId;
     }
 
-    public PartitionKey getItemPartitionKey() {
+    public String getItemPartitionKey() {
         return itemPartitionKey;
     }
 
-    public void setItemPartitionKey(PartitionKey itemPartitionKey) {
+    public void setItemPartitionKey(String itemPartitionKey) {
         this.itemPartitionKey = itemPartitionKey;
     }
 
diff --git a/components-starter/camel-azure-cosmosdb-starter/src/main/java/org/apache/camel/component/azure/cosmosdb/springboot/CosmosDbComponentConverter.java b/components-starter/camel-azure-cosmosdb-starter/src/main/java/org/apache/camel/component/azure/cosmosdb/springboot/CosmosDbComponentConverter.java
index 52e8210d906..5b557f2eb32 100644
--- a/components-starter/camel-azure-cosmosdb-starter/src/main/java/org/apache/camel/component/azure/cosmosdb/springboot/CosmosDbComponentConverter.java
+++ b/components-starter/camel-azure-cosmosdb-starter/src/main/java/org/apache/camel/component/azure/cosmosdb/springboot/CosmosDbComponentConverter.java
@@ -45,7 +45,6 @@ public class CosmosDbComponentConverter implements GenericConverter {
         answer.add(new ConvertiblePair(String.class, com.azure.cosmos.CosmosAsyncClient.class));
         answer.add(new ConvertiblePair(String.class, com.azure.cosmos.models.ThroughputProperties.class));
         answer.add(new ConvertiblePair(String.class, com.azure.cosmos.models.ChangeFeedProcessorOptions.class));
-        answer.add(new ConvertiblePair(String.class, com.azure.cosmos.models.PartitionKey.class));
         answer.add(new ConvertiblePair(String.class, com.azure.cosmos.models.CosmosQueryRequestOptions.class));
         return answer;
     }
@@ -67,7 +66,6 @@ public class CosmosDbComponentConverter implements GenericConverter {
             case "com.azure.cosmos.CosmosAsyncClient": return applicationContext.getBean(ref, com.azure.cosmos.CosmosAsyncClient.class);
             case "com.azure.cosmos.models.ThroughputProperties": return applicationContext.getBean(ref, com.azure.cosmos.models.ThroughputProperties.class);
             case "com.azure.cosmos.models.ChangeFeedProcessorOptions": return applicationContext.getBean(ref, com.azure.cosmos.models.ChangeFeedProcessorOptions.class);
-            case "com.azure.cosmos.models.PartitionKey": return applicationContext.getBean(ref, com.azure.cosmos.models.PartitionKey.class);
             case "com.azure.cosmos.models.CosmosQueryRequestOptions": return applicationContext.getBean(ref, com.azure.cosmos.models.CosmosQueryRequestOptions.class);
         }
         return null;
diff --git a/components-starter/camel-sql-starter/src/main/docs/sql.json b/components-starter/camel-sql-starter/src/main/docs/sql.json
index 541c00e667a..53c43d8dea2 100644
--- a/components-starter/camel-sql-starter/src/main/docs/sql.json
+++ b/components-starter/camel-sql-starter/src/main/docs/sql.json
@@ -81,6 +81,12 @@
       "sourceType": "org.apache.camel.component.sql.springboot.SqlComponentConfiguration",
       "defaultValue": false
     },
+    {
+      "name": "camel.component.sql.row-mapper-factory",
+      "type": "org.apache.camel.component.sql.RowMapperFactory",
+      "description": "Factory for creating RowMapper. The option is a org.apache.camel.component.sql.RowMapperFactory type.",
+      "sourceType": "org.apache.camel.component.sql.springboot.SqlComponentConfiguration"
+    },
     {
       "name": "camel.component.sql.use-placeholder",
       "type": "java.lang.Boolean",
diff --git a/components-starter/camel-sql-starter/src/main/java/org/apache/camel/component/sql/springboot/SqlComponentConfiguration.java b/components-starter/camel-sql-starter/src/main/java/org/apache/camel/component/sql/springboot/SqlComponentConfiguration.java
index 8ce0140ea74..9e2b7599ce4 100644
--- a/components-starter/camel-sql-starter/src/main/java/org/apache/camel/component/sql/springboot/SqlComponentConfiguration.java
+++ b/components-starter/camel-sql-starter/src/main/java/org/apache/camel/component/sql/springboot/SqlComponentConfiguration.java
@@ -18,6 +18,7 @@ package org.apache.camel.component.sql.springboot;
 
 import javax.annotation.Generated;
 import javax.sql.DataSource;
+import org.apache.camel.component.sql.RowMapperFactory;
 import org.apache.camel.spring.boot.ComponentConfigurationPropertiesCommon;
 import org.springframework.boot.context.properties.ConfigurationProperties;
 
@@ -71,6 +72,11 @@ public class SqlComponentConfiguration
      * etc.
      */
     private Boolean autowiredEnabled = true;
+    /**
+     * Factory for creating RowMapper. The option is a
+     * org.apache.camel.component.sql.RowMapperFactory type.
+     */
+    private RowMapperFactory rowMapperFactory;
     /**
      * Sets whether to use placeholder and replace all placeholder characters
      * with sign in the SQL queries. This option is default true
@@ -109,6 +115,14 @@ public class SqlComponentConfiguration
         this.autowiredEnabled = autowiredEnabled;
     }
 
+    public RowMapperFactory getRowMapperFactory() {
+        return rowMapperFactory;
+    }
+
+    public void setRowMapperFactory(RowMapperFactory rowMapperFactory) {
+        this.rowMapperFactory = rowMapperFactory;
+    }
+
     public Boolean getUsePlaceholder() {
         return usePlaceholder;
     }
diff --git a/components-starter/camel-sql-starter/src/main/java/org/apache/camel/component/sql/springboot/SqlComponentConverter.java b/components-starter/camel-sql-starter/src/main/java/org/apache/camel/component/sql/springboot/SqlComponentConverter.java
index 4206d4d12b9..53e4b007f38 100644
--- a/components-starter/camel-sql-starter/src/main/java/org/apache/camel/component/sql/springboot/SqlComponentConverter.java
+++ b/components-starter/camel-sql-starter/src/main/java/org/apache/camel/component/sql/springboot/SqlComponentConverter.java
@@ -42,6 +42,7 @@ public class SqlComponentConverter implements GenericConverter {
     public Set<ConvertiblePair> getConvertibleTypes() {
         Set<ConvertiblePair> answer = new LinkedHashSet<>();
         answer.add(new ConvertiblePair(String.class, javax.sql.DataSource.class));
+        answer.add(new ConvertiblePair(String.class, org.apache.camel.component.sql.RowMapperFactory.class));
         return answer;
     }
 
@@ -59,6 +60,7 @@ public class SqlComponentConverter implements GenericConverter {
         ref = ref.startsWith("#bean:") ? ref.substring(6) : ref.substring(1);
         switch (targetType.getName()) {
             case "javax.sql.DataSource": return applicationContext.getBean(ref, javax.sql.DataSource.class);
+            case "org.apache.camel.component.sql.RowMapperFactory": return applicationContext.getBean(ref, org.apache.camel.component.sql.RowMapperFactory.class);
         }
         return null;
     }