Package dev.failsafe.internal
Class CircuitBreakerExecutor<R>
- java.lang.Object
-
- dev.failsafe.spi.PolicyExecutor<R>
-
- dev.failsafe.internal.CircuitBreakerExecutor<R>
-
- Type Parameters:
R- result type
public class CircuitBreakerExecutor<R> extends PolicyExecutor<R>
A PolicyExecutor that handles failures according to aCircuitBreaker.
-
-
Field Summary
Fields Modifier and Type Field Description private CircuitBreakerImpl<R>circuitBreaker
-
Constructor Summary
Constructors Constructor Description CircuitBreakerExecutor(CircuitBreakerImpl<R> circuitBreaker, int policyIndex)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected ExecutionResult<R>onFailure(ExecutionContext<R> context, ExecutionResult<R> result)Performs post-execution handling for aresultthat is considered a failure according toPolicyExecutor.isFailure(ExecutionResult), possibly creating a new result, else returning the originalresult.voidonSuccess(ExecutionResult<R> result)Performs post-execution handling for aresultthat is considered a success according toPolicyExecutor.isFailure(ExecutionResult).protected ExecutionResult<R>preExecute()Called before execution to return an alternative result or exception such as if execution is not allowed or needed.-
Methods inherited from class dev.failsafe.spi.PolicyExecutor
apply, applyAsync, getPolicyIndex, isFailure, onFailureAsync, postExecute, postExecuteAsync, preExecuteAsync
-
-
-
-
Field Detail
-
circuitBreaker
private final CircuitBreakerImpl<R> circuitBreaker
-
-
Constructor Detail
-
CircuitBreakerExecutor
public CircuitBreakerExecutor(CircuitBreakerImpl<R> circuitBreaker, int policyIndex)
-
-
Method Detail
-
preExecute
protected ExecutionResult<R> preExecute()
Description copied from class:PolicyExecutorCalled before execution to return an alternative result or exception such as if execution is not allowed or needed.- Overrides:
preExecutein classPolicyExecutor<R>
-
onSuccess
public void onSuccess(ExecutionResult<R> result)
Description copied from class:PolicyExecutorPerforms post-execution handling for aresultthat is considered a success according toPolicyExecutor.isFailure(ExecutionResult).- Overrides:
onSuccessin classPolicyExecutor<R>
-
onFailure
protected ExecutionResult<R> onFailure(ExecutionContext<R> context, ExecutionResult<R> result)
Description copied from class:PolicyExecutorPerforms post-execution handling for aresultthat is considered a failure according toPolicyExecutor.isFailure(ExecutionResult), possibly creating a new result, else returning the originalresult.- Overrides:
onFailurein classPolicyExecutor<R>
-
-