554 Commits

Author SHA1 Message Date
Damiano Albani
3403571c18 Fix minor typo in Javadoc 2023-03-13 15:42:38 +01:00
Oleg Kalnichevski
22e5a0be6b Upgraded HttpClient version to 5.2.2-SNAPSHOT 2022-12-07 14:09:11 +01:00
Oleg Kalnichevski
2f87e4a6b7 Regression: async execution runtimes set the negotiated protocol version in the execution context at the wrong point of request execution 2022-11-21 22:37:49 +01:00
Bryan Keller
9cde791f35 Cancel connection request on exception 2022-11-14 22:16:43 +01:00
Gary Gregory
290ec22022 Fix compiler warnings in tests
Use try-with-resources, also avoids possible leaks on test failures
2022-11-14 22:13:14 +01:00
Gary Gregory
230a2caf67 Replace deprecated use of LangUtils#equals() with Objects.equals() 2022-11-14 09:57:05 -05:00
Oleg Kalnichevski
0ca5635898 HTTPCLIENT-2247: Test cases to document present assumptions about the correct handling of public domain suffixes 2022-11-13 12:28:53 +01:00
Oleg Kalnichevski
32228cd4ff Regression: Multipart body builder and multipart formatters fail to escape special characters such as backslash and quote mark 2022-11-13 12:28:51 +01:00
Oleg Kalnichevski
e52ff02f74 Upgraded HttpClient version to 5.2.1-SNAPSHOT 2022-11-13 12:28:46 +01:00
Oleg Kalnichevski
16b2cf467d HTTPCLIENT-2242: RoutingSupport fails to copy InetAddress when normalizing HttpHost 2022-11-06 11:18:15 +01:00
Oleg Kalnichevski
fe1e095ef9 Regression: connection managers fail to take into account per route connection config when closing expired connections 2022-11-06 11:11:53 +01:00
Oleg Kalnichevski
d76d27bed7 Bug fix: PoolingAsyncClientConnectionManager fails to update the execution context upon upgrade to HTTP/2 2022-11-05 16:42:47 +01:00
Oleg Kalnichevski
7626230ffd Fixed integration tests broken by JUnit 5 upgrade 2022-11-05 11:16:05 +01:00
Oleg Kalnichevski
ba45d80b07 HTTPCLIENT-2240: fixed incorrect CONNECT method initialization in ProxyClient 2022-10-23 20:01:46 +02:00
Oleg Kalnichevski
646ff6988e Corrected ClientExecuteProxy example 2022-10-23 20:01:46 +02:00
Oleg Kalnichevski
7ab435c271 HTTPCLIENT-2236: MultihomeIOSessionRequester fails to enhance the cause exception in case of connect failure if the remoteAddress argument has been given 2022-10-03 15:25:19 +02:00
dependabot[bot]
fd86093db6 Bump download-maven-plugin from 1.6.0 to 1.6.8
Bumps [download-maven-plugin](https://github.com/maven-download-plugin/maven-download-plugin) from 1.6.0 to 1.6.8.
- [Release notes](https://github.com/maven-download-plugin/maven-download-plugin/releases)
- [Commits](https://github.com/maven-download-plugin/maven-download-plugin/compare/1.6.0...1.6.8)

---
updated-dependencies:
- dependency-name: com.googlecode.maven-download-plugin:download-maven-plugin
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-10-02 16:46:07 +02:00
Gary Gregory
bfa6a5ea72 Use Objects.toString() instead of String type cast 2022-10-02 16:46:07 +02:00
Oleg Kalnichevski
9c0575494a HTTPCLIENT-2232: last protocol interceptrs moved at the end of the H2 protocol processing pipeline 2022-09-11 18:50:45 +02:00
Oleg Kalnichevski
ed7701c509 H2 async runtime to proactively set HTTP/2 protocol version in the execution context 2022-09-11 18:47:31 +02:00
Oleg Kalnichevski
3fe6a8bcdf HTTPCLIENT-2231: a race condition in the main async exec when the request execution on an I/O thread is faster then execution pipeline management on the client thread 2022-08-19 14:04:25 +02:00
Arturo Bernal
18fa09f6a2 Avoid duplicate redundant objects and use Singleton instead. 2022-07-08 19:11:10 +02:00
Gary Gregory
1cd12fc1dc Cleaning up:
- Super interface already implements FutureCallback
- No need to override methods to only call super
- Add missing Javadoc tag
- Access static field directly
2022-07-06 10:13:23 -04:00
jkmcl
69e2ed6c41 Remove unused local variable 2022-07-01 10:50:03 +02:00
jkmcl
8d9b52abd1 Remove redundant if 2022-07-01 10:50:03 +02:00
Oleg Kalnichevski
3771129376 HTTPCLIENT-2225: connection route calculation does not take the default RequestConfig into account 2022-06-29 09:46:19 +02:00
jkmcl
518eb410fe Avoid unnecessary use of Instant.toEpochMilli
Avoid unnecessary use of Instant.toEpochMilli by using Instant.compareTo
to compare Instants direclty
2022-06-26 23:34:51 +02:00
jkmcl
15951d8094 Use HTTP header name constants
Use HTTP header name constants instead of string literals.
2022-06-20 19:25:00 +02:00
Carter Kozak
944e308a52 ResponseEntityProxy.writeTo(null) leaves connections in the correct state
Previously writeTo would conditionally delegate to the wrapped
entity if the provided outputstream was non-null, however in the
null case the entity would not be drained and the connection would
be released potentially with bytes remaining. If this occurs in
practice, it may result in timeouts as the server expects to write
data to the response while the client is attempting to send a
request.
2022-06-13 19:29:19 +02:00
Carter Kozak
3bd017cb0a HTTPCLIENT-2221 Closing a classic response/entity allows connection reuse
Previously, a partially consumed response body closed via
CloseableHttpResponse.close or HttpEntity.close would fully consume
remaining bytes (via close), however it would not release the
connection for reuse.
If CloseableHttpResponse.close was called, it would follow the close
with a discard/disconnect, however if only the entity was closed,
the connection would remain in a checked-out (leaked) state.

Now, we take advantage of the fact that closing a response stream
on any reusable connection is required to drain bytes on closure.
Failures are detected by writeTo and the stream returned by
getContent, so we can be confident that we will not return a
broken connection to the pool.
2022-06-11 14:11:06 +02:00
Oleg Kalnichevski
8dbaf131f5 Upgraded HttpClient version to 5.2-beta2-SNAPSHOT 2022-06-07 14:42:03 +02:00
Oleg Kalnichevski
91a93accd7 Corrected javadoc errors in Base64 2022-06-03 23:48:13 +02:00
j3graham
26dcc6f914 HTTPCLIENT-2218: Use Java 8 Base64 utility (#370) 2022-06-01 23:04:29 +02:00
殷成涛
db47570efe
add br decompression support (#363) 2022-05-18 15:18:25 +02:00
niranjan ghule
34327ae83e Refactor testcase 2022-05-11 11:56:59 +02:00
niranjan ghule
daac18619a Remove unused code 2022-05-05 10:52:49 +02:00
Oleg Kalnichevski
62fb4bcbe0 HTTPCLIENT-2212: MinimalHttpAsyncClient fails to release client endpoints in case of a connect error (such as TLS handshake failure) 2022-05-05 10:47:27 +02:00
Richard Hernandez
36678c44dc Create daemon threads in InternalAbstractHttpAsyncClient 2022-04-06 12:22:36 -07:00
Anthony Baldocchi
94017237b2
HTTPCLIENT-2080: add getRetryInterval to HttpRequestRetryStrategy for use on retriable IOExceptions (#356) 2022-03-30 16:31:07 +02:00
Ryan Schmitt
c395aad5ad Fix infinite recursion in SSLConnectionSocketFactory 2022-03-23 09:09:14 +01:00
Oleg Kalnichevski
f00ce5da9e HTTPCLIENT-2200: Protocol interceptors are executed before the connection route has been fully established 2022-03-17 17:43:22 +01:00
Oleg Kalnichevski
a3bbcc82ae Upgraded HttpCore to version 5.2-beta1 2022-03-17 17:18:12 +01:00
John Gallagher
5f9bc347ee StringBody: just write the bytes to the output stream 2022-03-16 10:01:24 +01:00
Andriy Redko
6a487ba686
HTTPCLIENT-2209: Pass HttpContext to AsyncClientConnectionOperator (#353) 2022-03-12 18:53:45 +01:00
David Schlosnagle
04aeaa5bcd
Optimize ExecSupport.getNextExchangeId() (#352) 2022-02-26 12:45:18 +01:00
cda007
157174543f Added option to set an IOSessionListener on async client builders 2022-02-21 12:15:30 +01:00
Oleg Kalnichevski
19626731c0 HTTPCLIENT-2203: Corrected target host normalization by the request execution interceptors; added ContextBuilder with support for preemptive authentication initialization 2022-02-13 20:07:47 +01:00
Oleg Kalnichevski
8881ef4b3f Fixed incompatibility with older versions of Android shipping with Commons Codec < 1.4 2022-01-24 14:16:33 +01:00
Oleg Kalnichevski
235900eb57 Bug fix: ByteArrayBuilder incorrectly handles empty strings 2022-01-24 14:05:33 +01:00
Andrei Vasilev
75e8dc6f9b HTTPCLIENT-2198, Fixed NPE in TlsConfig.toString()
Replaced called to Arrays.asList() to Arrays.toString(), which allows for null argument.
2022-01-22 08:55:40 +01:00