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

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

commit c520d5ed1bf981d239ee5c0006a85232dc7bee99
Author: Marco Carletti <mcarl...@redhat.com>
AuthorDate: Mon May 5 14:20:48 2025 +0200

    CAMEL-22049: Use Kinesis async client if already set (#17970)
---
 .../camel-aws2-kinesis/src/main/docs/aws2-kinesis-component.adoc    | 6 +++---
 .../apache/camel/component/aws2/kinesis/KclKinesis2Consumer.java    | 4 +++-
 .../org/apache/camel/component/aws2/kinesis/Kinesis2Endpoint.java   | 2 +-
 3 files changed, 7 insertions(+), 5 deletions(-)

diff --git 
a/components/camel-aws/camel-aws2-kinesis/src/main/docs/aws2-kinesis-component.adoc
 
b/components/camel-aws/camel-aws2-kinesis/src/main/docs/aws2-kinesis-component.adoc
index 6d97f573e5a..a031b936f8c 100644
--- 
a/components/camel-aws/camel-aws2-kinesis/src/main/docs/aws2-kinesis-component.adoc
+++ 
b/components/camel-aws/camel-aws2-kinesis/src/main/docs/aws2-kinesis-component.adoc
@@ -95,7 +95,7 @@ You have the possibility of avoiding the usage of explicit 
static credentials by
 
 The order of evaluation for Default Credentials Provider is the following:
 
-- Java system properties - `aws.accessKeyId` and `aws.secretKey`.
+- Java system properties - `aws.accessKeyId` and `aws.secretAccessKey`.
 - Environment variables - `AWS_ACCESS_KEY_ID` and `AWS_SECRET_ACCESS_KEY`.
 - Web Identity Token from AWS STS.
 - The shared credentials and config files.
@@ -131,11 +131,11 @@ can be specified when calling createClient(...).
 
 The component supports also the KCL (Kinesis Client Library) for consuming 
from a Kinesis Data Stream.
 
-To enable this feature you'll need to set two different parameter in your 
endpoint:
+To enable this feature you'll need to set three different parameter in your 
endpoint and set the region:
 
 [source,java]
 
--------------------------------------------------------------------------------------------------------------------
-from("aws2-kinesis://mykinesisstream?asyncClient=true&useDefaultCredentialsProvider=true&useKclConsumers=true")
+from("aws2-kinesis://mykinesisstream?asyncClient=true&useDefaultCredentialsProvider=true&useKclConsumers=true&region=myregion")
   .to("log:out?showAll=true");
 
--------------------------------------------------------------------------------------------------------------------
 
diff --git 
a/components/camel-aws/camel-aws2-kinesis/src/main/java/org/apache/camel/component/aws2/kinesis/KclKinesis2Consumer.java
 
b/components/camel-aws/camel-aws2-kinesis/src/main/java/org/apache/camel/component/aws2/kinesis/KclKinesis2Consumer.java
index 929cbf40074..3921456c2ff 100644
--- 
a/components/camel-aws/camel-aws2-kinesis/src/main/java/org/apache/camel/component/aws2/kinesis/KclKinesis2Consumer.java
+++ 
b/components/camel-aws/camel-aws2-kinesis/src/main/java/org/apache/camel/component/aws2/kinesis/KclKinesis2Consumer.java
@@ -85,7 +85,9 @@ public class KclKinesis2Consumer extends DefaultConsumer {
         LOG.debug("Starting KCL Consumer");
         DynamoDbAsyncClient dynamoDbAsyncClient = null;
         CloudWatchAsyncClient cloudWatchAsyncClient = null;
-        KinesisAsyncClient kinesisAsyncClient = 
getEndpoint().getConfiguration().getAmazonKinesisAsyncClient();
+        KinesisAsyncClient kinesisAsyncClient = getEndpoint().getAsyncClient() 
!= null
+                ? getEndpoint().getAsyncClient()
+                : 
getEndpoint().getConfiguration().getAmazonKinesisAsyncClient();
         Kinesis2Configuration configuration = getEndpoint().getConfiguration();
         if 
(ObjectHelper.isEmpty(getEndpoint().getConfiguration().getDynamoDbAsyncClient()))
 {
             DynamoDbAsyncClientBuilder clientBuilder = 
DynamoDbAsyncClient.builder();
diff --git 
a/components/camel-aws/camel-aws2-kinesis/src/main/java/org/apache/camel/component/aws2/kinesis/Kinesis2Endpoint.java
 
b/components/camel-aws/camel-aws2-kinesis/src/main/java/org/apache/camel/component/aws2/kinesis/Kinesis2Endpoint.java
index b1a293b6bb1..f7a9e1aa7a3 100644
--- 
a/components/camel-aws/camel-aws2-kinesis/src/main/java/org/apache/camel/component/aws2/kinesis/Kinesis2Endpoint.java
+++ 
b/components/camel-aws/camel-aws2-kinesis/src/main/java/org/apache/camel/component/aws2/kinesis/Kinesis2Endpoint.java
@@ -64,7 +64,7 @@ public class Kinesis2Endpoint extends ScheduledPollEndpoint 
implements EndpointS
         }
 
         if (configuration.isAsyncClient() &&
-                Objects.isNull(configuration.getAmazonKinesisClient())) {
+                Objects.isNull(configuration.getAmazonKinesisAsyncClient())) {
             kinesisAsyncClient = kinesisConnection.getAsyncClient(this);
         } else {
             kinesisClient = kinesisConnection.getClient(this);

Reply via email to