Commit Graph

2842 Commits

Author SHA1 Message Date
Oleg Kalnichevski 5da1bd8f8d Builder for caching HTTP/2 HttpAsyncClient 2017-11-14 21:17:44 +01:00
Oleg Kalnichevski e3cd57a570 Fixed ALPN handshake failure in HTTP/2 integration tests 2017-11-14 19:27:25 +01:00
Oleg Kalnichevski 6228a73613 * HTTP/2 multiplexing HttpAsyncClient implementation
* Restructured integration tests to reduce test duplication
2017-11-13 22:30:12 +01:00
Oleg Kalnichevski 703b7968c5 Treat System#getProperty as a privileged action 2017-11-13 10:46:09 +01:00
Oleg Kalnichevski 3db1228242 Improved minimal HttpAsyncClient implementation; added minimal HTTP/2 multiplexing HttpAsyncClient implementation 2017-11-12 16:20:58 +01:00
Oleg Kalnichevski 79c153409b Async exec runtime and connection management improvements 2017-11-12 16:20:58 +01:00
Oleg Kalnichevski d992bec7ad Fixed handling of task cancelation 2017-11-12 16:20:27 +01:00
Oleg Kalnichevski 1577356f37 Fixed handling of request configuration by async clients 2017-11-09 11:26:51 +01:00
Oleg Kalnichevski 7c0a1127be Multi-home DNS aware implementation of ConnectionInitiator; ConnectTimeoutException and HttpHostConnectException to use NamedEndpoint instead of HttpHost 2017-11-08 15:01:18 +01:00
Oleg Kalnichevski 2ad0370517 Revised handling of non-repeatable requests 2017-11-07 09:42:07 +01:00
Oleg Kalnichevski 45f1a2a740 Improved internal client exchange handling code 2017-11-05 13:57:34 +01:00
Oleg Kalnichevski 389272de3a Upgraded HttpCore dependency to version 5.0-beta1 2017-11-05 13:57:34 +01:00
Oleg Kalnichevski d88e32f952 Annotation for cacheable auth schemes 2017-11-04 11:10:22 +01:00
Oleg Kalnichevski 668e1d04ce Upgraded HttpComponents Parent to version 10 2017-11-01 22:31:34 +01:00
Oleg Kalnichevski 87865c5cd5 Fixed style check violations (no functional changes) 2017-11-01 22:30:52 +01:00
Oleg Kalnichevski a403075948 HTTPCLIENT-1873: Config option for Kerberos delegation 2017-10-23 11:36:14 +02:00
Oleg Kalnichevski d054442cdf Compatibility with Java 9 (tested with Oracle JDK 9.0.1); updated SSL/TLS examples 2017-10-22 17:15:50 +02:00
Oleg Kalnichevski 572a370f4b Added #toString() 2017-10-22 17:13:55 +02:00
Oleg Kalnichevski 23425a1379 Added Oracle JDK 9 to Travis CI config 2017-10-22 14:35:25 +02:00
Oleg Kalnichevski 09aee8c422 Removed #finalize() methods deprecated in Java 9 2017-10-22 14:33:01 +02:00
Oleg Kalnichevski 9368c5f5c8 HTTPCLIENT-1855: disabled caching of DIGEST auth scheme instances due to unreliability of nonce counter when the auth cache is shared by multiple sessions 2017-10-20 12:04:26 +02:00
Oleg Kalnichevski 2155361d3b HTTPCLIENT-1866: upgraded log4j to version 2.9.1 2017-10-19 16:19:08 +02:00
Oleg Kalnichevski db01dbf4b1 Upgraded Memcached to version 2.12.3 2017-10-19 15:52:50 +02:00
Oleg Kalnichevski 26024a3b8e Upgraded Ehcache to version 3.4.0 2017-10-19 15:52:30 +02:00
Oleg Kalnichevski f215fdcd32 Factored out logic shared by Memcached and Ehcache implementations into an abstract base class 2017-10-19 15:36:11 +02:00
Oleg Kalnichevski f70c974241 Renamed class (no functional changes) 2017-10-16 23:41:40 +02:00
Oleg Kalnichevski fc41f47ad3 CacheInvalidator to use URI class instead of URL 2017-10-16 23:39:11 +02:00
Oleg Kalnichevski 935573104c Use stable (HttpRequest implementation independent) implementation of key generation 2017-10-16 23:01:13 +02:00
Oleg Kalnichevski 0aa4b8183b Added HTTP cache integration tests 2017-10-16 23:00:19 +02:00
Oleg Kalnichevski 74ed4dfebf Revised HTTP cache debug logging 2017-10-16 23:00:19 +02:00
Oleg Kalnichevski 30320fe2f4 Fixed NPE in case of a missing Max-Forwards header 2017-10-16 23:00:19 +02:00
Oleg Kalnichevski 0c862432d8 Removed unstable (due to a race condition) integration test 2017-10-16 23:00:19 +02:00
Oleg Kalnichevski 45f1657907 HTTPCLIENT-1827: Builder for CachingHttpAsyncClient instances with full support for streamed HTTP exchanges 2017-10-16 22:59:26 +02:00
Oleg Kalnichevski 849d1a138e HTTPCLIENT-1827: Asynchronous cache exec interceptor with caching support for streamed HTTP exchanges; removed incomplete response checks as response integrity is enforced in the transport layer; async cache re-validation is currently broken in the classic and unsuppoted in the async implementations 2017-10-16 22:51:32 +02:00
Oleg Kalnichevski 6076f5542b Fixed regression in cache validity logic for file backed cache entries 2017-10-13 13:22:23 +02:00
Oleg Kalnichevski bb96781e5b Revised HTTP cache exception handling 2017-10-12 15:42:17 +02:00
Oleg Kalnichevski b24aa01866 Upgraded parent POM to version 9; Removed explicit plugin version declaration (should be inherited from the parent POM) 2017-10-04 14:04:17 +02:00
Oleg Kalnichevski 212d7a2e83 Reduced dependency on classic (blocking) I/O APIs in CacheExec 2017-10-03 10:41:15 +02:00
Oleg Kalnichevski e71d8fac88 Removed IOUtils as redundant; try-with-resources for resource management 2017-10-03 09:43:03 +02:00
Oleg Kalnichevski 1d66105c3a Removed dependency on classic (blocking) I/O APIs from CachedHttpResponseGenerator 2017-10-02 22:00:38 +02:00
Oleg Kalnichevski 0226eaff6d Removed dependency on classic (blocking) I/O APIs from RequestProtocolCompliance and ResponseProtocolCompliance; removed compliance checks unrelated to HTTP caching enforced by protocol handlers 2017-10-02 17:34:40 +02:00
Oleg Kalnichevski d75c5c2be2 Removed dependency on classic (blocking) I/O APIs from ConditionalRequestBuilder 2017-10-02 17:34:40 +02:00
Oleg Kalnichevski 20f4290d01 Removed dependency on classic (blocking) I/O APIs from HttpCache 2017-10-02 17:34:40 +02:00
Oleg Kalnichevski 73c67f221d Redesign of HTTP cache resource APIs 2017-10-02 17:33:41 +02:00
Oleg Kalnichevski e2a464084c Removed deprecated code 2017-10-01 11:42:51 +02:00
Oleg Kalnichevski f959d44ec7 Deprecated Content-Transfer-Encoding field in MIME body parts per RFC 7578, section 4.7 2017-09-30 23:51:52 +02:00
Ioannis Sermetziadis a424709d89 HTTPCLIENT-293 Implemented the percent encoding of the filename parameter of the Content-Disposition header based on RFC7578 sections 2 and 4.2. In the new MultipartForm implementation I included a PercentCodec that performs encoding/decoding to/from the percent encoding as described in RFC7578 and RFC3986. 2017-09-30 23:51:43 +02:00
Ioannis Sermetziadis 9560aef476 HTTPCLIENT-293 Refactored code in order to support multipart header field parameters in the data model and postpone the formatting and encoding of the parameters until the moment written into a stream, which is essential in order to avoid multiple encodings of the same value. 2017-09-30 23:51:22 +02:00
Oleg Kalnichevski 9ac5808bdb Added MessageCopier and implementations for HttpRequest and ClassicHttpRequest messages; removed message copy methods from ExecSupport 2017-09-30 23:00:45 +02:00
Oleg Kalnichevski e8972624ac Redesign of SimpleHttpRequest / SimpleHttpResponse APIs 2017-09-29 17:02:41 +02:00