Draft interface clients autoconfiguration
- [ ] Add AOT instrumentation
- [ ] Add tests
- [x] Add javadocs
- [ ] Add documentation
Related sample repo: https://github.com/OlgaMaciaszek/demo-interfaceclients-autoconfig
Fixes gh-31337
Possible integrations to consider adding in other projects later on:
- Spring Cloud - resolve serviceId from qualifier
- Spring Cloud LoadBalancer - create load-balanced client beans
- Spring Cloud LoadBalancer - use RestTemplate.Builder as well
- Spring Cloud CircuitBreaker - create client beans with ciruit-breaking set up
- IntelliJ (and other IDEs - resolve annotated clients as visible for autowiring)
Setting 3.4.1 in Javadoc @since entries, as I assume that's the earliest we can get it in.
We still have 3.4.0-M3 in September an RC1 in October so 3.4.0 remains a possibility. If we don't manage that, it'd have to wait until a 3.5 milestone as we really try not to ship enhancements in maintenance releases.
Hey @OlgaMaciaszek , would you consider accepting community contributions for these autoconfigurations? It would be really nice to have this in 3.5 and me and @radoslaw-panuszewski are willing to help 🙂
@aleksandrserbin @radoslaw-panuszewski thanks a lot for reaching out. We've decided to change our approach by moving some of the implementation to Framework and, hence, move it all to after next Framework release (and that was the reason we've moved it to Boot 4.0); we are now actively working on it and a new PR will be submitted shortly, based some additional building blocks created for Framework, so this is probably one of the cases where it would not make much sense to request community PR as we have the changes in the works already as we speak.
I see, it makes sense, thank you!
Working on a revised approach based on new changes in FW. A new PR to follow.