Skip to content

Commit 6155295

Browse files
committed
Update Java docs for Apache Clients
1 parent 6308939 commit 6155295

File tree

2 files changed

+24
-7
lines changed

2 files changed

+24
-7
lines changed

http-clients/apache-client/src/main/java/software/amazon/awssdk/http/apache/ApacheHttpClient.java

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -92,9 +92,11 @@
9292
import software.amazon.awssdk.utils.Validate;
9393

9494
/**
95-
* An implementation of {@link SdkHttpClient} that uses Apache HTTP client to communicate with the service. This is the most
96-
* powerful synchronous client that adds an extra dependency and additional startup latency in exchange for more functionality,
97-
* like support for HTTP proxies.
95+
*
96+
* An implementation of {@link SdkHttpClient} that uses Apache HttpClient 4.x to communicate with the service. This is a
97+
* full-featured synchronous client that adds an extra dependency and higher startup latency compared to
98+
* <a href="https://docs.aws.amazon.com/sdk-for-java/latest/developer-guide/http-configuration-url.html">UrlConnectionHttpClient</a>
99+
* in exchange for more functionality, like support for HTTP proxies.
98100
*
99101
* <p>See software.amazon.awssdk.http.urlconnection.UrlConnectionHttpClient for an alternative implementation.</p>
100102
*

http-clients/apache5-client/src/main/java/software/amazon/awssdk/http/apache5/Apache5HttpClient.java

Lines changed: 19 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -101,14 +101,29 @@
101101
import software.amazon.awssdk.utils.Validate;
102102

103103
/**
104-
* An implementation of {@link SdkHttpClient} that uses Apache5 HTTP client to communicate with the service. This is the most
105-
* powerful synchronous client that adds an extra dependency and additional startup latency in exchange for more functionality,
106-
* like support for HTTP proxies.
104+
* An implementation of {@link SdkHttpClient} that uses Apache HttpClient 5.x to communicate with the service. This is a
105+
* full-featured synchronous client that adds an extra dependency and higher startup latency compared to
106+
* <a href="https://docs.aws.amazon.com/sdk-for-java/latest/developer-guide/http-configuration-url.html">UrlConnectionHttpClient</a>
107+
* in exchange for more functionality, like support for HTTP proxies.
107108
*
108-
* <p>See software.amazon.awssdk.http.urlconnection.UrlConnectionHttpClient for an alternative implementation.</p>
109+
* <p><b>Note:</b> The higher startup latency is compared to UrlConnectionHttpClient, not to the Apache HttpClient 4.5.x
110+
* based client. Performance characteristics between Apache 4.5.x and 5.x clients are similar.</p>
111+
*
112+
* <p>This client uses Apache HttpClient 5.x, which provides the following
113+
* improvements over the Apache HttpClient 4.5.x based client:</p>
114+
* <ul>
115+
* <li>Modern Java ecosystem compatibility including virtual thread support for Java 21</li>
116+
* <li>Active maintenance with regular security updates</li>
117+
* <li>Enhanced logging flexibility through SLF4J (replacing problematic JCL dependencies)</li>
118+
* </ul>
119+
*
120+
* <p>See
121+
* <a href="https://docs.aws.amazon.com/sdk-for-java/latest/developer-guide/http-configuration-url.html">UrlConnectionHttpClient</a>
122+
* for a lighter-weight alternative implementation.</p>
109123
*
110124
* <p>This can be created via {@link #builder()}</p>
111125
*/
126+
112127
@SdkPreviewApi
113128
@SdkPublicApi
114129
public final class Apache5HttpClient implements SdkHttpClient {

0 commit comments

Comments
 (0)