Accept any HttpRequest
instead of HttpUriRequest
in CommonHttpClient
#305
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Changes
This PR addresses a regression reportedly introduced in PR #290 when connecting via a proxy that requires authentication (see context).
The problem comes from a casting exception in
CommonHttpClient
which attempts to cast aBasicHttpRequest
(which represents the next request after receiving the auth required response) into aHttpUriRequest
. This PR solves the casting issue by processing the ancestor of both classes,HttpRequest
.Context
The regression was detected when trying to authenticate via a Proxy that requires authentication. In particular, the request to respond to the proxy's authentication request is automatically created as a
BasicHttpRequest
by the apacheHttpClient
.Tests
Unit tests and integration tests are passing. The fix was also verified by the user who uncovered the issue.
Note: we should add a regression test that simulate the proxy setting. However, I'd like to take the time to experiment with different configurations. Given that the change is relatively simple, I'd recommend to proceed with this PR and add the test in a follow-up PR.