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

nfilotto pushed a commit to branch CAMEL-17792/doc-message-headers
in repository https://gitbox.apache.org/repos/asf/camel.git

commit 7d6edcf36412691c03749e9c68653a8fa2f9f360
Author: Nicolas Filotto <[email protected]>
AuthorDate: Wed Mar 16 12:18:36 2022 +0100

    CAMEL-17792: Add doc about the message headers of camel-aws2-msk
---
 .../apache/camel/component/aws2/msk/aws2-msk.json  |  9 +++++++++
 .../src/main/docs/aws2-msk-component.adoc          | 23 +++-------------------
 .../camel/component/aws2/msk/MSK2Constants.java    | 10 ++++++++++
 .../camel/component/aws2/msk/MSK2Endpoint.java     |  3 ++-
 4 files changed, 24 insertions(+), 21 deletions(-)

diff --git 
a/components/camel-aws/camel-aws2-msk/src/generated/resources/org/apache/camel/component/aws2/msk/aws2-msk.json
 
b/components/camel-aws/camel-aws2-msk/src/generated/resources/org/apache/camel/component/aws2/msk/aws2-msk.json
index c3dd34b..4ef48a5 100644
--- 
a/components/camel-aws/camel-aws2-msk/src/generated/resources/org/apache/camel/component/aws2/msk/aws2-msk.json
+++ 
b/components/camel-aws/camel-aws2-msk/src/generated/resources/org/apache/camel/component/aws2/msk/aws2-msk.json
@@ -39,6 +39,15 @@
     "accessKey": { "kind": "property", "displayName": "Access Key", "group": 
"security", "label": "security", "required": false, "type": "string", 
"javaType": "java.lang.String", "deprecated": false, "autowired": false, 
"secret": true, "configurationClass": 
"org.apache.camel.component.aws2.msk.MSK2Configuration", "configurationField": 
"configuration", "description": "Amazon AWS Access Key" },
     "secretKey": { "kind": "property", "displayName": "Secret Key", "group": 
"security", "label": "security", "required": false, "type": "string", 
"javaType": "java.lang.String", "deprecated": false, "autowired": false, 
"secret": true, "configurationClass": 
"org.apache.camel.component.aws2.msk.MSK2Configuration", "configurationField": 
"configuration", "description": "Amazon AWS Secret Key" }
   },
