Commit Graph

3678 Commits

Author SHA1 Message Date
Arturo Bernal 407b9152cc HTTPCLIENT-2318 - Enhance PoolingHttpClientConnectionManager with isShutdown State Check.
This commit introduces an `isShutdown` method to the `PoolingHttpClientConnectionManager` class, providing a thread-safe way to check whether the connection manager has been closed. The addition leverages an existing `AtomicBoolean` closed flag to ensure that the shutdown state can be queried reliably in concurrent environments.
2024-02-23 14:50:51 +01:00
Oleg Kalnichevski 8a7f707a61 Upgraded HttpCore to version 5.3-alpha2 2024-02-14 15:41:56 +01:00
Michael Lee 661589e386 Removed unused private fields and local variables 2024-02-10 14:18:04 +01:00
Michael Lee 5b411692a7 Correct logger name 2024-02-10 14:18:04 +01:00
Oleg Kalnichevski 2e46b62ffd HTTPCLIENT-2151: Support for JSSE in-built endpoint identification 2024-02-05 10:05:33 +01:00
Oleg Kalnichevski e6e873d88b Internal connection operators to make use of the target name from the request URI authority 2024-02-01 08:57:33 +01:00
Oleg Kalnichevski 91ab690e50 DefaultRoutePlanner to take request authority into account when determining a route for HTTPS requests 2024-02-01 08:57:33 +01:00
Oleg Kalnichevski 528a8c050b RouteInfo and HttpRoute to include the target name from the URI authority in case it differs from the target host (the host recognizes multiple authorities) 2024-02-01 08:57:33 +01:00
Oleg Kalnichevski fa8ca22d21 HTTPCLIENT-2316: BasicHttpClientConnectionManager incorrectly re-uses the released connection if it has been closed out by the protocol handler 2024-01-31 11:41:36 +01:00
Oleg Kalnichevski 23da984fb5 HTTPCLIENT-2070: Auth cache to no longer rely on Java serialization for auth state caching 2024-01-31 10:24:16 +01:00
Oleg Kalnichevski 3235f009d5 HTTPCLIENT-751: Support for RFC 2817 (Upgrading to TLS Within HTTP/1.1) 2024-01-29 14:15:16 +01:00
Oleg Kalnichevski 1111c62dd3 Classic ExecRuntime to support information responses (1xx) 2024-01-29 14:15:16 +01:00
Oleg Kalnichevski 7cf469c5cc Connect executors to update the execution context with the protocol and TLS details upon successful connect 2024-01-29 14:15:16 +01:00
Oleg Kalnichevski 9833c35728 Connection endpoints to provide TLS details and protocol version 2024-01-29 14:15:16 +01:00
Oleg Kalnichevski 9d225a6517 Realigned the behavior of TLS upgrade in the classic and async connection operators 2024-01-26 10:19:34 +01:00
Oleg Kalnichevski 9d75647eca Deprecated ConnectionSocketFactory, LayeredConnectionSocketFactory and their plain and SSL implementations in favor of DefaultClientTlsStrategy 2024-01-26 10:19:34 +01:00
Oleg Kalnichevski c7fa0b1dad Standard client TLS strategy implementations to support upgrade of blocking sockets 2024-01-26 10:19:34 +01:00
Oleg Kalnichevski 851c8df9ff Move plain socket create and connect operations to HttpClientConnectionOperator 2024-01-26 10:19:34 +01:00
Oleg Kalnichevski f4f5f73be2 FileResourceFactory to generate stable file names for the same request Id and entity tag 2024-01-26 09:15:21 +01:00
Oleg Kalnichevski d787637e6e Cache ResourceFactory to make use of strong eTags when available 2024-01-26 09:15:21 +01:00
Oleg Kalnichevski 5ecd396f60 Deprecated #copy method in FileResourceFactory 2024-01-26 09:15:21 +01:00
Andrea Cosentino 4adaa20be6 Use MessageDigest.isEquals method when comparing signatures in NTLMEngineImpl
Signed-off-by: Andrea Cosentino <ancosen@gmail.com>
2024-01-25 14:07:20 +01:00
Oleg Kalnichevski 4f8f34fe5c More consistent request interceptor naming; fixed inconsistent sequence of request interceptors in the classic and async HttpClient builders 2024-01-22 16:35:27 +01:00
Oleg Kalnichevski a1e8e9082e Better ETag handling 2024-01-18 20:08:39 +01:00
Oleg Kalnichevski 07586902ec ETag API 2024-01-18 20:08:39 +01:00
Oleg Kalnichevski a1fa1739bf Fixed a design mistake of ConnectionEndpoint having a direct dependency on HttpRequestExecutor class 2024-01-17 12:55:14 +01:00
Clayton Walker a8db310f2d Allow backwards-compatible createSocket calls 2024-01-16 21:41:02 +01:00
Oleg Kalnichevski b66ad6e4ff Example demonstrating how to make HttpClient negotiate or force a particular version of HTTP protocol during the TLS handshake 2024-01-16 10:29:55 +01:00
Oleg Kalnichevski 5f6ad302ba Corrected the use of the wrong request object in the example 2024-01-14 11:29:05 +01:00
Oleg Kalnichevski 8d9c764d6e Added example demonstrating how to get details of the underlying connection endpoint 2024-01-14 11:18:43 +01:00
Oleg Kalnichevski d7108f60ae Added #toString methods to Resource implementations 2024-01-12 09:23:42 +01:00
Oleg Kalnichevski 7c0d083b12 Cache control and context API 2024-01-12 09:23:42 +01:00
Oleg Kalnichevski b3da0ae138 Refactor ContextBuilder into a common abstract class and HttpClientContext specific builder 2024-01-12 09:23:42 +01:00
Oleg Kalnichevski 364fa60cd3 Promote RequestCacheControl and ResponseCacheControl to public API 2024-01-12 09:23:42 +01:00
Oleg Kalnichevski ef77109f35 HTTPCLIENT-2315: client builders fails to apply system properties to the default connection manager 2024-01-08 15:30:28 +01:00
Philip Helger 8228ddf28a HTTPCLIENT-2314: Handle gracefully a failure of DnsResolver to return a list of resolved addresses (#533) 2024-01-07 15:45:32 +01:00
Oleg Kalnichevski aad5987246 Corrected version in @since 2024-01-06 15:25:58 +01:00
Oleg Kalnichevski e2385f7d9a HTTPCLIENT-2314: Throw ConnectionShutdownException in case of pooled connection having been closed or discarded instead of plain IllegalStateException 2024-01-05 14:29:15 +01:00
Oleg Kalnichevski f24c8010bb Made caching of 403 responses by the classic and async protocol handlers more consistent 2024-01-03 11:29:16 +01:00
Oleg Kalnichevski c5de6961d1 Upgraded HttpClient version to 5.4-alpha2-SNAPSHOT 2023-12-29 10:47:10 +01:00
Oleg Kalnichevski bb27f666c2 Javadoc fix 2023-12-26 15:47:39 +01:00
Oleg Kalnichevski 4e43daf744 Regression: incorrect hash calculation (missing realm component) 2023-12-26 15:21:43 +01:00
Oleg Kalnichevski 7769a7edc6 Corrected release series in HttpClient 5.4-alpha1 release notes 2023-12-26 10:49:34 +01:00
Oleg Kalnichevski 810d7b0568 Revised external caching client tests 2023-12-24 17:54:03 +01:00
Oleg Kalnichevski c3d99b130c Do not set the default HTTP version of cache response messages 2023-12-24 17:54:03 +01:00
Oleg Kalnichevski 6a497be400 Bug-fix: HTTP cache to use response Cache-Control `s-maxage` attribute only when configured as shared 2023-12-24 17:08:04 +01:00
Oleg Kalnichevski 083f9dd74f Updated release notes for HttpClient 5.4-alpha1 release 2023-12-24 16:55:32 +01:00
Oleg Kalnichevski 45619c374b Upgraded API compatibility level to 5.3 2023-12-23 13:37:40 +01:00
Oleg Kalnichevski 1906539847 Use core percent codec instead of internal one 2023-12-23 13:28:51 +01:00
Oleg Kalnichevski df090e4228 Use core MessageSupport methods instead of internal ones 2023-12-23 13:25:59 +01:00