HTTP Interfaces are great but it's impossible to replace pure RestClient calls in all cases.
For instance, code like
restClient.put()
.uri(...)
.body(body -> {
//use body as OutputStream
})
.retrieve()
.toBodilessEntity();
or
restClient.get()
.uri(...)
.exchange((req, resp) -> {
var inputStream = resp.getBody());
//use inputStream
});
cannot be replaced with HTTP Interface (as I know).
It causes minor inconvenience as HTTP Interface is used in 99% cases but RestClient is still injected to cover cases like download/upload large files without significant memory consumption and all other cases where Stream processing is needed.
Propose to add: