1- From a1c8a16ce264cee063db88040b4a10ea657ed30a Mon Sep 17 00:00:00 2001
1+ From 87f297257506e709b62eb97f25668fa2765ce9a3 Mon Sep 17 00:00:00 2001
22From: Dongie Agnir <dongie@amazon.com>
3- Date: Wed , 3 Dec 2025 14:06:14 -0800
4- Subject: [PATCH] Replace Apache 4.x with 5.x
3+ Date: Tue , 3 Feb 2026 13:54:05 -0800
4+ Subject: [PATCH] Replace 4.x with 5.x
55
66---
7- .../CloudFrontUtilitiesIntegrationTest.java | 26 +++++++++----------
7+ .../CloudFrontUtilitiesIntegrationTest.java | 27 +++++++++----------
88 .../dynamodb/SignersIntegrationTest.java | 6 ++---
9- .../MediaStoreDataIntegrationTestBase.java | 5 ----
10- ...stCompressionStreamingIntegrationTest.java | 2 --
11- ...ransferEncodingChunkedIntegrationTest.java | 4 +--
12- services/pom.xml | 4 +--
9+ services/pom.xml | 2 +-
1310 services/s3/pom.xml | 6 +++++
1411 .../S3AccessPointsIntegrationTest.java | 4 +--
1512 .../S3MrapIntegrationTest.java | 4 +--
16- 9 files changed, 30 insertions(+), 31 deletions(-)
13+ 6 files changed, 27 insertions(+), 22 deletions(-)
1714
1815diff --git a/services/cloudfront/src/test/java/software/amazon/awssdk/services/cloudfront/CloudFrontUtilitiesIntegrationTest.java b/services/cloudfront/src/test/java/software/amazon/awssdk/services/cloudfront/CloudFrontUtilitiesIntegrationTest.java
19- index a446417b658..91cb54ea284 100644
16+ index 15c30c812a3..b5c924f326e 100644
2017--- a/services/cloudfront/src/test/java/software/amazon/awssdk/services/cloudfront/CloudFrontUtilitiesIntegrationTest.java
2118+++ b/services/cloudfront/src/test/java/software/amazon/awssdk/services/cloudfront/CloudFrontUtilitiesIntegrationTest.java
22- @@ -44,7 +44,7 @@ import software.amazon.awssdk.http.HttpExecuteResponse;
19+ @@ -25,7 +25,6 @@ import java.net.URI;
20+ import java.nio.file.Files;
21+ import java.nio.file.Path;
22+ import java.nio.file.StandardOpenOption;
23+ - import java.security.Key;
24+ import java.security.KeyPair;
25+ import java.security.KeyPairGenerator;
26+ import java.security.PrivateKey;
27+ @@ -51,7 +50,7 @@ import software.amazon.awssdk.http.HttpExecuteResponse;
2328 import software.amazon.awssdk.http.SdkHttpClient;
2429 import software.amazon.awssdk.http.SdkHttpMethod;
2530 import software.amazon.awssdk.http.SdkHttpRequest;
@@ -28,7 +33,7 @@ index a446417b658..91cb54ea284 100644
2833 import software.amazon.awssdk.services.cloudfront.cookie.CookiesForCannedPolicy;
2934 import software.amazon.awssdk.services.cloudfront.cookie.CookiesForCustomPolicy;
3035 import software.amazon.awssdk.services.cloudfront.internal.utils.SigningUtils;
31- @@ -101 ,7 +101 ,7 @@ public class CloudFrontUtilitiesIntegrationTest extends IntegrationTestBase {
36+ @@ -144 ,7 +143 ,7 @@ public class CloudFrontUtilitiesIntegrationTest extends IntegrationTestBase {
3237
3338 @Test
3439 void unsignedUrl_shouldReturn403Response() throws Exception {
@@ -37,25 +42,25 @@ index a446417b658..91cb54ea284 100644
3742 HttpExecuteResponse response =
3843 client.prepareRequest(HttpExecuteRequest.builder()
3944 .request(SdkHttpRequest.builder()
40- @@ -125 ,7 +125 ,7 @@ public class CloudFrontUtilitiesIntegrationTest extends IntegrationTestBase {
41- .keyPairId(keyPairId)
45+ @@ -169 ,7 +168 ,7 @@ public class CloudFrontUtilitiesIntegrationTest extends IntegrationTestBase {
46+ .keyPairId(testCase. keyPairId)
4247 .expirationDate(expirationDate).build();
4348 SignedUrl signedUrl = cloudFrontUtilities.getSignedUrlWithCannedPolicy(request);
4449- SdkHttpClient client = ApacheHttpClient.create();
4550+ SdkHttpClient client = Apache5HttpClient.create();
4651 HttpExecuteResponse response = client.prepareRequest(HttpExecuteRequest.builder()
4752 .request(signedUrl.createHttpGetRequest())
4853 .build()).call();
49- @@ -143 ,7 +143 ,7 @@ public class CloudFrontUtilitiesIntegrationTest extends IntegrationTestBase {
50- .privateKey(privateKey)
51- .keyPairId(keyPairId)
54+ @@ -188 ,7 +187 ,7 @@ public class CloudFrontUtilitiesIntegrationTest extends IntegrationTestBase {
55+ .privateKey(testCase. privateKey)
56+ .keyPairId(testCase. keyPairId)
5257 .expirationDate(expirationDate));
5358- SdkHttpClient client = ApacheHttpClient.create();
5459+ SdkHttpClient client = Apache5HttpClient.create();
5560 HttpExecuteResponse response = client.prepareRequest(HttpExecuteRequest.builder()
5661 .request(signedUrl.createHttpGetRequest())
5762 .build()).call();
58- @@ -163 ,7 +163 ,7 @@ public class CloudFrontUtilitiesIntegrationTest extends IntegrationTestBase {
63+ @@ -209 ,7 +208 ,7 @@ public class CloudFrontUtilitiesIntegrationTest extends IntegrationTestBase {
5964 .expirationDate(expirationDate)
6065 .activeDate(activeDate).build();
6166 SignedUrl signedUrl = cloudFrontUtilities.getSignedUrlWithCustomPolicy(request);
@@ -64,25 +69,25 @@ index a446417b658..91cb54ea284 100644
6469 HttpExecuteResponse response = client.prepareRequest(HttpExecuteRequest.builder()
6570 .request(signedUrl.createHttpGetRequest())
6671 .build()).call();
67- @@ -183 ,7 +183 ,7 @@ public class CloudFrontUtilitiesIntegrationTest extends IntegrationTestBase {
68- .keyPairId(keyPairId )
72+ @@ -229 ,7 +228 ,7 @@ public class CloudFrontUtilitiesIntegrationTest extends IntegrationTestBase {
73+ .keyPairId(rsaKeyPairId )
6974 .expirationDate(expirationDate)
7075 .activeDate(activeDate));
7176- SdkHttpClient client = ApacheHttpClient.create();
7277+ SdkHttpClient client = Apache5HttpClient.create();
7378 HttpExecuteResponse response = client.prepareRequest(HttpExecuteRequest.builder()
7479 .request(signedUrl.createHttpGetRequest())
7580 .build()).call();
76- @@ -200 ,7 +200 ,7 @@ public class CloudFrontUtilitiesIntegrationTest extends IntegrationTestBase {
77- .keyPairId(keyPairId)
81+ @@ -247 ,7 +246 ,7 @@ public class CloudFrontUtilitiesIntegrationTest extends IntegrationTestBase {
82+ .keyPairId(testCase. keyPairId)
7883 .expirationDate(expirationDate));
7984
8085- SdkHttpClient client = ApacheHttpClient.create();
8186+ SdkHttpClient client = Apache5HttpClient.create();
8287 HttpExecuteResponse response = client.prepareRequest(HttpExecuteRequest.builder()
8388 .request(cookies.createHttpGetRequest())
8489 .build()).call();
85- @@ -221 ,7 +221 ,7 @@ public class CloudFrontUtilitiesIntegrationTest extends IntegrationTestBase {
90+ @@ -268 ,7 +267 ,7 @@ public class CloudFrontUtilitiesIntegrationTest extends IntegrationTestBase {
8691 .expirationDate(expirationDate).build();
8792 CookiesForCannedPolicy cookies = cloudFrontUtilities.getCookiesForCannedPolicy(request);
8893
@@ -91,7 +96,7 @@ index a446417b658..91cb54ea284 100644
9196 HttpExecuteResponse response = client.prepareRequest(HttpExecuteRequest.builder()
9297 .request(cookies.createHttpGetRequest())
9398 .build()).call();
94- @@ -240 ,7 +240 ,7 @@ public class CloudFrontUtilitiesIntegrationTest extends IntegrationTestBase {
99+ @@ -288 ,7 +287 ,7 @@ public class CloudFrontUtilitiesIntegrationTest extends IntegrationTestBase {
95100 .expirationDate(expirationDate)
96101 .activeDate(activeDate));
97102
@@ -100,7 +105,7 @@ index a446417b658..91cb54ea284 100644
100105 HttpExecuteResponse response = client.prepareRequest(HttpExecuteRequest.builder()
101106 .request(cookies.createHttpGetRequest())
102107 .build()).call();
103- @@ -263 ,7 +263 ,7 @@ public class CloudFrontUtilitiesIntegrationTest extends IntegrationTestBase {
108+ @@ -311 ,7 +310 ,7 @@ public class CloudFrontUtilitiesIntegrationTest extends IntegrationTestBase {
104109 .activeDate(activeDate).build();
105110 CookiesForCustomPolicy cookies = cloudFrontUtilities.getCookiesForCustomPolicy(request);
106111
@@ -109,7 +114,7 @@ index a446417b658..91cb54ea284 100644
109114 HttpExecuteResponse response = client.prepareRequest(HttpExecuteRequest.builder()
110115 .request(cookies.createHttpGetRequest())
111116 .build()).call();
112- @@ -296 ,7 +296 ,7 @@ public class CloudFrontUtilitiesIntegrationTest extends IntegrationTestBase {
117+ @@ -345 ,7 +344 ,7 @@ public class CloudFrontUtilitiesIntegrationTest extends IntegrationTestBase {
113118 URI modifiedUri = URI.create(urlWithDynamicParam);
114119
115120
@@ -118,7 +123,7 @@ index a446417b658..91cb54ea284 100644
118123 HttpExecuteResponse response = client.prepareRequest(HttpExecuteRequest.builder()
119124 .request(SdkHttpRequest.builder()
120125 .encodedPath(modifiedUri.getRawPath() + "?" + modifiedUri.getRawQuery())
121- @@ -332 ,7 +332 ,7 @@ public class CloudFrontUtilitiesIntegrationTest extends IntegrationTestBase {
126+ @@ -382 ,7 +381 ,7 @@ public class CloudFrontUtilitiesIntegrationTest extends IntegrationTestBase {
122127
123128
124129 URI modifiedUri = URI.create(signedUrl.url().replace("/specific-file","/other-file"));
@@ -127,7 +132,7 @@ index a446417b658..91cb54ea284 100644
127132 HttpExecuteResponse response = client.prepareRequest(HttpExecuteRequest.builder()
128133 .request(SdkHttpRequest.builder()
129134 .encodedPath(modifiedUri.getRawPath() + "?" + modifiedUri.getRawQuery())
130- @@ -367 ,7 +367 ,7 @@ public class CloudFrontUtilitiesIntegrationTest extends IntegrationTestBase {
135+ @@ -418 ,7 +417 ,7 @@ public class CloudFrontUtilitiesIntegrationTest extends IntegrationTestBase {
131136
132137
133138 URI modifiedUri = URI.create(signedUrl.url().replace("/s3ObjectKey","/foo/other-file"));
@@ -167,95 +172,21 @@ index e933e6b4f30..758027150e3 100644
167172
168173 HttpExecuteRequest request = HttpExecuteRequest.builder()
169174 .request(signedRequest)
170- diff --git a/services/mediastoredata/src/it/java/software/amazon/awssdk/services/mediastoredata/MediaStoreDataIntegrationTestBase.java b/services/mediastoredata/src/it/java/software/amazon/awssdk/services/mediastoredata/MediaStoreDataIntegrationTestBase.java
171- index feafd9c18bf..dfe2bb201de 100644
172- --- a/services/mediastoredata/src/it/java/software/amazon/awssdk/services/mediastoredata/MediaStoreDataIntegrationTestBase.java
173- +++ b/services/mediastoredata/src/it/java/software/amazon/awssdk/services/mediastoredata/MediaStoreDataIntegrationTestBase.java
174- @@ -37,8 +37,6 @@ import software.amazon.awssdk.core.interceptor.Context;
175- import software.amazon.awssdk.core.interceptor.ExecutionAttributes;
176- import software.amazon.awssdk.core.interceptor.ExecutionInterceptor;
177- import software.amazon.awssdk.http.ContentStreamProvider;
178- - import software.amazon.awssdk.http.SdkHttpClient;
179- - import software.amazon.awssdk.http.apache.ApacheHttpClient;
180- import software.amazon.awssdk.identity.spi.AwsCredentialsIdentity;
181- import software.amazon.awssdk.identity.spi.IdentityProvider;
182- import software.amazon.awssdk.regions.Region;
183- @@ -61,15 +59,12 @@ public class MediaStoreDataIntegrationTestBase extends AwsIntegrationTestBase {
184- @BeforeAll
185- public static void init() {
186- credentialsProvider = getCredentialsProvider();
187- - SdkHttpClient sdkHttpClient = ApacheHttpClient.builder().build();
188- mediaStoreClient = MediaStoreClient.builder()
189- .credentialsProvider(credentialsProvider)
190- - .httpClient(sdkHttpClient)
191- .build();
192- StsClient stsClient = StsClient.builder()
193- .credentialsProvider(CREDENTIALS_PROVIDER_CHAIN)
194- .region(Region.US_WEST_2)
195- - .httpClient(sdkHttpClient)
196- .build();
197- String accountId = stsClient.getCallerIdentity().account();
198- String containerName = "do-not-delete-mediastoredata-tests-container-" + accountId;
199- diff --git a/services/mediastoredata/src/it/java/software/amazon/awssdk/services/mediastoredata/RequestCompressionStreamingIntegrationTest.java b/services/mediastoredata/src/it/java/software/amazon/awssdk/services/mediastoredata/RequestCompressionStreamingIntegrationTest.java
200- index e20cddb44f6..34d45b96081 100644
201- --- a/services/mediastoredata/src/it/java/software/amazon/awssdk/services/mediastoredata/RequestCompressionStreamingIntegrationTest.java
202- +++ b/services/mediastoredata/src/it/java/software/amazon/awssdk/services/mediastoredata/RequestCompressionStreamingIntegrationTest.java
203- @@ -35,7 +35,6 @@ import software.amazon.awssdk.core.internal.compression.Compressor;
204- import software.amazon.awssdk.core.internal.compression.GzipCompressor;
205- import software.amazon.awssdk.core.internal.interceptor.trait.RequestCompression;
206- import software.amazon.awssdk.core.sync.RequestBody;
207- - import software.amazon.awssdk.http.apache.ApacheHttpClient;
208- import software.amazon.awssdk.http.nio.netty.NettyNioAsyncHttpClient;
209- import software.amazon.awssdk.services.mediastoredata.model.DeleteObjectRequest;
210- import software.amazon.awssdk.services.mediastoredata.model.GetObjectRequest;
211- @@ -71,7 +70,6 @@ public class RequestCompressionStreamingIntegrationTest extends MediaStoreDataIn
212- syncClient = MediaStoreDataClient.builder()
213- .endpointOverride(uri)
214- .credentialsProvider(credentialsProvider)
215- - .httpClient(ApacheHttpClient.builder().build())
216- .overrideConfiguration(o -> o.addExecutionInterceptor(new CaptureTransferEncodingHeaderInterceptor())
217- .addExecutionInterceptor(new CaptureContentEncodingHeaderInterceptor())
218- .putExecutionAttribute(SdkInternalExecutionAttribute.REQUEST_COMPRESSION,
219- diff --git a/services/mediastoredata/src/it/java/software/amazon/awssdk/services/mediastoredata/TransferEncodingChunkedIntegrationTest.java b/services/mediastoredata/src/it/java/software/amazon/awssdk/services/mediastoredata/TransferEncodingChunkedIntegrationTest.java
220- index 421a031a12b..f4f4322eb57 100644
221- --- a/services/mediastoredata/src/it/java/software/amazon/awssdk/services/mediastoredata/TransferEncodingChunkedIntegrationTest.java
222- +++ b/services/mediastoredata/src/it/java/software/amazon/awssdk/services/mediastoredata/TransferEncodingChunkedIntegrationTest.java
223- @@ -23,7 +23,7 @@ import org.junit.jupiter.api.AfterAll;
224- import org.junit.jupiter.api.BeforeAll;
225- import org.junit.jupiter.api.Test;
226- import software.amazon.awssdk.core.sync.RequestBody;
227- - import software.amazon.awssdk.http.apache.ApacheHttpClient;
228- + import software.amazon.awssdk.http.apache5.Apache5HttpClient;
229- import software.amazon.awssdk.http.nio.netty.NettyNioAsyncHttpClient;
230- import software.amazon.awssdk.http.urlconnection.UrlConnectionHttpClient;
231- import software.amazon.awssdk.services.mediastoredata.model.DeleteObjectRequest;
232- @@ -44,7 +44,7 @@ public class TransferEncodingChunkedIntegrationTest extends MediaStoreDataIntegr
233- syncClientWithApache = MediaStoreDataClient.builder()
234- .endpointOverride(uri)
235- .credentialsProvider(credentialsProvider)
236- - .httpClient(ApacheHttpClient.builder().build())
237- + .httpClient(Apache5HttpClient.builder().build())
238- .overrideConfiguration(o -> o.addExecutionInterceptor(new CaptureTransferEncodingHeaderInterceptor()))
239- .build();
240-
241175diff --git a/services/pom.xml b/services/pom.xml
242- index 2f0fbb22fc3..23044600d67 100644
176+ index a9ace22ad66..5bf4f814d41 100644
243177--- a/services/pom.xml
244178+++ b/services/pom.xml
245- @@ -522,9 +522,9 @@
179+ @@ -522,7 +522,7 @@
246180 <version>${awsjavasdk.version}</version>
247181 </dependency>
248182 <dependency>
249183- <artifactId>apache-client</artifactId>
250184+ <artifactId>apache5-client</artifactId>
251185 <groupId>software.amazon.awssdk</groupId>
252- - <version>${awsjavasdk.version}</version>
253- + <version>${awsjavasdk.version}-PREVIEW</version>
186+ <version>${awsjavasdk.version}</version>
254187 <scope>runtime</scope>
255- </dependency>
256- <dependency>
257188diff --git a/services/s3/pom.xml b/services/s3/pom.xml
258- index 9d55ab2030a..e605ca89305 100644
189+ index c0f8e5b1f3a..8c38ce6b80b 100644
259190--- a/services/s3/pom.xml
260191+++ b/services/s3/pom.xml
261192@@ -197,6 +197,12 @@
0 commit comments