You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by nf...@apache.org on 2022/03/16 19:13:07 UTC
[camel] 18/33: CAMEL-17792: Add doc about the message headers of camel-aws2-kms
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 1ae02d26e26415162dac961fbb8b084cae155f9b
Author: Nicolas Filotto <nf...@talend.com>
AuthorDate: Wed Mar 16 10:58:59 2022 +0100
CAMEL-17792: Add doc about the message headers of camel-aws2-kms
---
.../org/apache/camel/component/aws2/kms/aws2-kms.json | 7 +++++++
.../src/main/docs/aws2-kms-component.adoc | 17 +++--------------
.../apache/camel/component/aws2/kms/KMS2Constants.java | 7 +++++++
.../apache/camel/component/aws2/kms/KMS2Endpoint.java | 3 ++-
4 files changed, 19 insertions(+), 15 deletions(-)
diff --git a/components/camel-aws/camel-aws2-kms/src/generated/resources/org/apache/camel/component/aws2/kms/aws2-kms.json b/components/camel-aws/camel-aws2-kms/src/generated/resources/org/apache/camel/component/aws2/kms/aws2-kms.json
index 92354af..205e93f 100644
--- a/components/camel-aws/camel-aws2-kms/src/generated/resources/org/apache/camel/component/aws2/kms/aws2-kms.json
+++ b/components/camel-aws/camel-aws2-kms/src/generated/resources/org/apache/camel/component/aws2/kms/aws2-kms.json
@@ -39,6 +39,13 @@
"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.kms.KMS2Configuration", "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.kms.KMS2Configuration", "configurationField": "configuration", "description": "Amazon AWS Secret Key" }
},
+ "headers": {
+ "CamelAwsKMSOperation": { "kind": "header", "displayName": "", "group": "producer", "label": "", "required": false, "javaType": "String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "The operation we want to perform" },
+ "CamelAwsKMSLimit": { "kind": "header", "displayName": "", "group": "producer", "label": "", "required": false, "javaType": "Integer", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "The limit number of keys to return while performing a listKeys operation" },
+ "CamelAwsKMSDescription": { "kind": "header", "displayName": "", "group": "producer", "label": "", "required": false, "javaType": "String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "A key description to use while performing a createKey operation" },
+ "CamelAwsKMSKeyId": { "kind": "header", "displayName": "", "group": "producer", "label": "", "required": false, "javaType": "String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "The key Id" },
+ "CamelAwsKMSPendingWindowInDays": { "kind": "header", "displayName": "", "group": "producer", "label": "", "required": false, "javaType": "Integer", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "The waiting period, specified in number of days." }
+ },
"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.kms.KMS2Configuration", "configurationField": "configuration", "description": "Logical name" },
"kmsClient": { "kind": "parameter", "displayName": "Kms Client", "group": "producer", "label": "", "required": false, "type": "object", "javaType": "software.amazon.awssdk.services.kms.KmsClient", "deprecated": false, "deprecationNote": "", "autowired": true, "secret": false, "configurationClass": "org.apache.camel.component.aws2.kms.KMS2Configuration", "configurationField": "configuration", "description": "To use a existing configured AWS KMS as client" },
diff --git a/components/camel-aws/camel-aws2-kms/src/main/docs/aws2-kms-component.adoc b/components/camel-aws/camel-aws2-kms/src/main/docs/aws2-kms-component.adoc
index 1229128..9190926 100644
--- a/components/camel-aws/camel-aws2-kms/src/main/docs/aws2-kms-component.adoc
+++ b/components/camel-aws/camel-aws2-kms/src/main/docs/aws2-kms-component.adoc
@@ -66,20 +66,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 KMS producer
-
-[width="100%",cols="10%,10%,80%",options="header",]
-|=======================================================================
-|Header |Type |Description
-
-|`CamelAwsKMSLimit` |`Integer` |The limit number of keys to return while performing a listKeys operation
-
-|`CamelAwsKMSOperation` |`String` |The operation we want to perform
-
-|`CamelAwsKMSDescription` |`String` |A key description to use while performing a createKey operation
-
-|`CamelAwsKMSKeyId` |`String` |The key Id
-|=======================================================================
+// component headers: START
+include::partial$component-endpoint-headers.adoc[]
+// component headers: END
=== KMS Producer operations
diff --git a/components/camel-aws/camel-aws2-kms/src/main/java/org/apache/camel/component/aws2/kms/KMS2Constants.java b/components/camel-aws/camel-aws2-kms/src/main/java/org/apache/camel/component/aws2/kms/KMS2Constants.java
index 0bd1913..425997c 100644
--- a/components/camel-aws/camel-aws2-kms/src/main/java/org/apache/camel/component/aws2/kms/KMS2Constants.java
+++ b/components/camel-aws/camel-aws2-kms/src/main/java/org/apache/camel/component/aws2/kms/KMS2Constants.java
@@ -16,13 +16,20 @@
*/
package org.apache.camel.component.aws2.kms;
+import org.apache.camel.spi.Metadata;
+
/**
* Constants used in Camel AWS KMS module
*/
public interface KMS2Constants {
+ @Metadata(description = "The operation we want to perform", javaType = "String")
String OPERATION = "CamelAwsKMSOperation";
+ @Metadata(description = "The limit number of keys to return while performing a listKeys operation", javaType = "Integer")
String LIMIT = "CamelAwsKMSLimit";
+ @Metadata(description = "A key description to use while performing a createKey operation", javaType = "String")
String DESCRIPTION = "CamelAwsKMSDescription";
+ @Metadata(description = "The key Id ", javaType = "String")
String KEY_ID = "CamelAwsKMSKeyId";
+ @Metadata(description = "The waiting period, specified in number of days.", javaType = "Integer")
String PENDING_WINDOW_IN_DAYS = "CamelAwsKMSPendingWindowInDays";
}
diff --git a/components/camel-aws/camel-aws2-kms/src/main/java/org/apache/camel/component/aws2/kms/KMS2Endpoint.java b/components/camel-aws/camel-aws2-kms/src/main/java/org/apache/camel/component/aws2/kms/KMS2Endpoint.java
index 5862478..634955c 100644
--- a/components/camel-aws/camel-aws2-kms/src/main/java/org/apache/camel/component/aws2/kms/KMS2Endpoint.java
+++ b/components/camel-aws/camel-aws2-kms/src/main/java/org/apache/camel/component/aws2/kms/KMS2Endpoint.java
@@ -32,7 +32,8 @@ import software.amazon.awssdk.services.kms.KmsClient;
* Manage keys stored in AWS KMS instances using AWS SDK version 2.x.
*/
@UriEndpoint(firstVersion = "3.1.0", scheme = "aws2-kms", title = "AWS Key Management Service (KMS)",
- syntax = "aws2-kms:label", producerOnly = true, category = { Category.CLOUD, Category.MANAGEMENT })
+ syntax = "aws2-kms:label", producerOnly = true, category = { Category.CLOUD, Category.MANAGEMENT },
+ headersClass = KMS2Constants.class)
public class KMS2Endpoint extends ScheduledPollEndpoint {
private KmsClient kmsClient;