This is an automated email from the ASF dual-hosted git repository.
davsclaus pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel.git
The following commit(s) were added to refs/heads/main by this push:
new b1a6bd5c908 CAMEL-18912: Reuse client from consumer (#9086)
b1a6bd5c908 is described below
commit b1a6bd5c908abe178b0626c9a6a1d447e298e84e
Author: Simon Rasmussen <[email protected]>
AuthorDate: Sat Jan 14 18:31:40 2023 +0100
CAMEL-18912: Reuse client from consumer (#9086)
* CAMEL-18912: sqs - use client from consumer
Before this change, autowired clients would fail to be detected.
Also small optimization added by only requesting a single queue when
listing the queues.
* CAMEL-18912: athena - use client from endpoint
* CAMEL-18912: cloudwatch - use client from endpoint
* CAMEL-18912: dynamodb - use client from endpoint
* CAMEL-18912: ec2 - use client from endpoint
* CAMEL-18912: ses - use client from endpoint
* CAMEL-18912: ecs - use client from endpoint
* CAMEL-18912: eks - use client from endpoint
* CAMEL-18912: iam - use client from endpoint
* CAMEL-18912: msk - use client from endpoint
* CAMEL-18912: s3 - use client from endpoint
* CAMEL-18912: sns - use client from endpoint
---
.../aws2/athena/Athena2ClientHealthCheck.java | 21 +---
.../component/aws2/cw/Cw2ClientHealthCheck.java | 7 +-
.../component/aws2/ddb/Ddb2ClientHealthCheck.java | 8 +-
.../ddbstream/Ddb2StreamConsumerHealthCheck.java | 21 +---
.../component/aws2/ec2/AWS2EC2HealthCheck.java | 4 +-
.../component/aws2/ecs/ECS2ClientHealthCheck.java | 6 +-
.../component/aws2/eks/EKS2ClientHealthCheck.java | 7 +-
.../camel/component/aws2/iam/IAM2Endpoint.java | 1 -
.../aws2/iam/{client => }/IAM2HealthCheck.java | 10 +-
.../camel/component/aws2/msk/MSK2HealthCheck.java | 7 +-
.../aws2/s3/AWS2S3ConsumerHealthCheck.java | 18 +---
.../s3/AWS2S3ConsumerHealthCustomClientTest.java | 106 ---------------------
.../camel/component/aws2/ses/Ses2HealthCheck.java | 6 +-
.../camel/component/aws2/sns/Sns2HealthCheck.java | 5 +-
.../aws2/sqs/Sqs2ConsumerHealthCheck.java | 22 +----
15 files changed, 39 insertions(+), 210 deletions(-)
diff --git
a/components/camel-aws/camel-aws2-athena/src/main/java/org/apache/camel/component/aws2/athena/Athena2ClientHealthCheck.java
b/components/camel-aws/camel-aws2-athena/src/main/java/org/apache/camel/component/aws2/athena/Athena2ClientHealthCheck.java
index e1ffc12af37..56437e3eeb0 100644
---
a/components/camel-aws/camel-aws2-athena/src/main/java/org/apache/camel/component/aws2/athena/Athena2ClientHealthCheck.java
+++
b/components/camel-aws/camel-aws2-athena/src/main/java/org/apache/camel/component/aws2/athena/Athena2ClientHealthCheck.java
@@ -22,12 +22,10 @@ import java.util.Map;
import org.apache.camel.health.HealthCheckResultBuilder;
import org.apache.camel.impl.health.AbstractHealthCheck;
import org.apache.camel.util.ObjectHelper;
-import software.amazon.awssdk.auth.credentials.AwsBasicCredentials;
-import software.amazon.awssdk.auth.credentials.StaticCredentialsProvider;
import software.amazon.awssdk.awscore.exception.AwsServiceException;
import software.amazon.awssdk.regions.Region;
import software.amazon.awssdk.services.athena.AthenaClient;
-import software.amazon.awssdk.services.athena.AthenaClientBuilder;
+import software.amazon.awssdk.services.athena.model.ListQueryExecutionsRequest;
public class Athena2ClientHealthCheck extends AbstractHealthCheck {
@@ -56,20 +54,9 @@ public class Athena2ClientHealthCheck extends
AbstractHealthCheck {
return;
}
}
- AthenaClient client;
- if
(Boolean.FALSE.equals(athena2Endpoint.getConfiguration().isUseDefaultCredentialsProvider()))
{
- AwsBasicCredentials cred =
AwsBasicCredentials.create(athena2Endpoint.getConfiguration().getAccessKey(),
- athena2Endpoint.getConfiguration().getSecretKey());
- AthenaClientBuilder clientBuilder = AthenaClient.builder();
- client =
clientBuilder.credentialsProvider(StaticCredentialsProvider.create(cred))
-
.region(Region.of(athena2Endpoint.getConfiguration().getRegion())).build();
- } else if
(ObjectHelper.isNotEmpty(athena2Endpoint.getConfiguration().getAmazonAthenaClient()))
{
- client =
athena2Endpoint.getConfiguration().getAmazonAthenaClient();
- } else {
- AthenaClientBuilder clientBuilder = AthenaClient.builder();
- client =
clientBuilder.region(Region.of(athena2Endpoint.getConfiguration().getRegion())).build();
- }
- client.listQueryExecutions();
+ AthenaClient client = athena2Endpoint.getAthenaClient();
+
+
client.listQueryExecutions(ListQueryExecutionsRequest.builder().maxResults(1).build());
} catch (AwsServiceException e) {
builder.message(e.getMessage());
builder.error(e);
diff --git
a/components/camel-aws/camel-aws2-cw/src/main/java/org/apache/camel/component/aws2/cw/Cw2ClientHealthCheck.java
b/components/camel-aws/camel-aws2-cw/src/main/java/org/apache/camel/component/aws2/cw/Cw2ClientHealthCheck.java
index 7971130fe94..a3168da2edd 100644
---
a/components/camel-aws/camel-aws2-cw/src/main/java/org/apache/camel/component/aws2/cw/Cw2ClientHealthCheck.java
+++
b/components/camel-aws/camel-aws2-cw/src/main/java/org/apache/camel/component/aws2/cw/Cw2ClientHealthCheck.java
@@ -19,8 +19,6 @@ package org.apache.camel.component.aws2.cw;
import java.util.Map;
-import org.apache.camel.component.aws2.cw.client.Cw2ClientFactory;
-import org.apache.camel.component.aws2.cw.client.Cw2InternalClient;
import org.apache.camel.health.HealthCheckResultBuilder;
import org.apache.camel.impl.health.AbstractHealthCheck;
import org.apache.camel.util.ObjectHelper;
@@ -55,8 +53,9 @@ public class Cw2ClientHealthCheck extends AbstractHealthCheck
{
}
}
try {
- Cw2InternalClient cw2Client =
Cw2ClientFactory.getCloudWatchClient(configuration);
-
cw2Client.getCloudWatchClient().listDashboards(ListDashboardsRequest.builder().build());
+ CloudWatchClient cw2Client = cw2Endpoint.getCloudWatchClient();
+
+ cw2Client.listDashboards(ListDashboardsRequest.builder().build());
} catch (AwsServiceException e) {
builder.message(e.getMessage());
builder.error(e);
diff --git
a/components/camel-aws/camel-aws2-ddb/src/main/java/org/apache/camel/component/aws2/ddb/Ddb2ClientHealthCheck.java
b/components/camel-aws/camel-aws2-ddb/src/main/java/org/apache/camel/component/aws2/ddb/Ddb2ClientHealthCheck.java
index 29acae06614..1320e22bc3b 100644
---
a/components/camel-aws/camel-aws2-ddb/src/main/java/org/apache/camel/component/aws2/ddb/Ddb2ClientHealthCheck.java
+++
b/components/camel-aws/camel-aws2-ddb/src/main/java/org/apache/camel/component/aws2/ddb/Ddb2ClientHealthCheck.java
@@ -19,14 +19,13 @@ package org.apache.camel.component.aws2.ddb;
import java.util.Map;
-import org.apache.camel.component.aws2.ddb.client.Ddb2ClientFactory;
-import org.apache.camel.component.aws2.ddb.client.Ddb2InternalClient;
import org.apache.camel.health.HealthCheckResultBuilder;
import org.apache.camel.impl.health.AbstractHealthCheck;
import org.apache.camel.util.ObjectHelper;
import software.amazon.awssdk.awscore.exception.AwsServiceException;
import software.amazon.awssdk.regions.Region;
import software.amazon.awssdk.services.dynamodb.DynamoDbClient;
+import software.amazon.awssdk.services.dynamodb.model.ListTablesRequest;
public class Ddb2ClientHealthCheck extends AbstractHealthCheck {
@@ -54,8 +53,9 @@ public class Ddb2ClientHealthCheck extends
AbstractHealthCheck {
}
}
try {
- Ddb2InternalClient ddb2Client =
Ddb2ClientFactory.getDynamoDBClient(configuration);
- ddb2Client.getDynamoDBClient().listTables();
+ DynamoDbClient ddbClient = ddb2Endpoint.getDdbClient();
+
+ ddbClient.listTables(ListTablesRequest.builder().limit(1).build());
} catch (AwsServiceException e) {
builder.message(e.getMessage());
builder.error(e);
diff --git
a/components/camel-aws/camel-aws2-ddb/src/main/java/org/apache/camel/component/aws2/ddbstream/Ddb2StreamConsumerHealthCheck.java
b/components/camel-aws/camel-aws2-ddb/src/main/java/org/apache/camel/component/aws2/ddbstream/Ddb2StreamConsumerHealthCheck.java
index 517c24e200f..56ec031e3d7 100644
---
a/components/camel-aws/camel-aws2-ddb/src/main/java/org/apache/camel/component/aws2/ddbstream/Ddb2StreamConsumerHealthCheck.java
+++
b/components/camel-aws/camel-aws2-ddb/src/main/java/org/apache/camel/component/aws2/ddbstream/Ddb2StreamConsumerHealthCheck.java
@@ -21,12 +21,10 @@ import java.util.Map;
import org.apache.camel.health.HealthCheckResultBuilder;
import org.apache.camel.impl.health.AbstractHealthCheck;
import org.apache.camel.util.ObjectHelper;
-import software.amazon.awssdk.auth.credentials.AwsBasicCredentials;
-import software.amazon.awssdk.auth.credentials.StaticCredentialsProvider;
import software.amazon.awssdk.awscore.exception.AwsServiceException;
import software.amazon.awssdk.regions.Region;
+import software.amazon.awssdk.services.dynamodb.model.ListStreamsRequest;
import software.amazon.awssdk.services.dynamodb.streams.DynamoDbStreamsClient;
-import
software.amazon.awssdk.services.dynamodb.streams.DynamoDbStreamsClientBuilder;
public class Ddb2StreamConsumerHealthCheck extends AbstractHealthCheck {
@@ -55,20 +53,9 @@ public class Ddb2StreamConsumerHealthCheck extends
AbstractHealthCheck {
return;
}
}
- DynamoDbStreamsClient client;
- if
(Boolean.FALSE.equals(configuration.isUseDefaultCredentialsProvider())) {
- AwsBasicCredentials cred
- =
AwsBasicCredentials.create(configuration.getAccessKey(),
configuration.getSecretKey());
- DynamoDbStreamsClientBuilder clientBuilder =
DynamoDbStreamsClient.builder();
- client =
clientBuilder.credentialsProvider(StaticCredentialsProvider.create(cred))
- .region(Region.of(configuration.getRegion())).build();
- } else if
(ObjectHelper.isNotEmpty(configuration.getAmazonDynamoDbStreamsClient())) {
- client = configuration.getAmazonDynamoDbStreamsClient();
- } else {
- DynamoDbStreamsClientBuilder clientBuilder =
DynamoDbStreamsClient.builder();
- client =
clientBuilder.region(Region.of(configuration.getRegion())).build();
- }
- client.listStreams();
+ DynamoDbStreamsClient client =
ddb2StreamConsumer.getEndpoint().getClient();
+
+ client.listStreams(ListStreamsRequest.builder().limit(1).build());
} catch (AwsServiceException e) {
builder.message(e.getMessage());
builder.error(e);
diff --git
a/components/camel-aws/camel-aws2-ec2/src/main/java/org/apache/camel/component/aws2/ec2/AWS2EC2HealthCheck.java
b/components/camel-aws/camel-aws2-ec2/src/main/java/org/apache/camel/component/aws2/ec2/AWS2EC2HealthCheck.java
index a3c2770dd01..3d76cbf8137 100644
---
a/components/camel-aws/camel-aws2-ec2/src/main/java/org/apache/camel/component/aws2/ec2/AWS2EC2HealthCheck.java
+++
b/components/camel-aws/camel-aws2-ec2/src/main/java/org/apache/camel/component/aws2/ec2/AWS2EC2HealthCheck.java
@@ -19,7 +19,6 @@ package org.apache.camel.component.aws2.ec2;
import java.util.Map;
-import org.apache.camel.component.aws2.ec2.client.AWS2EC2ClientFactory;
import org.apache.camel.health.HealthCheckResultBuilder;
import org.apache.camel.impl.health.AbstractHealthCheck;
import org.apache.camel.util.ObjectHelper;
@@ -53,7 +52,8 @@ public class AWS2EC2HealthCheck extends AbstractHealthCheck {
return;
}
- Ec2Client client =
AWS2EC2ClientFactory.getEc2Client(configuration).getEc2Client();
+ Ec2Client client = aws2EC2Endpoint.getEc2Client();
+
client.describeInstances();
} catch (AwsServiceException e) {
builder.message(e.getMessage());
diff --git
a/components/camel-aws/camel-aws2-ecs/src/main/java/org/apache/camel/component/aws2/ecs/ECS2ClientHealthCheck.java
b/components/camel-aws/camel-aws2-ecs/src/main/java/org/apache/camel/component/aws2/ecs/ECS2ClientHealthCheck.java
index 1f77fd45acd..edce0862cd3 100644
---
a/components/camel-aws/camel-aws2-ecs/src/main/java/org/apache/camel/component/aws2/ecs/ECS2ClientHealthCheck.java
+++
b/components/camel-aws/camel-aws2-ecs/src/main/java/org/apache/camel/component/aws2/ecs/ECS2ClientHealthCheck.java
@@ -19,8 +19,6 @@ package org.apache.camel.component.aws2.ecs;
import java.util.Map;
-import org.apache.camel.component.aws2.ecs.client.ECS2ClientFactory;
-import org.apache.camel.component.aws2.ecs.client.ECS2InternalClient;
import org.apache.camel.health.HealthCheckResultBuilder;
import org.apache.camel.impl.health.AbstractHealthCheck;
import org.apache.camel.util.ObjectHelper;
@@ -55,8 +53,8 @@ public class ECS2ClientHealthCheck extends
AbstractHealthCheck {
}
}
try {
- ECS2InternalClient ecs2Client =
ECS2ClientFactory.getEcsClient(configuration);
-
ecs2Client.getEcsClient().listClusters(ListClustersRequest.builder().build());
+ EcsClient ecs2Client = ecs2Endpoint.getEcsClient();
+
ecs2Client.listClusters(ListClustersRequest.builder().maxResults(1).build());
} catch (AwsServiceException e) {
builder.message(e.getMessage());
builder.error(e);
diff --git
a/components/camel-aws/camel-aws2-eks/src/main/java/org/apache/camel/component/aws2/eks/EKS2ClientHealthCheck.java
b/components/camel-aws/camel-aws2-eks/src/main/java/org/apache/camel/component/aws2/eks/EKS2ClientHealthCheck.java
index 84e510c0a93..7d0acd7d05a 100644
---
a/components/camel-aws/camel-aws2-eks/src/main/java/org/apache/camel/component/aws2/eks/EKS2ClientHealthCheck.java
+++
b/components/camel-aws/camel-aws2-eks/src/main/java/org/apache/camel/component/aws2/eks/EKS2ClientHealthCheck.java
@@ -19,8 +19,6 @@ package org.apache.camel.component.aws2.eks;
import java.util.Map;
-import org.apache.camel.component.aws2.eks.client.EKS2ClientFactory;
-import org.apache.camel.component.aws2.eks.client.EKS2InternalClient;
import org.apache.camel.health.HealthCheckResultBuilder;
import org.apache.camel.impl.health.AbstractHealthCheck;
import org.apache.camel.util.ObjectHelper;
@@ -55,8 +53,9 @@ public class EKS2ClientHealthCheck extends
AbstractHealthCheck {
}
}
try {
- EKS2InternalClient eks2Client =
EKS2ClientFactory.getEksClient(configuration);
-
eks2Client.getEksClient().listClusters(ListClustersRequest.builder().build());
+ EksClient eks2Client = eks2Endpoint.getEksClient();
+
+
eks2Client.listClusters(ListClustersRequest.builder().maxResults(1).build());
} catch (AwsServiceException e) {
builder.message(e.getMessage());
builder.error(e);
diff --git
a/components/camel-aws/camel-aws2-iam/src/main/java/org/apache/camel/component/aws2/iam/IAM2Endpoint.java
b/components/camel-aws/camel-aws2-iam/src/main/java/org/apache/camel/component/aws2/iam/IAM2Endpoint.java
index 27ab8f8a12f..638a7ebcde1 100644
---
a/components/camel-aws/camel-aws2-iam/src/main/java/org/apache/camel/component/aws2/iam/IAM2Endpoint.java
+++
b/components/camel-aws/camel-aws2-iam/src/main/java/org/apache/camel/component/aws2/iam/IAM2Endpoint.java
@@ -22,7 +22,6 @@ import org.apache.camel.Consumer;
import org.apache.camel.Processor;
import org.apache.camel.Producer;
import org.apache.camel.component.aws2.iam.client.IAM2ClientFactory;
-import org.apache.camel.component.aws2.iam.client.IAM2HealthCheck;
import org.apache.camel.health.HealthCheckHelper;
import org.apache.camel.impl.health.ComponentsHealthCheckRepository;
import org.apache.camel.spi.UriEndpoint;
diff --git
a/components/camel-aws/camel-aws2-iam/src/main/java/org/apache/camel/component/aws2/iam/client/IAM2HealthCheck.java
b/components/camel-aws/camel-aws2-iam/src/main/java/org/apache/camel/component/aws2/iam/IAM2HealthCheck.java
similarity index 88%
rename from
components/camel-aws/camel-aws2-iam/src/main/java/org/apache/camel/component/aws2/iam/client/IAM2HealthCheck.java
rename to
components/camel-aws/camel-aws2-iam/src/main/java/org/apache/camel/component/aws2/iam/IAM2HealthCheck.java
index 0443ec5e68a..31aea3a3359 100644
---
a/components/camel-aws/camel-aws2-iam/src/main/java/org/apache/camel/component/aws2/iam/client/IAM2HealthCheck.java
+++
b/components/camel-aws/camel-aws2-iam/src/main/java/org/apache/camel/component/aws2/iam/IAM2HealthCheck.java
@@ -14,17 +14,16 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.camel.component.aws2.iam.client;
+package org.apache.camel.component.aws2.iam;
import java.util.Map;
-import org.apache.camel.component.aws2.iam.IAM2Configuration;
-import org.apache.camel.component.aws2.iam.IAM2Endpoint;
import org.apache.camel.health.HealthCheckResultBuilder;
import org.apache.camel.impl.health.AbstractHealthCheck;
import software.amazon.awssdk.core.exception.SdkClientException;
import software.amazon.awssdk.regions.Region;
import software.amazon.awssdk.services.iam.IamClient;
+import software.amazon.awssdk.services.iam.model.ListAccessKeysRequest;
public class IAM2HealthCheck extends AbstractHealthCheck {
private final IAM2Endpoint endpoint;
@@ -50,8 +49,9 @@ public class IAM2HealthCheck extends AbstractHealthCheck {
return;
}
- IamClient client =
IAM2ClientFactory.getIamClient(configuration).getIamClient();
- client.listAccessKeys();
+ IamClient client = endpoint.getIamClient();
+
+
client.listAccessKeys(ListAccessKeysRequest.builder().maxItems(1).build());
} catch (SdkClientException e) {
builder.message(e.getMessage());
builder.error(e);
diff --git
a/components/camel-aws/camel-aws2-msk/src/main/java/org/apache/camel/component/aws2/msk/MSK2HealthCheck.java
b/components/camel-aws/camel-aws2-msk/src/main/java/org/apache/camel/component/aws2/msk/MSK2HealthCheck.java
index 4dc5ba55426..1a4a8a2b8cb 100644
---
a/components/camel-aws/camel-aws2-msk/src/main/java/org/apache/camel/component/aws2/msk/MSK2HealthCheck.java
+++
b/components/camel-aws/camel-aws2-msk/src/main/java/org/apache/camel/component/aws2/msk/MSK2HealthCheck.java
@@ -18,7 +18,6 @@ package org.apache.camel.component.aws2.msk;
import java.util.Map;
-import org.apache.camel.component.aws2.msk.client.MSK2ClientFactory;
import org.apache.camel.health.HealthCheckResultBuilder;
import org.apache.camel.impl.health.AbstractHealthCheck;
import software.amazon.awssdk.awscore.exception.AwsServiceException;
@@ -29,12 +28,10 @@ import
software.amazon.awssdk.services.kafka.model.ListClustersRequest;
public class MSK2HealthCheck extends AbstractHealthCheck {
private final MSK2Endpoint msk2Endpoint;
- private final String clientId;
public MSK2HealthCheck(MSK2Endpoint msk2Endpoint, String clientId) {
super("camel", "aws2-msk-client-" + clientId);
this.msk2Endpoint = msk2Endpoint;
- this.clientId = clientId;
}
@Override
@@ -54,9 +51,9 @@ public class MSK2HealthCheck extends AbstractHealthCheck {
return;
}
- KafkaClient client =
MSK2ClientFactory.getKafkaClient(configuration).getKafkaClient();
- client.listClusters(ListClustersRequest.builder().build());
+ KafkaClient client = msk2Endpoint.getMskClient();
+
client.listClusters(ListClustersRequest.builder().maxResults(1).build());
} catch (AwsServiceException e) {
builder.message(e.getMessage());
builder.error(e);
diff --git
a/components/camel-aws/camel-aws2-s3/src/main/java/org/apache/camel/component/aws2/s3/AWS2S3ConsumerHealthCheck.java
b/components/camel-aws/camel-aws2-s3/src/main/java/org/apache/camel/component/aws2/s3/AWS2S3ConsumerHealthCheck.java
index e15420ef20e..7742c6fbc87 100644
---
a/components/camel-aws/camel-aws2-s3/src/main/java/org/apache/camel/component/aws2/s3/AWS2S3ConsumerHealthCheck.java
+++
b/components/camel-aws/camel-aws2-s3/src/main/java/org/apache/camel/component/aws2/s3/AWS2S3ConsumerHealthCheck.java
@@ -21,12 +21,9 @@ import java.util.Map;
import org.apache.camel.health.HealthCheckResultBuilder;
import org.apache.camel.impl.health.AbstractHealthCheck;
import org.apache.camel.util.ObjectHelper;
-import software.amazon.awssdk.auth.credentials.AwsBasicCredentials;
-import software.amazon.awssdk.auth.credentials.StaticCredentialsProvider;
import software.amazon.awssdk.awscore.exception.AwsServiceException;
import software.amazon.awssdk.regions.Region;
import software.amazon.awssdk.services.s3.S3Client;
-import software.amazon.awssdk.services.s3.S3ClientBuilder;
import software.amazon.awssdk.services.s3.model.HeadBucketRequest;
public class AWS2S3ConsumerHealthCheck extends AbstractHealthCheck {
@@ -56,19 +53,8 @@ public class AWS2S3ConsumerHealthCheck extends
AbstractHealthCheck {
return;
}
}
- S3Client client;
- if
(Boolean.FALSE.equals(configuration.isUseDefaultCredentialsProvider())) {
- AwsBasicCredentials cred
- =
AwsBasicCredentials.create(configuration.getAccessKey(),
configuration.getSecretKey());
- S3ClientBuilder clientBuilder = S3Client.builder();
- client =
clientBuilder.credentialsProvider(StaticCredentialsProvider.create(cred))
- .region(Region.of(configuration.getRegion())).build();
- } else if
(ObjectHelper.isNotEmpty(configuration.getAmazonS3Client())) {
- client = configuration.getAmazonS3Client();
- } else {
- S3ClientBuilder clientBuilder = S3Client.builder();
- client =
clientBuilder.region(Region.of(configuration.getRegion())).build();
- }
+ S3Client client = aws2S3Consumer.getAmazonS3Client();
+
client.headBucket(HeadBucketRequest.builder().bucket(configuration.getBucketName()).build());
} catch (AwsServiceException e) {
builder.message(e.getMessage());
diff --git
a/components/camel-aws/camel-aws2-s3/src/test/java/org/apache/camel/component/aws2/s3/AWS2S3ConsumerHealthCustomClientTest.java
b/components/camel-aws/camel-aws2-s3/src/test/java/org/apache/camel/component/aws2/s3/AWS2S3ConsumerHealthCustomClientTest.java
deleted file mode 100644
index 0d2032b1162..00000000000
---
a/components/camel-aws/camel-aws2-s3/src/test/java/org/apache/camel/component/aws2/s3/AWS2S3ConsumerHealthCustomClientTest.java
+++ /dev/null
@@ -1,106 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.camel.component.aws2.s3;
-
-import java.util.Collection;
-import java.util.concurrent.TimeUnit;
-
-import org.apache.camel.CamelContext;
-import org.apache.camel.builder.RouteBuilder;
-import org.apache.camel.health.HealthCheck;
-import org.apache.camel.health.HealthCheckHelper;
-import org.apache.camel.health.HealthCheckRegistry;
-import org.apache.camel.impl.health.DefaultHealthCheckRegistry;
-import org.apache.camel.test.infra.aws.common.services.AWSService;
-import org.apache.camel.test.infra.aws2.clients.AWSSDKClientUtils;
-import org.apache.camel.test.infra.aws2.services.AWSServiceFactory;
-import org.apache.camel.test.junit5.CamelTestSupport;
-import org.junit.jupiter.api.Assertions;
-import org.junit.jupiter.api.Test;
-import org.junit.jupiter.api.extension.RegisterExtension;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import static org.testcontainers.shaded.org.awaitility.Awaitility.await;
-
-public class AWS2S3ConsumerHealthCustomClientTest extends CamelTestSupport {
-
- @RegisterExtension
- public static AWSService service = AWSServiceFactory.createS3Service();
-
- private static final Logger LOG =
LoggerFactory.getLogger(AWS2S3ConsumerHealthCustomClientTest.class);
-
- CamelContext context;
-
- @Override
- protected CamelContext createCamelContext() throws Exception {
- context = super.createCamelContext();
- context.getPropertiesComponent().setLocation("ref:prop");
- AWS2S3Component component = new AWS2S3Component(context);
-
component.getConfiguration().setAmazonS3Client(AWSSDKClientUtils.newS3Client());
- component.init();
- context.addComponent("aws2-s3", component);
-
- HealthCheckRegistry registry = new DefaultHealthCheckRegistry();
- registry.setCamelContext(context);
- Object hc = registry.resolveById("context");
- registry.register(hc);
- hc = registry.resolveById("routes");
- registry.register(hc);
- hc = registry.resolveById("consumers");
- registry.register(hc);
- context.setExtension(HealthCheckRegistry.class, registry);
-
- return context;
- }
-
- @Override
- protected RouteBuilder createRouteBuilder() {
- return new RouteBuilder() {
-
- @Override
- public void configure() {
-
from("aws2-s3://bucket1?moveAfterRead=true&destinationBucket=bucket1&autoCreateBucket=true")
-
.startupOrder(2).log("${body}").routeId("test-health-it");
- }
- };
- }
-
- @Test
- public void testConnectivity() {
-
- Collection<HealthCheck.Result> res =
HealthCheckHelper.invokeLiveness(context);
- boolean up = res.stream().allMatch(r ->
r.getState().equals(HealthCheck.State.UP));
- Assertions.assertTrue(up, "liveness check");
-
- // health-check readiness should be down
- await().atMost(20, TimeUnit.SECONDS).untilAsserted(() -> {
- Collection<HealthCheck.Result> res2 =
HealthCheckHelper.invokeReadiness(context);
- boolean down = res2.stream().allMatch(r ->
r.getState().equals(HealthCheck.State.DOWN));
- boolean containsAws2S3HealthCheck = res2.stream()
- .filter(result ->
result.getCheck().getId().startsWith("aws2-s3-consumer"))
- .findAny()
- .isPresent();
- boolean hasRegionMessage = res2.stream()
- .anyMatch(r -> r.getMessage().stream().anyMatch(msg ->
msg.contains("region")));
- Assertions.assertTrue(down, "liveness check");
- Assertions.assertTrue(containsAws2S3HealthCheck, "aws2-s3 check");
- Assertions.assertFalse(hasRegionMessage, "aws2-s3 check error
message");
- });
-
- }
-}
diff --git
a/components/camel-aws/camel-aws2-ses/src/main/java/org/apache/camel/component/aws2/ses/Ses2HealthCheck.java
b/components/camel-aws/camel-aws2-ses/src/main/java/org/apache/camel/component/aws2/ses/Ses2HealthCheck.java
index e449af06db5..8e94784b320 100644
---
a/components/camel-aws/camel-aws2-ses/src/main/java/org/apache/camel/component/aws2/ses/Ses2HealthCheck.java
+++
b/components/camel-aws/camel-aws2-ses/src/main/java/org/apache/camel/component/aws2/ses/Ses2HealthCheck.java
@@ -18,7 +18,6 @@ package org.apache.camel.component.aws2.ses;
import java.util.Map;
-import org.apache.camel.component.aws2.ses.client.Ses2ClientFactory;
import org.apache.camel.health.HealthCheckResultBuilder;
import org.apache.camel.impl.health.AbstractHealthCheck;
import software.amazon.awssdk.awscore.exception.AwsServiceException;
@@ -28,12 +27,10 @@ import software.amazon.awssdk.services.ses.SesClient;
public class Ses2HealthCheck extends AbstractHealthCheck {
private final Ses2Endpoint ses2Endpoint;
- private final String clientId;
public Ses2HealthCheck(Ses2Endpoint ses2Endpoint, String clientId) {
super("camel", "aws2-ses-client-" + clientId);
this.ses2Endpoint = ses2Endpoint;
- this.clientId = clientId;
}
@Override
@@ -52,10 +49,9 @@ public class Ses2HealthCheck extends AbstractHealthCheck {
builder.down();
return;
}
+ SesClient client = ses2Endpoint.getSESClient();
- SesClient client =
Ses2ClientFactory.getSesClient(configuration).getSesClient();
client.getSendStatistics();
-
} catch (AwsServiceException e) {
builder.message(e.getMessage());
builder.error(e);
diff --git
a/components/camel-aws/camel-aws2-sns/src/main/java/org/apache/camel/component/aws2/sns/Sns2HealthCheck.java
b/components/camel-aws/camel-aws2-sns/src/main/java/org/apache/camel/component/aws2/sns/Sns2HealthCheck.java
index 6110aaea116..769b6e3d51f 100644
---
a/components/camel-aws/camel-aws2-sns/src/main/java/org/apache/camel/component/aws2/sns/Sns2HealthCheck.java
+++
b/components/camel-aws/camel-aws2-sns/src/main/java/org/apache/camel/component/aws2/sns/Sns2HealthCheck.java
@@ -18,7 +18,6 @@ package org.apache.camel.component.aws2.sns;
import java.util.Map;
-import org.apache.camel.component.aws2.sns.client.Sns2ClientFactory;
import org.apache.camel.health.HealthCheckResultBuilder;
import org.apache.camel.impl.health.AbstractHealthCheck;
import software.amazon.awssdk.awscore.exception.AwsServiceException;
@@ -51,9 +50,9 @@ public class Sns2HealthCheck extends AbstractHealthCheck {
return;
}
- SnsClient client =
Sns2ClientFactory.getSnsClient(configuration).getSNSClient();
- client.listSubscriptions();
+ SnsClient client = sns2Endpoint.getSNSClient();
+ client.listSubscriptions();
} catch (AwsServiceException e) {
builder.message(e.getMessage());
builder.error(e);
diff --git
a/components/camel-aws/camel-aws2-sqs/src/main/java/org/apache/camel/component/aws2/sqs/Sqs2ConsumerHealthCheck.java
b/components/camel-aws/camel-aws2-sqs/src/main/java/org/apache/camel/component/aws2/sqs/Sqs2ConsumerHealthCheck.java
index 5b2cce5d25a..baf74f4c20d 100644
---
a/components/camel-aws/camel-aws2-sqs/src/main/java/org/apache/camel/component/aws2/sqs/Sqs2ConsumerHealthCheck.java
+++
b/components/camel-aws/camel-aws2-sqs/src/main/java/org/apache/camel/component/aws2/sqs/Sqs2ConsumerHealthCheck.java
@@ -21,12 +21,10 @@ import java.util.Map;
import org.apache.camel.health.HealthCheckResultBuilder;
import org.apache.camel.impl.health.AbstractHealthCheck;
import org.apache.camel.util.ObjectHelper;
-import software.amazon.awssdk.auth.credentials.AwsBasicCredentials;
-import software.amazon.awssdk.auth.credentials.StaticCredentialsProvider;
import software.amazon.awssdk.awscore.exception.AwsServiceException;
import software.amazon.awssdk.regions.Region;
import software.amazon.awssdk.services.sqs.SqsClient;
-import software.amazon.awssdk.services.sqs.SqsClientBuilder;
+import software.amazon.awssdk.services.sqs.model.ListQueuesRequest;
public class Sqs2ConsumerHealthCheck extends AbstractHealthCheck {
@@ -55,20 +53,10 @@ public class Sqs2ConsumerHealthCheck extends
AbstractHealthCheck {
return;
}
}
- SqsClient client;
- if (!configuration.isUseDefaultCredentialsProvider()) {
- AwsBasicCredentials cred
- =
AwsBasicCredentials.create(configuration.getAccessKey(),
configuration.getSecretKey());
- SqsClientBuilder clientBuilder = SqsClient.builder();
- client =
clientBuilder.credentialsProvider(StaticCredentialsProvider.create(cred))
- .region(Region.of(configuration.getRegion())).build();
- } else if
(ObjectHelper.isNotEmpty(configuration.getAmazonSQSClient())) {
- client = configuration.getAmazonSQSClient();
- } else {
- SqsClientBuilder clientBuilder = SqsClient.builder();
- client =
clientBuilder.region(Region.of(configuration.getRegion())).build();
- }
- client.listQueues();
+
+ SqsClient client = sqs2Consumer.getClient();
+
+
client.listQueues(ListQueuesRequest.builder().maxResults(1).build());
} catch (AwsServiceException e) {
builder.message(e.getMessage());
builder.error(e);