Class RetryableLoadBalancerExchangeFilterFunction
- java.lang.Object
-
- org.springframework.cloud.client.loadbalancer.reactive.RetryableLoadBalancerExchangeFilterFunction
-
- All Implemented Interfaces:
LoadBalancedExchangeFilterFunction
,org.springframework.web.reactive.function.client.ExchangeFilterFunction
public class RetryableLoadBalancerExchangeFilterFunction extends Object implements LoadBalancedExchangeFilterFunction
AnExchangeFilterFunction
that usesReactiveLoadBalancer
to execute requests against a correctServiceInstance
and Reactor Retries to retry the call both against the same and the next service instance, based on the providedLoadBalancerRetryPolicy
.- Since:
- 3.0.0
- Author:
- Olga Maciaszek-Sharma
-
-
Constructor Summary
Constructors Constructor Description RetryableLoadBalancerExchangeFilterFunction(LoadBalancerRetryPolicy.Factory retryPolicyFactory, ReactiveLoadBalancer.Factory<ServiceInstance> loadBalancerFactory, List<LoadBalancerClientRequestTransformer> transformers)
RetryableLoadBalancerExchangeFilterFunction(LoadBalancerRetryPolicy retryPolicy, ReactiveLoadBalancer.Factory<ServiceInstance> loadBalancerFactory, LoadBalancerProperties properties)
Deprecated.RetryableLoadBalancerExchangeFilterFunction(LoadBalancerRetryPolicy retryPolicy, ReactiveLoadBalancer.Factory<ServiceInstance> loadBalancerFactory, LoadBalancerProperties properties, List<LoadBalancerClientRequestTransformer> transformers)
Deprecated.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected reactor.core.publisher.Mono<Response<ServiceInstance>>
choose(String serviceId, Request<RetryableRequestContext> request)
reactor.core.publisher.Mono<org.springframework.web.reactive.function.client.ClientResponse>
filter(org.springframework.web.reactive.function.client.ClientRequest clientRequest, org.springframework.web.reactive.function.client.ExchangeFunction next)
-
-
-
Constructor Detail
-
RetryableLoadBalancerExchangeFilterFunction
@Deprecated public RetryableLoadBalancerExchangeFilterFunction(LoadBalancerRetryPolicy retryPolicy, ReactiveLoadBalancer.Factory<ServiceInstance> loadBalancerFactory, LoadBalancerProperties properties)
Deprecated.
-
RetryableLoadBalancerExchangeFilterFunction
@Deprecated public RetryableLoadBalancerExchangeFilterFunction(LoadBalancerRetryPolicy retryPolicy, ReactiveLoadBalancer.Factory<ServiceInstance> loadBalancerFactory, LoadBalancerProperties properties, List<LoadBalancerClientRequestTransformer> transformers)
Deprecated.
-
RetryableLoadBalancerExchangeFilterFunction
public RetryableLoadBalancerExchangeFilterFunction(LoadBalancerRetryPolicy.Factory retryPolicyFactory, ReactiveLoadBalancer.Factory<ServiceInstance> loadBalancerFactory, List<LoadBalancerClientRequestTransformer> transformers)
-
-
Method Detail
-
filter
public reactor.core.publisher.Mono<org.springframework.web.reactive.function.client.ClientResponse> filter(org.springframework.web.reactive.function.client.ClientRequest clientRequest, org.springframework.web.reactive.function.client.ExchangeFunction next)
- Specified by:
filter
in interfaceorg.springframework.web.reactive.function.client.ExchangeFilterFunction
-
choose
protected reactor.core.publisher.Mono<Response<ServiceInstance>> choose(String serviceId, Request<RetryableRequestContext> request)
-
-