package xyz.fabiano.spring.localstack.support; import com.amazonaws.services.apigateway.AmazonApiGateway; import com.amazonaws.services.apigateway.AmazonApiGatewayClientBuilder; import com.amazonaws.services.cloudformation.AmazonCloudFormation; import com.amazonaws.services.cloudformation.AmazonCloudFormationClientBuilder; import com.amazonaws.services.cloudwatch.AmazonCloudWatch; import com.amazonaws.services.cloudwatch.AmazonCloudWatchClientBuilder; import com.amazonaws.services.dynamodbv2.AmazonDynamoDB; import com.amazonaws.services.dynamodbv2.AmazonDynamoDBClientBuilder; import com.amazonaws.services.dynamodbv2.AmazonDynamoDBStreams; import com.amazonaws.services.dynamodbv2.AmazonDynamoDBStreamsClientBuilder; import com.amazonaws.services.kinesis.AmazonKinesis; import com.amazonaws.services.kinesis.AmazonKinesisClientBuilder; import com.amazonaws.services.kinesisfirehose.AmazonKinesisFirehose; import com.amazonaws.services.kinesisfirehose.AmazonKinesisFirehoseClientBuilder; import com.amazonaws.services.lambda.AWSLambda; import com.amazonaws.services.lambda.AWSLambdaClientBuilder; import com.amazonaws.services.redshift.AmazonRedshift; import com.amazonaws.services.redshift.AmazonRedshiftClientBuilder; import com.amazonaws.services.route53.AmazonRoute53; import com.amazonaws.services.route53.AmazonRoute53ClientBuilder; import com.amazonaws.services.simpleemail.AmazonSimpleEmailService; import com.amazonaws.services.simpleemail.AmazonSimpleEmailServiceClientBuilder; import com.amazonaws.services.simplesystemsmanagement.AWSSimpleSystemsManagement; import com.amazonaws.services.simplesystemsmanagement.AWSSimpleSystemsManagementClientBuilder; import com.amazonaws.services.sns.AmazonSNS; import com.amazonaws.services.sns.AmazonSNSClientBuilder; import com.amazonaws.services.sqs.AmazonSQS; import com.amazonaws.services.sqs.AmazonSQSClientBuilder; import com.amazonaws.services.stepfunctions.AWSStepFunctions; import com.amazonaws.services.stepfunctions.AWSStepFunctionsClient; import com.amazonaws.services.stepfunctions.AWSStepFunctionsClientBuilder; import xyz.fabiano.spring.localstack.legacy.LocalstackDocker; public final class AmazonDockerClientsHolder extends AbstractAmazonDockerClientsHolder { public AmazonDockerClientsHolder(LocalstackDocker localstackDocker) { super(localstackDocker); } @Override public AmazonSQS amazonSQS() { return decorateWithConfigsAndBuild( AmazonSQSClientBuilder.standard(), LocalstackDocker::getEndpointSQS ); } @Override public AmazonSNS amazonSNS() { return decorateWithConfigsAndBuild( AmazonSNSClientBuilder.standard(), LocalstackDocker::getEndpointSNS ); } @Override public AmazonKinesis amazonKinesis() { return decorateWithConfigsAndBuild( AmazonKinesisClientBuilder.standard(), LocalstackDocker::getEndpointKinesis ); } @Override public AmazonDynamoDB amazonDynamoDB() { return decorateWithConfigsAndBuild( AmazonDynamoDBClientBuilder.standard(), LocalstackDocker::getEndpointDynamoDB ); } @Override public AmazonDynamoDBStreams amazonDynamoDBStreams() { return decorateWithConfigsAndBuild( AmazonDynamoDBStreamsClientBuilder.standard(), LocalstackDocker::getEndpointDynamoDBStreams ); } @Override public AmazonSimpleEmailService amazonSimpleEmailService() { return decorateWithConfigsAndBuild( AmazonSimpleEmailServiceClientBuilder.standard(), LocalstackDocker::getEndpointSES ); } @Override public AmazonApiGateway amazonApiGateway() { return decorateWithConfigsAndBuild( AmazonApiGatewayClientBuilder.standard(), LocalstackDocker::getEndpointAPIGateway ); } @Override public AmazonRedshift amazonRedshift() { return decorateWithConfigsAndBuild( AmazonRedshiftClientBuilder.standard(), LocalstackDocker::getEndpointRedshift ); } @Override public AmazonCloudWatch amazonCloudWatch() { return decorateWithConfigsAndBuild( AmazonCloudWatchClientBuilder.standard(), LocalstackDocker::getEndpointCloudWatch ); } @Override public AmazonCloudFormation amazonCloudFormation() { return decorateWithConfigsAndBuild( AmazonCloudFormationClientBuilder.standard(), LocalstackDocker::getEndpointCloudFormation ); } @Override public AmazonKinesisFirehose amazonKinesisFirehose() { return decorateWithConfigsAndBuild( AmazonKinesisFirehoseClientBuilder.standard(), LocalstackDocker::getEndpointFirehose ); } @Override public AmazonRoute53 amazonRoute53() { return decorateWithConfigsAndBuild( AmazonRoute53ClientBuilder.standard(), LocalstackDocker::getEndpointRoute53 ); } @Override public AWSLambda awsLambda() { return decorateWithConfigsAndBuild( AWSLambdaClientBuilder.standard(), LocalstackDocker::getEndpointLambda ); } @Override public AWSSimpleSystemsManagement awsSimpleSystemsManagement() { return decorateWithConfigsAndBuild( AWSSimpleSystemsManagementClientBuilder.standard(), LocalstackDocker::getEndpointSSM ); } @Override public AWSStepFunctions awsStepFunctions() { return decorateWithConfigsAndBuild( AWSStepFunctionsClientBuilder.standard(), LocalstackDocker::getEndpointStepFunction ); } }