Commit Graph

3654 Commits

Author SHA1 Message Date
Oleg Kalnichevski 1cd7f8f2d0 Moved test cases that require an embedded test server to the integration test module 2024-06-21 11:06:57 +02:00
Oleg Kalnichevski 034cd65aa5 Redesign of test server APIs and integration test setup 2024-06-21 10:49:11 +02:00
Arturo Bernal 336263da6c
Fix HTTPCLIENT-2331: Skip cookie header generation if a Cookie header is already present (#561)
This fix ensures that if a Cookie header is already present in the request, HttpClient skips adding additional Cookie headers from the BasicCookieStore.
2024-06-20 08:05:55 +02:00
Gary Gregory 4c42c70a51 Tokenizer is immutable and thread safe, so reuse it. 2024-06-10 18:27:21 -04:00
Gary Gregory 225edf5ea8 Javadoc singleton versus default instances 2024-06-10 18:21:36 -04:00
Oleg Kalnichevski 215571a0bd HTTPCLIENT-2326: Propagate original proxy response to the caller in case of HTTP CONNECT request failure 2024-06-06 14:32:33 +02:00
Oleg Kalnichevski def10b4c77 Javadoc correction 2024-06-05 14:44:49 +02:00
Gary Gregory ebd5d87340 Use the same spacing in log message as other entries 2024-05-22 13:51:16 -04:00
Gary Gregory 15b93d481b Javadoc
- Add generic type documentation
- Add parameter documentation
2024-05-22 13:49:54 -04:00
jattisha 0f37ebdc7d
HTTPCLIENT-2327: Propagate CancellationExceptions from MemcachedClient operations as ResourceIOExceptions (#559) 2024-05-16 15:31:22 +02:00
Oleg Kalnichevski 32e7f6cce0 Added Java 21 in the Maven build matrix; removed Java 8 (MacOS) 2024-04-28 17:14:25 +02:00
Oleg Kalnichevski a0a38afbee Made handling of refused tunnel exception consistent between the classic and async protocol handler implementations; Proxy response body no longer gets buffered in memory in order to avoid excessive resource allocation in case of a proxy misbehavior 2024-04-25 10:54:36 +02:00
Richard Tippl 5eb15a1be4 Callbacks for Connection initialization 2024-04-09 15:00:15 +02:00
Gary Gregory 17142a7e74 Add missing Javadoc tag 2024-04-03 08:04:19 -04:00
Gary Gregory c33f8ab4ac Add unit test for InMemoryDnsResolver 2024-04-02 10:48:44 -04:00
Vladimir Sitnikov 3b9bc89c26 HTTPCLIENT-2325 Avoid adding "; charset=" for multipart/form-data requests
Previusly, "charset" parameter was added to the Content-Type header, however adding "charset=..."
is not specified in RFC 7578, and it causes issues with (flawed?) HTTP servers.

The change does not modify ContentType.MULTIPART_FORM_DATA, and it might have backward compatibility
side-effects.

See
* https://github.com/apache/jmeter/issues/6250
* 6e56950cdf
* https://bz.apache.org/bugzilla/show_bug.cgi?id=61384
* https://github.com/akka/akka-http/issues/338
2024-03-18 19:05:12 +01:00
dependabot[bot] ccff40612c Bump com.googlecode.maven-download-plugin:download-maven-plugin
Bumps [com.googlecode.maven-download-plugin:download-maven-plugin](https://github.com/maven-download-plugin/maven-download-plugin) from 1.7.1 to 1.8.1.
- [Release notes](https://github.com/maven-download-plugin/maven-download-plugin/releases)
- [Commits](https://github.com/maven-download-plugin/maven-download-plugin/compare/1.7.1...1.8.1)

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

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-11 13:20:28 +01:00
dependabot[bot] 4326a5ee7b Bump log4j.version from 2.22.0 to 2.23.0
Bumps `log4j.version` from 2.22.0 to 2.23.0.

Updates `org.apache.logging.log4j:log4j-slf4j-impl` from 2.22.0 to 2.23.0

Updates `org.apache.logging.log4j:log4j-core` from 2.22.0 to 2.23.0

---
updated-dependencies:
- dependency-name: org.apache.logging.log4j:log4j-slf4j-impl
  dependency-type: direct:production
  update-type: version-update:semver-minor
- dependency-name: org.apache.logging.log4j:log4j-core
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-11 11:36:33 +01:00
dependabot[bot] 7efadb7676 Bump org.junit:junit-bom from 5.10.1 to 5.10.2
Bumps [org.junit:junit-bom](https://github.com/junit-team/junit5) from 5.10.1 to 5.10.2.
- [Release notes](https://github.com/junit-team/junit5/releases)
- [Commits](https://github.com/junit-team/junit5/compare/r5.10.1...r5.10.2)

---
updated-dependencies:
- dependency-name: org.junit:junit-bom
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-11 11:36:21 +01:00
dependabot[bot] bc301b2972 Bump actions/dependency-review-action from 3 to 4
Bumps [actions/dependency-review-action](https://github.com/actions/dependency-review-action) from 3 to 4.
- [Release notes](https://github.com/actions/dependency-review-action/releases)
- [Commits](https://github.com/actions/dependency-review-action/compare/v3...v4)

---
updated-dependencies:
- dependency-name: actions/dependency-review-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-11 11:10:06 +01:00
dependabot[bot] e208571eb9 Bump actions/cache from 3 to 4
Bumps [actions/cache](https://github.com/actions/cache) from 3 to 4.
- [Release notes](https://github.com/actions/cache/releases)
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md)
- [Commits](https://github.com/actions/cache/compare/v3...v4)

---
updated-dependencies:
- dependency-name: actions/cache
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-11 10:05:24 +01:00
Oleg Kalnichevski ccfb674a1e Upgraded HttpClient version to 5.4-alpha3-SNAPSHOT 2024-03-11 09:39:26 +01:00
Oleg Kalnichevski ce1aeb0d27 Updated release notes for HttpClient 5.4-alpha2 release 2024-03-06 19:00:20 +01:00
Oleg Kalnichevski eb6fd6b1c2 HttpClientContext and HttpCacheContext to use instance variables for standard attributes 2024-02-29 17:12:35 +01:00
Oleg Kalnichevski 762b18fe69 HttpClientContext to use instance variables for standard attributes 2024-02-29 17:12:35 +01:00
Arturo Bernal f2b9a374d8
HTTPCLIENT-2319 / Updated the parseDate method to solely catch DateTimeException, streamlining error handling for date parsing and conversion. This change ensures comprehensive management of parsing issues, including those due to absent time-zone information, aligning with our documentation that the method should return null when conversion to Instant is not feasible. (#551) 2024-02-23 18:45:06 +01:00
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