Commit Graph

522 Commits

Author SHA1 Message Date
Oleg Kalnichevski b10d43f2bb HTTPCLIENT-2135: TLS configuration on a per-host basis 2021-10-23 18:07:41 +02:00
Gary Gregory 445d4271f9 Use compact array initialization syntax. 2021-10-13 10:36:49 +02:00
Gary Gregory b6ae693fe5 Don't initialize AtomicReference to its default value. 2021-10-13 10:36:49 +02:00
Oleg Kalnichevski 4dd7cefbde Corrected resolution of the target host in DefaultUserTokenHandler 2021-09-29 18:01:47 +02:00
Oleg Kalnichevski fb0c073783 RFC 7230: treat presence of a userinfo component in request URI as an HTTP protocol violation 2021-09-29 18:01:46 +02:00
Oleg Kalnichevski 30c253b37b AuthCache conformance to RFC 7617 2021-09-29 18:01:46 +02:00
Oleg Kalnichevski 5390aef223 Always bind the exchange ID to the execution context 2021-09-29 18:01:46 +02:00
Oleg Kalnichevski 013851d898 Logger cleanup (no functional changes) 2021-09-29 18:01:46 +02:00
Oleg Kalnichevski 4150ac0592 Refactored AuthCache keeping logic into a separate utility class 2021-09-29 18:01:46 +02:00
Oleg Kalnichevski 670f0456ba More consistent handling of request scheme and authority by protocol interceptors 2021-09-29 18:01:46 +02:00
Oleg Kalnichevski 7b47b28d46 Added immutable CredentialsProvider implementations and a CredentialsProvider builder; changed test cases and examples to use immutable CredentialsProvider where possible 2021-09-29 18:01:45 +02:00
Oleg Kalnichevski 17ebfc529e HTTPCLIENT-2120: force HTTP/1.1 protocol policy when creating a tunnel via HTTP/1.1 proxy 2021-09-29 18:01:43 +02:00
Oleg Kalnichevski 9496bb8475 Better connect operation logging 2021-09-18 21:31:10 +02:00
Oleg Kalnichevski 90f69c87b2 HTTPCLIENT-2177: fixed incorrect route state tracking by the async connect executor when negotiating a tunnel via a proxy 2021-09-18 21:31:04 +02:00
Oleg Kalnichevski 4ce032c92c HTTPCLIENT-2177: keep successful tunnel connections alive regardless of `Connection: close` 2021-09-18 21:31:02 +02:00
Oleg Kalnichevski 50f93ec18b HTTPCLIENT-2045: BASIC auth scheme conformance to RFC 7617 2021-09-17 11:17:49 +02:00
Marcono1234 8e8774e6b5 Fix bad test class name 2021-09-11 17:01:59 +02:00
Oleg Kalnichevski 92f757eee3 HTTPCLIENT-2120: support for H2 via HTTP/1.1 proxy 2021-09-09 14:58:49 +02:00
Oleg Kalnichevski bdc7f3b93e Upgraded HttpCore to version 5.2-alpha1 2021-09-09 14:23:37 +02:00
Oleg Kalnichevski c56c00c549 Fixed deprecation warnings that could be fixed and suppressed those that could not 2021-09-09 13:49:44 +02:00
Jaikiran Pai 755b69ea3c Don't retry a request for NoRouteToHostException 2021-08-23 22:24:15 +02:00
Oleg Kalnichevski 5164a4e7b4 HTTPCLIENT-2170: Classic protocol layer no longer releases the underlying connection back to the pool prematurely while the NTLM handshake is still ongoing 2021-08-19 18:58:41 +02:00
Oleg Kalnichevski 29ba623ebe Fixed connection lease request cancellation race in both classic and asyc pooling connection managers 2021-06-28 22:27:01 +02:00
Oleg Kalnichevski aff1d2024c Better exception asserts in unit tests 2021-06-19 21:10:43 +02:00
Arturo Bernal d77112f608 Replace assert calls by simpler but equivalent calls. 2021-06-19 16:47:44 +02:00
Arturo Bernal fde3fca687 Simplify conditions and avoid extra checks.
Inline return variables.
2021-06-19 16:47:41 +02:00
Oleg Kalnichevski 0805cfe582 Updated test cases with exception asserts 2021-05-24 18:53:58 +02:00
Oleg Kalnichevski 82432f50d9 Removed references to deprecated Assert#assertThat 2021-05-24 16:58:33 +02:00
Oleg Kalnichevski 8580d7fddf Redundant type declarations 2021-05-24 14:43:18 +02:00
Oleg Kalnichevski 2072651983 Upgraded Mockito to version 3.10.0 2021-05-24 14:43:08 +02:00
Oleg Kalnichevski f36637dc2f Moved connection management related settings from RequestConfig to new class ConnectionMgmtConfig 2021-05-24 12:43:41 +02:00
Arturo Bernal f5d3c14afd HTTPCLIENT-2139 - Cookie Header HttpOnly attribute 2021-05-24 12:43:34 +02:00
Oleg Kalnichevski 646257e107 Upgraded project version to 5.2-alpha1-SNAPSHOT 2021-05-24 11:30:08 +02:00
Oleg Kalnichevski bb04d078ad Java 1.8 upgrade 2021-05-11 21:34:49 +02:00
Oleg Kalnichevski 6693c186f4 Upgraded HttpClient version to 5.1.1-SNAPSHOT 2021-05-11 21:03:27 +02:00
Oleg Kalnichevski c4b2a8480d Upgraded HttpCore to version 5.1.1 2021-05-07 18:51:03 +02:00
Oleg Kalnichevski d8d7ad37a3 Extra sage-guards for concurrent connection endpoint acquisition and request execution cancellation 2021-04-28 16:31:16 +02:00
Oleg Kalnichevski 09f50cd80c HTTPCLIENT-2152: Fixed handling of unexpected unchecked exception by the async request retry exec interceptor 2021-04-27 13:07:13 +02:00
Oleg Kalnichevski 13137eb6c7 Async clients to support scheduled (delayed) re-execution of requests 2021-04-27 12:57:15 +02:00
Peter Dettman 58a17cc549 HTTPCLIENT-2149: When no dNSName, match against CN 2021-04-10 11:50:23 +02:00
Oleg Kalnichevski 935abae04e HTTPCORE-672: cleanup of H2 connection validation code 2021-04-02 22:06:50 +02:00
Ryan Schmitt f597588198 HttpAsyncClientBuilder: Make IOReactor exception callback configurable 2021-03-31 11:32:23 -07:00
Oleg Kalnichevski 73c1530b3f HTTPCLIENT-2141: HttpClient to not retry requests if the retry interval exceeds the response timeout 2021-03-28 12:28:21 +02:00
Arturo Bernal 879a063b57 Reuse org.apache.hc.core5.http.Method HTTP spec enum 2021-03-16 12:53:31 +01:00
Oleg Kalnichevski 10e2deb210 Blocking connection managers to validate connections after inactivity of more than 2s by default; behavior of async connection managers remains the same 2021-03-16 09:24:14 +01:00
Oleg Kalnichevski 5875ca1c37 Fixed context logging in BasicHttpClientConnectionManager 2021-03-15 21:49:07 +01:00
Oleg Kalnichevski 2404540f1f Deprecated request factory classes in favor of request builders 2021-03-14 22:13:55 +01:00
Oleg Kalnichevski e0c19c0b53 Better javadocs for simple message classes 2021-03-14 20:37:08 +01:00
Oleg Kalnichevski 567b53d4b1 Improved async client examples 2021-03-14 20:08:37 +01:00
Oleg Kalnichevski 1174c240e2 Simple message builders 2021-03-14 18:59:22 +01:00
Sandeep Kulkarni d94495131a Fixed typo for enum name Postion to Position 2021-03-14 16:44:32 +01:00
Arturo Bernal 118e7359a1 Fixed typos javadocs and var names 2021-03-14 16:34:18 +01:00
Oleg Kalnichevski d41d67fa94 Request factory classes to re-use `Method#normalizedValueOf` 2021-03-11 22:47:29 +01:00
Oleg Kalnichevski b6b89a7296 Cleanup of redirect request generation code in Redirect exec interceptors 2021-03-11 22:47:29 +01:00
Oleg Kalnichevski 8b29c0680b Improved proxy request message generation 2021-03-11 22:47:29 +01:00
Oleg Kalnichevski 3de88293fe Deprecated message copiers in favor of generic message builders 2021-03-11 22:47:29 +01:00
leedonggyu 8aea7da1df Remove duplicated conditional statement in ResponseProcessCookies 2021-02-25 10:47:42 +01:00
Oleg Kalnichevski de5c6a237a Deleted sample code moved to HttpComponents Website project 2021-02-23 19:18:47 +01:00
Carey Lin a0184188c1 Fix the issues causing Kerberos/SPNego to fail
1. At the beginning of the negotiate, no token is defined in "WWW-Authenticate: Negotiate".
2. Kerberos expects HTTP.
2021-02-20 17:41:20 +01:00
imbyungjun c39117e366 Fix typo on cookie formatting method 2021-02-16 20:01:54 +01:00
Arturo Bernal f2e9ad3b11 Fix Typo 2021-02-10 22:09:20 +01:00
Oleg Kalnichevski 744c9d8020 Upgraded HttpClient version to 5.1-beta2-SNAPSHOT 2021-02-10 22:06:51 +01:00
Oleg Kalnichevski 4b295dff15 Deprecated some URIUtils methods in favor of URIBuilder 2021-02-06 18:05:01 +01:00
Oleg Kalnichevski e6a7fe8a0c Request message copy optimization 2021-02-06 17:36:24 +01:00
Oleg Kalnichevski f9ea1b6238 Upgraded project version to 5.1-beta1-SNAPSHOT 2021-02-06 13:28:08 +01:00
Oleg Kalnichevski af3a7526d2 RFC 3986 conformance: re-use URIBuilder new functionality in URIUtils#normalizeSyntax 2021-02-06 13:26:52 +01:00
Arturo Bernal 0940d35602 Minor Improvement:
* Avoid duplicate code
* Simplify if else
* Inline variables
2021-02-05 22:18:45 +01:00
Arturo Bernal 3c9f1f85e1 Minor Improvements:
* Use Empty collections
* Unnecessary toString
2021-01-26 09:14:46 +01:00
Oleg Kalnichevski b71e2fcb83 No need to copy example sources as resources when generating site content 2021-01-17 11:12:33 +01:00
Hervé Boutemy 3b0a7aeee8 improve documentation format 2021-01-12 09:33:48 +01:00
Arturo Bernal 6a02e818ff Minor Improvements:
* Remove redundant initialization
2021-01-05 20:01:19 +01:00
Oleg Kalnichevski 8285223560 Improved context and wire logging 2021-01-03 15:18:28 +01:00
Oleg Kalnichevski a0b4dbb34b Improved I/O session logging 2021-01-03 15:18:28 +01:00
Arturo Bernal 36e1bde6ff Minor Improvements:
* Add final to variable
* Unnecessary semicolon
* Use Standard Charset object
* Unnecessary conversion to String
* Simplifiable conditional expression
* Replace 'Arrays.asList()' with Collections.singletonList
* Redundant local variable. Simplify
2020-12-31 13:50:06 +01:00
Rob Spoor 25c124917b
Add interceptors before MAIN_TRANSPORT so they won't be ignored (#272) 2020-12-09 11:54:58 +01:00
Carter Kozak 8d5cfd326e HTTPCLIENT-2104: ManagedHttpClientConnectionFactory supports ResponseOutOfOrderStrategy configuration 2020-12-06 16:38:16 -05:00
Oleg Kalnichevski 22cf9671b1 Fixed generics 2020-12-02 16:11:30 +01:00
Gary Gregory 75f9adea87 Remove redundant returns. 2020-11-24 09:22:25 -05:00
Gary Gregory 712148ecc3 Remove redundant modifiers.
- All methods in a final class are already final.
- All members of an interface are public.
- All inner enums are static.
2020-11-24 09:22:25 -05:00
Gary Gregory 956b8194ff Simplify if/else. 2020-11-24 09:22:25 -05:00
Koji Lin bf1822c55e
Fix NPE when H2/Async client interceptors are added using first/last (#268) 2020-11-06 09:49:55 +01:00
Oleg Kalnichevski f6333a5001 HTTPCLIENT-2126: `InternalAbstractHttpAsyncClient` incorrectly handles response messages with no enclosed entity 2020-11-06 09:40:23 +01:00
Artem Smotrakov feb0377476 Fixed several findings from LGTM.com
- Fixed a few possible null dereferences
- Fixed a few possible out-of-bound array ops
- Added a couple of test cases
2020-10-30 15:51:50 +01:00
Gary Gregory 65c6c25070 [HTTPCLIENT-2124] NullPointerException in MinimalHttpClient.doExecute(HttpHost, ClassicHttpRequest, HttpContext) (#261) 2020-10-25 23:11:14 +01:00
Oleg Kalnichevski 1026a1e558 HTTPCLIENT-2122: async client to throw `HTTP/2 tunneling not supported` protocol exception in case of `force HTTP/2` version policy used along with request proxy routing 2020-10-22 20:27:28 +02:00
Oleg Kalnichevski e73b33c18b HTTPCLIENT-2123: H2AsyncClientBuilder incorrectly adds last request interceptors to the head of the interceptor list 2020-10-21 19:39:05 +02:00
Oleg Kalnichevski a2df6f1e32 HTTPCLIENT-2119: added missing system properties to HttpClientBuilder javadocs 2020-10-17 12:17:15 +02:00
Varun Sivapalan f9b46db6e0 Fix typo in enum 2020-10-06 10:17:11 +02:00
Oleg Kalnichevski 12a6579513 HTTPCLIENT-2118: Corrected PoolingHttpClientConnectionManager javadocs 2020-10-03 12:15:40 +02:00
Oleg Kalnichevski 918ac1535f RFC 3986 conformance: corrected handling of path segments by `URIUtils#normalizeSyntax`; optimized path segment operations 2020-09-27 12:36:29 +02:00
Oleg Kalnichevski 6395fa7c79 RFC 3986 conformance: revised and optimized `URIUtils#extractHost` 2020-09-27 12:36:28 +02:00
Oleg Kalnichevski 0524eed4b9 Replaced deprecated URLEncodedUtils 2020-09-27 12:36:28 +02:00
Oleg Kalnichevski ee26e23b31 Replaced deprecated TokenParser 2020-09-27 12:36:28 +02:00
Oleg Kalnichevski ee5437c1f1 Upgraded HttpCore dependency to version 5.1-beta1 2020-09-27 12:36:28 +02:00
Michael Osipov 5000f34690 Use decimal numbers for endpoint/execution IDs
This closes #249
2020-09-27 12:33:50 +02:00
Oleg Kalnichevski 1c55aa1548 HTTPCLIENT-2106: Added charset parameter for DigestScheme 2020-09-27 12:33:50 +02:00
Carter Kozak 1a70490aac HTTPCLIENT-2103: ManagedHttpClientConnectionFactory provides a fluent builder 2020-09-27 12:33:50 +02:00
Oleg Kalnichevski 594e5fcefb Upgraded HttpClient version to 5.0.3-SNAPSHOT 2020-09-27 12:12:59 +02:00
Michael Osipov c1de3c42de Move public suffix list to generate-resources and apache-release profile 2020-09-22 09:25:43 +02:00
Michael Osipov e13e4ff548 Unify JXR and Surefire report config 2020-09-22 09:25:43 +02:00