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

Switch HttpServiceFactory and RSocketServiceProxyFactory to builder model for programmatic configuration first #29296

Closed
rstoyanchev opened this issue Oct 10, 2022 · 0 comments
Assignees
Labels
in: messaging Issues in messaging modules (jms, messaging) in: web Issues in web modules (web, webmvc, webflux, websocket) type: enhancement A general enhancement
Milestone

Comments

@rstoyanchev
Copy link
Contributor

We started with a builder, but in #28505 switched to expecting a bean declaration when EmbeddedValueResolverAware support was added, and also with the expectation it would be declared as a bean in Boot autoconfig.

Internal review has now pointed out that it's more likely for Boot autoconfig to want to declare an HttpServiceFactory.Builder bean to share common builder config for different remote services. That way Boot could plug in the EmbeddedValueResolver and ConversionService by default, and allow application customizers to make changes too.

This would also align with the pattern from the WebClient autoconfig works which declares a WebClient.Builder prototype bean. However, in this case, to create the final factory instance, the application would inject both a HttpServiceFactory.Builder and a WebClient.Builder to complete the build setup.

A bit late for enough feedback cycles for RC1, but we'll aim for RC2.

@rstoyanchev rstoyanchev added in: messaging Issues in messaging modules (jms, messaging) in: web Issues in web modules (web, webmvc, webflux, websocket) type: enhancement A general enhancement labels Oct 10, 2022
@rstoyanchev rstoyanchev added this to the 6.0.0-RC2 milestone Oct 10, 2022
@rstoyanchev rstoyanchev self-assigned this Oct 10, 2022
@rstoyanchev rstoyanchev changed the title Switch HttpServiceFactory to builder model for programmatic configuration first Switch HttpServiceFactory and RSocketServiceProxyFactory to builder model for programmatic configuration first Oct 10, 2022
rstoyanchev added a commit that referenced this issue Oct 17, 2022
HttpServiceProxyFactory now support programmatic initialization through
a builder, while bean-style initialization is deprecated.

See gh-29296
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
in: messaging Issues in messaging modules (jms, messaging) in: web Issues in web modules (web, webmvc, webflux, websocket) type: enhancement A general enhancement
Projects
None yet
Development

No branches or pull requests

1 participant