-
Notifications
You must be signed in to change notification settings - Fork 806
Open
Labels
enhancementNew feature or requestNew feature or requesthelp wantedExtra attention is neededExtra attention is needed
Description
Is your feature request related to a problem? Please describe.
My application needs to add a custom Client
like FeignBlockingLoadBalancerClient
, e.g.
public class CustomFeignBlockingLoadBalancerClient implements Client {
...
}
CustomFeignBlockingLoadBalancerClient
will add some extensions to FeignBlockingLoadBalancerClient
, like tracing.
This works pretty well when using load-balanced clients. But when mixed with load-balanced and non-load-balanced clients, FeignClientFactoryBean
hard coded to work with FeignBlockingLoadBalancerClient
to get the delegate
if (client != null) {
if (client instanceof FeignBlockingLoadBalancerClient) {
// not load balancing because we have a url,
// but Spring Cloud LoadBalancer is on the classpath, so unwrap
client = ((FeignBlockingLoadBalancerClient) client).getDelegate();
}
if (client instanceof RetryableFeignBlockingLoadBalancerClient) {
// not load balancing because we have a url,
// but Spring Cloud LoadBalancer is on the classpath, so unwrap
client = ((RetryableFeignBlockingLoadBalancerClient) client).getDelegate();
}
builder.client(client);
}
see #776
Describe the solution you'd like
see #776
Describe alternatives you've considered
see #776
Additional context
NA
This issue is created for future enhancement to loadbalancer client customization.
Metadata
Metadata
Assignees
Labels
enhancementNew feature or requestNew feature or requesthelp wantedExtra attention is neededExtra attention is needed