Class CircuitBreakerStateMachine.OpenState
java.lang.Object
io.github.resilience4j.circuitbreaker.internal.CircuitBreakerStateMachine.OpenState
- All Implemented Interfaces:
CircuitBreakerStateMachine.CircuitBreakerState
- Enclosing class:
CircuitBreakerStateMachine
private class CircuitBreakerStateMachine.OpenState
extends Object
implements CircuitBreakerStateMachine.CircuitBreakerState
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final intprivate final CircuitBreakerMetricsprivate final AtomicBooleanprivate final Instantprivate final ScheduledFuture<?> -
Constructor Summary
ConstructorsConstructorDescriptionOpenState(int attempts, long waitDurationInMillis, CircuitBreakerMetrics circuitBreakerMetrics) OpenState(int attempts, long waitDurationInMillis, Instant retryAfterWaitDuration, CircuitBreakerMetrics circuitBreakerMetrics) OpenState(int attempts, CircuitBreakerMetrics circuitBreakerMetrics) OpenState(int attempts, Duration waitDuration, CircuitBreakerMetrics circuitBreakerMetrics) OpenState(int attempts, Instant waitUntil, CircuitBreakerMetrics circuitBreakerMetrics) -
Method Summary
Modifier and TypeMethodDescriptionvoidintattempts()private voidgetState()Get the state of the CircuitBreakervoidvoidShould never be called when tryAcquirePermission returns false.voidShould never be called when tryAcquirePermission returns false.voidThis method is invoked before transit to other CircuitBreakerState.voidprivate voidbooleanReturns false, if the wait duration has not elapsed.Methods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface CircuitBreakerStateMachine.CircuitBreakerState
shouldPublishEvents
-
Field Details
-
attempts
private final int attempts -
retryAfterWaitDuration
-
circuitBreakerMetrics
-
isOpen
-
transitionToHalfOpenFuture
-
-
Constructor Details
-
OpenState
OpenState(int attempts, CircuitBreakerMetrics circuitBreakerMetrics) -
OpenState
OpenState(int attempts, Duration waitDuration, CircuitBreakerMetrics circuitBreakerMetrics) -
OpenState
OpenState(int attempts, long waitDurationInMillis, CircuitBreakerMetrics circuitBreakerMetrics) -
OpenState
OpenState(int attempts, Instant waitUntil, CircuitBreakerMetrics circuitBreakerMetrics) -
OpenState
OpenState(int attempts, long waitDurationInMillis, Instant retryAfterWaitDuration, CircuitBreakerMetrics circuitBreakerMetrics)
-
-
Method Details
-
tryAcquirePermission
public boolean tryAcquirePermission()Returns false, if the wait duration has not elapsed. Returns true, if the wait duration has elapsed and transitions the state machine to HALF_OPEN state.- Specified by:
tryAcquirePermissionin interfaceCircuitBreakerStateMachine.CircuitBreakerState- Returns:
- false, if the wait duration has not elapsed. true, if the wait duration has elapsed.
-
acquirePermission
public void acquirePermission()- Specified by:
acquirePermissionin interfaceCircuitBreakerStateMachine.CircuitBreakerState
-
releasePermission
public void releasePermission()- Specified by:
releasePermissionin interfaceCircuitBreakerStateMachine.CircuitBreakerState
-
onError
Should never be called when tryAcquirePermission returns false.- Specified by:
onErrorin interfaceCircuitBreakerStateMachine.CircuitBreakerState
-
onSuccess
Should never be called when tryAcquirePermission returns false.- Specified by:
onSuccessin interfaceCircuitBreakerStateMachine.CircuitBreakerState
-
handlePossibleTransition
- Specified by:
handlePossibleTransitionin interfaceCircuitBreakerStateMachine.CircuitBreakerState
-
attempts
public int attempts()- Specified by:
attemptsin interfaceCircuitBreakerStateMachine.CircuitBreakerState
-
getState
Get the state of the CircuitBreaker- Specified by:
getStatein interfaceCircuitBreakerStateMachine.CircuitBreakerState
-
getMetrics
- Specified by:
getMetricsin interfaceCircuitBreakerStateMachine.CircuitBreakerState
-
preTransitionHook
public void preTransitionHook()Description copied from interface:CircuitBreakerStateMachine.CircuitBreakerStateThis method is invoked before transit to other CircuitBreakerState.- Specified by:
preTransitionHookin interfaceCircuitBreakerStateMachine.CircuitBreakerState
-
toHalfOpenState
private void toHalfOpenState() -
cancelAutomaticTransitionToHalfOpen
private void cancelAutomaticTransitionToHalfOpen()
-