Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Web client http context lifecycle cleanup #2707

Merged
merged 11 commits into from
Jan 21, 2025

Conversation

vietj
Copy link
Contributor

@vietj vietj commented Jan 21, 2025

Motivation:

The web client implementation HttpContext has been designed when Vert.x was still using handler of async results. Since the update to using the future model mainstream the implementation although it has been updated to use futures has not been fully updated and the internal still use artificial promises to connect the flow between the various execution phases of the context.

This rewrites partly the implementation of HttpContext to remove un-necessary logic (e.g. the creation of intermediary promises) and simplify the implementation to make it easier to reason about the flow of execution phases.

In addition the body codec SPI has been slightly simplified (transformed an un-necessary handler async result into a synchronous method.

@vietj vietj added this to the 5.0.0 milestone Jan 21, 2025
@vietj vietj self-assigned this Jan 21, 2025
@vietj vietj marked this pull request as ready for review January 21, 2025 15:25
@vietj vietj merged commit e0268e7 into master Jan 21, 2025
7 checks passed
@vietj vietj deleted the web-client-http-context-lifecycle-cleanup branch January 21, 2025 15:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

1 participant