-
Notifications
You must be signed in to change notification settings - Fork 38.5k
Align codec configuration in ExchangeStrategies.Builder and WebFluxConfigurer [SPR-15682] #20241
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
Comments
Rossen Stoyanchev commented
Also having had some time after these change I must say I am not fond of the way defaultCodecs and customCodecs hide ClientCodecConfigurer. The types names they expose directly aren't meant to be used directly but rather in support of the fluent builder API. They're long and the config looks more complex having two things for what is conceptually one common category. |
Arjen Poutsma commented To understand why I did this, it's better to look at
While |
Arjen Poutsma commented
I am not saying I like it either, but most users will probably use lambdas to consume defaultCodecs and customCodecs, so they won't see the types. Alternatively, the only way I can see Exchange- and HandlerStrategies exposing |
Brian Clozel commented I've pushed a first commit in 52148a10, but I haven't done anything related to the Is there something missing here? Could you provide a bit more guidance so I can make the relevant changes and add more tests in that area? |
Rossen Stoyanchev commented Looks right to me. |
Arjen Poutsma commented To me as well. |
Brian Clozel commented Thanks! |
Brian Clozel opened SPR-15682 and commented
While working on a Spring Boot issue regarding codecs configuration, I've noticed that the reactive server and client codec configurations don't provide the same API.
On the server side, we're dealing with a
ServerCodecConfigurer
:The client configuration is dealt with
ExchangeStrategies
, which declares:Those methods provide extension points that aren't aligned with the server side.
To better align those configurations and allow code reuse in the infrastructure setup, I'd like to add the following (and remove the existing ones?):
Affects: 5.0 RC2
Reference URL: spring-projects/spring-boot#9166
Referenced from: commits 52148a1
The text was updated successfully, but these errors were encountered: