T
- the type of the value monitored by this circuit breakerpublic abstract class AbstractCircuitBreaker<T> extends Object implements CircuitBreaker<T>
Modifier and Type | Class and Description |
---|---|
protected static class |
AbstractCircuitBreaker.State
An internal enumeration representing the different states of a circuit
breaker.
|
Modifier and Type | Field and Description |
---|---|
static String |
PROPERTY_NAME
The name of the open property as it is passed to registered
change listeners.
|
protected AtomicReference<AbstractCircuitBreaker.State> |
state
The current state of this circuit breaker.
|
Constructor and Description |
---|
AbstractCircuitBreaker()
Creates an
AbstractCircuitBreaker . |
Modifier and Type | Method and Description |
---|---|
void |
addChangeListener(PropertyChangeListener listener)
Adds a change listener to this circuit breaker.
|
protected void |
changeState(AbstractCircuitBreaker.State newState)
Changes the internal state of this circuit breaker.
|
abstract boolean |
checkState()
Checks the state of this circuit breaker and changes it if necessary.
|
void |
close()
Closes this circuit breaker.
|
abstract boolean |
incrementAndCheckState(T increment)
Increments the monitored value and performs a check of the current state of this
circuit breaker.
|
boolean |
isClosed()
Returns the current closed state of this circuit breaker.
|
boolean |
isOpen()
Returns the current open state of this circuit breaker.
|
protected static boolean |
isOpen(AbstractCircuitBreaker.State state)
Converts the given state value to a boolean open property.
|
void |
open()
Opens this circuit breaker.
|
void |
removeChangeListener(PropertyChangeListener listener)
Removes the specified change listener from this circuit breaker.
|
public static final String PROPERTY_NAME
protected final AtomicReference<AbstractCircuitBreaker.State> state
public AbstractCircuitBreaker()
AbstractCircuitBreaker
. It also creates an internal PropertyChangeSupport
.public boolean isOpen()
isOpen
in interface CircuitBreaker<T>
public boolean isClosed()
isClosed
in interface CircuitBreaker<T>
public abstract boolean checkState()
CLOSED
; a value
of true typically means that the current operation can continue.checkState
in interface CircuitBreaker<T>
public abstract boolean incrementAndCheckState(T increment)
CircuitBreaker.checkState()
, but the monitored
value is incremented before the state check is performed.incrementAndCheckState
in interface CircuitBreaker<T>
increment
- value to increment in the monitored value of the circuit breakerpublic void close()
close
in interface CircuitBreaker<T>
public void open()
open
in interface CircuitBreaker<T>
protected static boolean isOpen(AbstractCircuitBreaker.State state)
state
- the state to be convertedprotected void changeState(AbstractCircuitBreaker.State newState)
newState
- the new state to be setpublic void addChangeListener(PropertyChangeListener listener)
listener
- the listener to be addedpublic void removeChangeListener(PropertyChangeListener listener)
listener
- the listener to be removedCopyright © 2001–2020 The Apache Software Foundation. All rights reserved.