public final class CircuitBreakerHttpClient extends CircuitBreakerClient<HttpRequest,HttpResponse> implements HttpClient
HttpClient decorator that handles failures of HTTP requests based on circuit breaker pattern.execute, reportSuccessOrFailure, strategy, strategyWithContentas, delegate, toStringclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitexecutepublic static Function<? super HttpClient,CircuitBreakerHttpClient> newDecorator(CircuitBreaker circuitBreaker, CircuitBreakerStrategy strategy)
CircuitBreaker instance and
CircuitBreakerStrategy.
Since CircuitBreaker is a unit of failure detection, don't reuse the same instance for
unrelated services.
public static Function<? super HttpClient,CircuitBreakerHttpClient> newDecorator(CircuitBreakerMapping mapping, CircuitBreakerStrategy strategy)
CircuitBreakerMapping and
CircuitBreakerStrategy.
Since CircuitBreaker is a unit of failure detection, don't reuse the same instance for
unrelated services.
public static Function<? super HttpClient,CircuitBreakerHttpClient> newPerMethodDecorator(Function<String,CircuitBreaker> factory, CircuitBreakerStrategy strategy)
CircuitBreaker per HttpMethod with the specified
CircuitBreakerStrategy.
Since CircuitBreaker is a unit of failure detection, don't reuse the same instance for
unrelated services.
factory - a function that takes an HttpMethod and creates a new CircuitBreakerpublic static Function<? super HttpClient,CircuitBreakerHttpClient> newPerHostDecorator(Function<String,CircuitBreaker> factory, CircuitBreakerStrategy strategy)
CircuitBreaker per host with the specified
CircuitBreakerStrategy.
Since CircuitBreaker is a unit of failure detection, don't reuse the same instance for
unrelated services.
factory - a function that takes a host name and creates a new CircuitBreakerpublic static Function<? super HttpClient,CircuitBreakerHttpClient> newPerHostAndMethodDecorator(Function<String,CircuitBreaker> factory, CircuitBreakerStrategy strategy)
CircuitBreaker per host and HttpMethod with
the specified CircuitBreakerStrategy.
Since CircuitBreaker is a unit of failure detection, don't reuse the same instance for
unrelated services.
factory - a function that takes a host+method and creates a new CircuitBreakerpublic static CircuitBreakerHttpClientBuilder builder(CircuitBreakerStrategy strategy)
CircuitBreakerHttpClientBuilder with
the specified CircuitBreakerStrategy.public static CircuitBreakerHttpClientBuilder builder(CircuitBreakerStrategyWithContent<HttpResponse> strategyWithContent)
CircuitBreakerHttpClientBuilder with
the specified CircuitBreakerStrategyWithContent.protected HttpResponse doExecute(ClientRequestContext ctx, HttpRequest req, CircuitBreaker circuitBreaker) throws Exception
CircuitBreakerClientCircuitBreaker is in closed state.doExecute in class CircuitBreakerClient<HttpRequest,HttpResponse>ExceptionCopyright © 2020 LeanCloud. All rights reserved.