+  "headers": {
+    "CamelAwsMSKOperation": { "kind": "header", "displayName": "", "group": 
"producer", "label": "", "required": false, "javaType": "String", "deprecated": 
false, "deprecationNote": "", "autowired": false, "secret": false, 
"description": "The operation we want to perform" },
+    "CamelAwsMSKClusterFilter": { "kind": "header", "displayName": "", 
"group": "producer", "label": "", "required": false, "javaType": "String", 
"deprecated": false, "deprecationNote": "", "autowired": false, "secret": 
false, "description": "The cluster name filter for list operation" },
+    "CamelAwsMSKClusterName": { "kind": "header", "displayName": "", "group": 
"producer", "label": "", "required": false, "javaType": "String", "deprecated": 
false, "deprecationNote": "", "autowired": false, "secret": false, 
"description": "The cluster name for list and create operation" },
+    "CamelAwsMSKClusterArn": { "kind": "header", "displayName": "", "group": 
"producer", "label": "", "required": false, "javaType": "String", "deprecated": 
false, "deprecationNote": "", "autowired": false, "secret": false, 
"description": "The cluster arn for delete operation" },
+    "CamelAwsMSKClusterKafkaVersion": { "kind": "header", "displayName": "", 
"group": "producer", "label": "", "required": false, "javaType": "String", 
"deprecated": false, "deprecationNote": "", "autowired": false, "secret": 
false, "description": "The Kafka for the cluster during create operation" },
+    "CamelAwsMSKBrokerNodesNumber": { "kind": "header", "displayName": "", 
"group": "producer", "label": "", "required": false, "javaType": "Integer", 
"deprecated": false, "deprecationNote": "", "autowired": false, "secret": 
false, "description": "The number of nodes for the cluster during create 
operation" },
+    "CamelAwsMSKBrokerNodesGroupInfo": { "kind": "header", "displayName": "", 
"group": "producer", "label": "", "required": false, "javaType": 
"software.amazon.awssdk.services.kafka.model.BrokerNodeGroupInfo", 
"deprecated": false, "deprecationNote": "", "autowired": false, "secret": 
false, "description": "The Broker nodes group info to provide during the create 
operation" }
+  },
   "properties": {
     "label": { "kind": "path", "displayName": "Label", "group": "producer", 
"label": "", "required": true, "type": "string", "javaType": 
"java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": 
false, "secret": false, "configurationClass": 
"org.apache.camel.component.aws2.msk.MSK2Configuration", "configurationField": 
"configuration", "description": "Logical name" },
     "lazyStartProducer": { "kind": "parameter", "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 sta [...]
diff --git 
a/components/camel-aws/camel-aws2-msk/src/main/docs/aws2-msk-component.adoc 
b/components/camel-aws/camel-aws2-msk/src/main/docs/aws2-msk-component.adoc
index 86d1f7b..8b9b46e 100644
--- a/components/camel-aws/camel-aws2-msk/src/main/docs/aws2-msk-component.adoc
+++ b/components/camel-aws/camel-aws2-msk/src/main/docs/aws2-msk-component.adoc
@@ -67,26 +67,9 @@ You have the possibility of avoiding the usage of explicit 
static credentials, b
 
 For more information about this you can look at 
https://docs.aws.amazon.com/sdk-for-java/latest/developer-guide/credentials.html[AWS
 credentials documentation]
 
-=== Message headers evaluated by the MSK producer
-
-[width="100%",cols="10%,10%,80%",options="header",]
-|=======================================================================
-|Header |Type |Description
-
-|`CamelAwsMSKOperation` |`String` |The operation to perform
-
-|`CamelAwsMSKClusterFilter` |`String` |The cluster name filter for list 
operation
-
-|`CamelAwsMSKClusterName` |`String` |The cluster name for list and create 
operation
-
-|`CamelAwsMSKClusterArn` |`String` |The cluster arn for delete operation
-
-|`CamelAwsMSKClusterKafkaVersion` |`String` | The Kafka for the cluster during 
create operation
-
-|`CamelAwsMSKBrokerNodesNumber` |`Integer`| The number of nodes for the 
cluster during create operation
-
-|`CamelAwsMSKBrokerNodesGroupInfo` 
|`com.amazonaws.services.kafka.model.BrokerNodeGroupInfo`| The Broker nodes 
group info to provide during the create operation
-|=======================================================================
+// component headers: START
+include::partial$component-endpoint-headers.adoc[]
+// component headers: END
 
 === MSK Producer operations
 
diff --git 
a/components/camel-aws/camel-aws2-msk/src/main/java/org/apache/camel/component/aws2/msk/MSK2Constants.java
 
b/components/camel-aws/camel-aws2-msk/src/main/java/org/apache/camel/component/aws2/msk/MSK2Constants.java
index fddf2a2..ba72ec6 100644
--- 
a/components/camel-aws/camel-aws2-msk/src/main/java/org/apache/camel/component/aws2/msk/MSK2Constants.java
+++ 
b/components/camel-aws/camel-aws2-msk/src/main/java/org/apache/camel/component/aws2/msk/MSK2Constants.java
@@ -16,15 +16,25 @@
  */
 package org.apache.camel.component.aws2.msk;
 
+import org.apache.camel.spi.Metadata;
+
 /**
  * Constants used in Camel AWS MSK module SDK v2
  */
 public interface MSK2Constants {
+    @Metadata(description = "The operation we want to perform", javaType = 
"String")
     String OPERATION = "CamelAwsMSKOperation";
+    @Metadata(description = "The cluster name filter for list operation", 
javaType = "String")
     String CLUSTERS_FILTER = "CamelAwsMSKClusterFilter";
+    @Metadata(description = "The cluster name for list and create operation", 
javaType = "String")
     String CLUSTER_NAME = "CamelAwsMSKClusterName";
+    @Metadata(description = "The cluster arn for delete operation", javaType = 
"String")
     String CLUSTER_ARN = "CamelAwsMSKClusterArn";
+    @Metadata(description = "The Kafka for the cluster during create 
operation", javaType = "String")
     String CLUSTER_KAFKA_VERSION = "CamelAwsMSKClusterKafkaVersion";
+    @Metadata(description = "The number of nodes for the cluster during create 
operation", javaType = "Integer")
     String BROKER_NODES_NUMBER = "CamelAwsMSKBrokerNodesNumber";
+    @Metadata(description = "The Broker nodes group info to provide during the 
create operation",
+              javaType = 
"software.amazon.awssdk.services.kafka.model.BrokerNodeGroupInfo")
     String BROKER_NODES_GROUP_INFO = "CamelAwsMSKBrokerNodesGroupInfo";
 }
diff --git 
a/components/camel-aws/camel-aws2-msk/src/main/java/org/apache/camel/component/aws2/msk/MSK2Endpoint.java
 
b/components/camel-aws/camel-aws2-msk/src/main/java/org/apache/camel/component/aws2/msk/MSK2Endpoint.java
index ca45fee..61285be 100644
--- 
a/components/camel-aws/camel-aws2-msk/src/main/java/org/apache/camel/component/aws2/msk/MSK2Endpoint.java
+++ 
b/components/camel-aws/camel-aws2-msk/src/main/java/org/apache/camel/component/aws2/msk/MSK2Endpoint.java
@@ -32,7 +32,8 @@ import software.amazon.awssdk.services.kafka.KafkaClient;
  * Manage AWS MSK instances using AWS SDK version 2.x.
  */
 @UriEndpoint(firstVersion = "3.1.0", scheme = "aws2-msk", title = "AWS Managed 
Streaming for Apache Kafka (MSK)",
-             syntax = "aws2-msk:label", producerOnly = true, category = { 
Category.CLOUD, Category.MANAGEMENT })
+             syntax = "aws2-msk:label", producerOnly = true, category = { 
Category.CLOUD, Category.MANAGEMENT },
+             headersClass = MSK2Constants.class)
 public class MSK2Endpoint extends ScheduledPollEndpoint {
 
     private KafkaClient mskClient;

Reply via email to