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 3d014542846 CAMEL-22083: AWS (#18114) 3d014542846 is described below commit 3d0145428463d852e7ccbe4712084b496f9165f2 Author: Federico Mariani <34543311+cro...@users.noreply.github.com> AuthorDate: Mon May 19 16:02:11 2025 +0200 CAMEL-22083: AWS (#18114) --- .../infra/aws/common/services/AWSInfraService.java | 10 ++++++ .../services/AWSLocalContainerInfraService.java | 37 ++++++++++++++++++---- .../infra/aws2/services/AWSRemoteInfraService.java | 25 +++++++++++++++ .../infra/aws2/services/AWSServiceFactory.java | 25 +++++++++++++++ 4 files changed, 90 insertions(+), 7 deletions(-) diff --git a/test-infra/camel-test-infra-aws-common/src/main/java/org/apache/camel/test/infra/aws/common/services/AWSInfraService.java b/test-infra/camel-test-infra-aws-common/src/main/java/org/apache/camel/test/infra/aws/common/services/AWSInfraService.java index 8ad7b80c320..ddd88cf9d2b 100644 --- a/test-infra/camel-test-infra-aws-common/src/main/java/org/apache/camel/test/infra/aws/common/services/AWSInfraService.java +++ b/test-infra/camel-test-infra-aws-common/src/main/java/org/apache/camel/test/infra/aws/common/services/AWSInfraService.java @@ -24,4 +24,14 @@ import org.apache.camel.test.infra.common.services.InfrastructureService; public interface AWSInfraService extends InfrastructureService { Properties getConnectionProperties(); + + String amazonAWSHost(); + + String region(); + + String protocol(); + + String accessKey(); + + String secretKey(); } diff --git a/test-infra/camel-test-infra-aws-v2/src/main/java/org/apache/camel/test/infra/aws2/services/AWSLocalContainerInfraService.java b/test-infra/camel-test-infra-aws-v2/src/main/java/org/apache/camel/test/infra/aws2/services/AWSLocalContainerInfraService.java index d7b272ec8f3..6ea27cd88f5 100644 --- a/test-infra/camel-test-infra-aws-v2/src/main/java/org/apache/camel/test/infra/aws2/services/AWSLocalContainerInfraService.java +++ b/test-infra/camel-test-infra-aws-v2/src/main/java/org/apache/camel/test/infra/aws2/services/AWSLocalContainerInfraService.java @@ -61,17 +61,40 @@ public abstract class AWSLocalContainerInfraService implements AWSInfraService, return container; } + @Override + public String amazonAWSHost() { + return container.getAmazonHost(); + } + + @Override + public String region() { + return Region.US_EAST_1.toString(); + } + + @Override + public String protocol() { + return "http"; + } + + @Override + public String accessKey() { + return container.getCredentialsProvider().resolveCredentials().accessKeyId(); + } + + @Override + public String secretKey() { + return container.getCredentialsProvider().resolveCredentials().secretAccessKey(); + } + @Override public Properties getConnectionProperties() { Properties properties = new Properties(); - AwsCredentials credentials = container.getCredentialsProvider().resolveCredentials(); - - properties.put(AWSConfigs.ACCESS_KEY, credentials.accessKeyId()); - properties.put(AWSConfigs.SECRET_KEY, credentials.secretAccessKey()); - properties.put(AWSConfigs.REGION, Region.US_EAST_1.toString()); - properties.put(AWSConfigs.AMAZON_AWS_HOST, container.getAmazonHost()); - properties.put(AWSConfigs.PROTOCOL, "http"); + properties.put(AWSConfigs.ACCESS_KEY, accessKey()); + properties.put(AWSConfigs.SECRET_KEY, secretKey()); + properties.put(AWSConfigs.REGION, region()); + properties.put(AWSConfigs.AMAZON_AWS_HOST, amazonAWSHost()); + properties.put(AWSConfigs.PROTOCOL, protocol()); return properties; } diff --git a/test-infra/camel-test-infra-aws-v2/src/main/java/org/apache/camel/test/infra/aws2/services/AWSRemoteInfraService.java b/test-infra/camel-test-infra-aws-v2/src/main/java/org/apache/camel/test/infra/aws2/services/AWSRemoteInfraService.java index 107bd24fa44..d2c71ebabb2 100644 --- a/test-infra/camel-test-infra-aws-v2/src/main/java/org/apache/camel/test/infra/aws2/services/AWSRemoteInfraService.java +++ b/test-infra/camel-test-infra-aws-v2/src/main/java/org/apache/camel/test/infra/aws2/services/AWSRemoteInfraService.java @@ -40,6 +40,31 @@ public class AWSRemoteInfraService implements AWSInfraService { return properties; } + @Override + public String amazonAWSHost() { + throw new IllegalArgumentException("Not implemented for remote scenario"); + } + + @Override + public String region() { + throw new IllegalArgumentException("Not implemented for remote scenario"); + } + + @Override + public String protocol() { + throw new IllegalArgumentException("Not implemented for remote scenario"); + } + + @Override + public String accessKey() { + throw new IllegalArgumentException("Not implemented for remote scenario"); + } + + @Override + public String secretKey() { + throw new IllegalArgumentException("Not implemented for remote scenario"); + } + @Override public void registerProperties() { diff --git a/test-infra/camel-test-infra-aws-v2/src/test/java/org/apache/camel/test/infra/aws2/services/AWSServiceFactory.java b/test-infra/camel-test-infra-aws-v2/src/test/java/org/apache/camel/test/infra/aws2/services/AWSServiceFactory.java index 95b7d14b2dd..f955b3e5a2a 100644 --- a/test-infra/camel-test-infra-aws-v2/src/test/java/org/apache/camel/test/infra/aws2/services/AWSServiceFactory.java +++ b/test-infra/camel-test-infra-aws-v2/src/test/java/org/apache/camel/test/infra/aws2/services/AWSServiceFactory.java @@ -40,6 +40,31 @@ public final class AWSServiceFactory { public Properties getConnectionProperties() { return getService().getConnectionProperties(); } + + @Override + public String amazonAWSHost() { + return getService().amazonAWSHost(); + } + + @Override + public String region() { + return getService().region(); + } + + @Override + public String protocol() { + return getService().protocol(); + } + + @Override + public String accessKey() { + return getService().accessKey(); + } + + @Override + public String secretKey() { + return getService().secretKey(); + } } public static <T extends AWSService> SimpleTestServiceBuilder<T> builder() {