This is an automated email from the ASF dual-hosted git repository.
acosentino pushed a commit to branch camel-4.10.x
in repository https://gitbox.apache.org/repos/asf/camel.git
The following commit(s) were added to refs/heads/camel-4.10.x by this push:
new f7ec73e327f CAMEL-22049: Use Kinesis async client if already set
(#17970) (#17971)
f7ec73e327f is described below
commit f7ec73e327f381cba242a855b79042cfc8553f67
Author: Andrea Cosentino <[email protected]>
AuthorDate: Mon May 5 14:37:31 2025 +0200
CAMEL-22049: Use Kinesis async client if already set (#17970) (#17971)
Co-authored-by: Marco Carletti <[email protected]>
---
.../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®ion=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);