diff --git a/core/aws-core/pom.xml b/core/aws-core/pom.xml index c93943db6b17..9ca9025346a7 100644 --- a/core/aws-core/pom.xml +++ b/core/aws-core/pom.xml @@ -191,6 +191,12 @@ ${awsjavasdk.version} test + + software.amazon.awssdk + apache5-client + ${awsjavasdk.version}-PREVIEW + test + org.assertj assertj-core diff --git a/core/sdk-core/pom.xml b/core/sdk-core/pom.xml index db611688e429..96ee62003a1d 100644 --- a/core/sdk-core/pom.xml +++ b/core/sdk-core/pom.xml @@ -112,6 +112,12 @@ ${awsjavasdk.version} test + + software.amazon.awssdk + apache5-client + ${awsjavasdk.version}-PREVIEW + test + org.junit.jupiter junit-jupiter diff --git a/core/sdk-core/src/main/java/software/amazon/awssdk/core/internal/http/loader/ClasspathSdkHttpServiceProvider.java b/core/sdk-core/src/main/java/software/amazon/awssdk/core/internal/http/loader/ClasspathSdkHttpServiceProvider.java index 468adab2cb3f..e5f4248cf2b0 100644 --- a/core/sdk-core/src/main/java/software/amazon/awssdk/core/internal/http/loader/ClasspathSdkHttpServiceProvider.java +++ b/core/sdk-core/src/main/java/software/amazon/awssdk/core/internal/http/loader/ClasspathSdkHttpServiceProvider.java @@ -38,9 +38,10 @@ final class ClasspathSdkHttpServiceProvider implements SdkHttpServiceProvider static final Map SYNC_HTTP_SERVICES_PRIORITY = ImmutableMap.builder() - .put("software.amazon.awssdk.http.apache.ApacheSdkHttpService", 1) - .put("software.amazon.awssdk.http.urlconnection.UrlConnectionSdkHttpService", 2) - .put("software.amazon.awssdk.http.crt.AwsCrtSdkHttpService", 3) + .put("software.amazon.awssdk.http.apache5.Apache5SdkHttpService", 1) + .put("software.amazon.awssdk.http.apache.ApacheSdkHttpService", 2) + .put("software.amazon.awssdk.http.urlconnection.UrlConnectionSdkHttpService", 3) + .put("software.amazon.awssdk.http.crt.AwsCrtSdkHttpService", 4) .build(); static final Map ASYNC_HTTP_SERVICES_PRIORITY = diff --git a/services-custom/s3-transfer-manager/src/it/java/software/amazon/awssdk/transfer/s3/S3TransferManagerDownloadPauseResumeIntegrationTest.java b/services-custom/s3-transfer-manager/src/it/java/software/amazon/awssdk/transfer/s3/S3TransferManagerDownloadPauseResumeIntegrationTest.java index e01cf014870b..2856dc9661e3 100644 --- a/services-custom/s3-transfer-manager/src/it/java/software/amazon/awssdk/transfer/s3/S3TransferManagerDownloadPauseResumeIntegrationTest.java +++ b/services-custom/s3-transfer-manager/src/it/java/software/amazon/awssdk/transfer/s3/S3TransferManagerDownloadPauseResumeIntegrationTest.java @@ -131,8 +131,6 @@ void pauseAndResume_ObjectEtagChange_shouldRestartDownload(S3TransferManager tm) } } - @ParameterizedTest - @MethodSource("transferManagers") void pauseAndResume_ObjectNotChanged_shouldResumeDownload(S3TransferManager tm) { Path path = RandomTempFile.randomUncreatedFile().toPath(); TestDownloadListener testDownloadListener = new TestDownloadListener(); diff --git a/services/pom.xml b/services/pom.xml index 6aceb42eca74..56869c57e87d 100644 --- a/services/pom.xml +++ b/services/pom.xml @@ -524,6 +524,12 @@ ${awsjavasdk.version} runtime + + apache5-client + software.amazon.awssdk + ${awsjavasdk.version}-PREVIEW + runtime + netty-nio-client software.amazon.awssdk diff --git a/test/codegen-generated-classes-test/pom.xml b/test/codegen-generated-classes-test/pom.xml index f7e9bff432c1..c2614a5965af 100644 --- a/test/codegen-generated-classes-test/pom.xml +++ b/test/codegen-generated-classes-test/pom.xml @@ -235,6 +235,12 @@ ${awsjavasdk.version} test + + software.amazon.awssdk + apache5-client + ${awsjavasdk.version}-PREVIEW + test + org.assertj assertj-core diff --git a/test/module-path-tests/pom.xml b/test/module-path-tests/pom.xml index 7f03fb65d8ab..681e24559af5 100644 --- a/test/module-path-tests/pom.xml +++ b/test/module-path-tests/pom.xml @@ -59,6 +59,11 @@ apache-client ${awsjavasdk.version} + + software.amazon.awssdk + apache5-client + ${awsjavasdk.version}-PREVIEW + software.amazon.awssdk netty-nio-client diff --git a/test/protocol-tests/pom.xml b/test/protocol-tests/pom.xml index 323f7db56e77..26a71b14fe18 100644 --- a/test/protocol-tests/pom.xml +++ b/test/protocol-tests/pom.xml @@ -93,6 +93,12 @@ ${awsjavasdk.version} runtime + + software.amazon.awssdk + apache5-client + ${awsjavasdk.version}-PREVIEW + runtime + software.amazon.awssdk http-client-spi diff --git a/test/s3-benchmarks/src/main/java/software/amazon/awssdk/s3benchmarks/s3express/S3BenchmarkRunner.java b/test/s3-benchmarks/src/main/java/software/amazon/awssdk/s3benchmarks/s3express/S3BenchmarkRunner.java index 5822de568e1b..705c0a6c6b79 100644 --- a/test/s3-benchmarks/src/main/java/software/amazon/awssdk/s3benchmarks/s3express/S3BenchmarkRunner.java +++ b/test/s3-benchmarks/src/main/java/software/amazon/awssdk/s3benchmarks/s3express/S3BenchmarkRunner.java @@ -21,6 +21,8 @@ import software.amazon.awssdk.auth.credentials.AwsCredentialsProvider; import software.amazon.awssdk.core.metrics.CoreMetric; import software.amazon.awssdk.http.HttpMetric; +import software.amazon.awssdk.http.apache.ApacheHttpClient; +import software.amazon.awssdk.http.apache5.Apache5HttpClient; import software.amazon.awssdk.http.nio.netty.NettyNioAsyncHttpClient; import software.amazon.awssdk.metrics.MetricLevel; import software.amazon.awssdk.metrics.MetricPublisher; @@ -67,12 +69,13 @@ public static void runBenchmarks(boolean useS3Express) { S3Client s3Client = S3BenchmarkTestUtils.s3ClientBuilder(region) .credentialsProvider(credentialsProvider) + .httpClient(ApacheHttpClient.create()) .overrideConfiguration(o -> o.addMetricPublisher( metricPublisher(cloudwatchClient, namespacePrefix + "/SmallObject/Apache"))) .build(); - LOGGER.info(() -> "Running small objects benchmark, 64Kb data, 5 buckets, 200 iterations"); + LOGGER.info(() -> "Running small objects benchmark with Apache4 Http Client, 64Kb data, 5 buckets, 200 iterations"); BenchmarkConfig smallObjectSyncConfig = BenchmarkConfig.builder() .region(region) .credentialsProvider(credentialsProvider) @@ -93,7 +96,7 @@ public static void runBenchmarks(boolean useS3Express) { namespacePrefix + "/MediumObject/Apache"))) .build(); - LOGGER.info(() -> "Running medium objects benchmark, 1024Kb data, 5 buckets, 200 iterations"); + LOGGER.info(() -> "Running medium objects benchmark with Apache4 Http Client, 1024Kb data, 5 buckets, 200 iterations"); BenchmarkConfig largeObjectSyncConfig = BenchmarkConfig.builder() .region(region) .credentialsProvider(credentialsProvider) @@ -108,6 +111,33 @@ public static void runBenchmarks(boolean useS3Express) { s3Client.close(); + s3Client = S3BenchmarkTestUtils.s3ClientBuilder(region) + .credentialsProvider(credentialsProvider) + .httpClient(Apache5HttpClient.create()) + .overrideConfiguration(o -> o.addMetricPublisher( + metricPublisher(cloudwatchClient, + namespacePrefix + "/SmallObject/Apache5"))) + .build(); + + LOGGER.info(() -> "Running small objects benchmark with Apache5 Http Client, 64Kb data, 5 buckets, 200 iterations"); + syncBenchmark = new S3PutGetDeleteSyncBenchmark(smallObjectSyncConfig, s3Client); + syncBenchmark.run(); + s3Client.close(); + + s3Client = S3BenchmarkTestUtils.s3ClientBuilder(region) + .credentialsProvider(credentialsProvider) + .httpClient(Apache5HttpClient.create()) + .overrideConfiguration(o -> o.addMetricPublisher( + metricPublisher(cloudwatchClient, + namespacePrefix + "/MediumObject/Apache5"))) + .build(); + + LOGGER.info(() -> "Running medium objects benchmark with Apache5 Http Client, 1024Kb data, 5 buckets, 200 iterations"); + syncBenchmark = new S3PutGetDeleteSyncBenchmark(largeObjectSyncConfig, s3Client); + syncBenchmark.run(); + s3Client.close(); + + S3AsyncClient s3AsyncClient = S3BenchmarkTestUtils.s3AsyncClientBuilder(region) .credentialsProvider(credentialsProvider) .overrideConfiguration(o -> o.addMetricPublisher( diff --git a/test/sdk-native-image-test/pom.xml b/test/sdk-native-image-test/pom.xml index 7e55d6619306..7dff2e93201d 100644 --- a/test/sdk-native-image-test/pom.xml +++ b/test/sdk-native-image-test/pom.xml @@ -67,6 +67,11 @@ ${awsjavasdk.version} + + software.amazon.awssdk + apache5-client + ${awsjavasdk.version}-PREVIEW + org.slf4j diff --git a/test/stability-tests/pom.xml b/test/stability-tests/pom.xml index b8af1f50b1dc..07a1b8a76b5d 100644 --- a/test/stability-tests/pom.xml +++ b/test/stability-tests/pom.xml @@ -59,6 +59,12 @@ ${awsjavasdk.version} test + + software.amazon.awssdk + apache5-client + ${awsjavasdk.version}-PREVIEW + test + software.amazon.awssdk netty-nio-client diff --git a/test/tests-coverage-reporting/pom.xml b/test/tests-coverage-reporting/pom.xml index 8d1360267f25..9b264b1bc641 100644 --- a/test/tests-coverage-reporting/pom.xml +++ b/test/tests-coverage-reporting/pom.xml @@ -157,6 +157,11 @@ software.amazon.awssdk ${awsjavasdk.version} + + apache-client + software.amazon.awssdk + ${awsjavasdk.version} + aws-crt-client software.amazon.awssdk