Class: CircuitBreaker::CircuitState
- Inherits:
-
Object
- Object
- CircuitBreaker::CircuitState
- Includes:
- AASM
- Defined in:
- lib/circuit_breaker/circuit_state.rb
Overview
CircuitState is created individually for each object, and keeps track of how the object is doing and whether the object’s circuit has tripped or not.
Instance Attribute Summary collapse
-
#failure_count ⇒ Object
Returns the value of attribute failure_count.
-
#last_failure_time ⇒ Object
Returns the value of attribute last_failure_time.
Instance Method Summary collapse
- #increment_failure_count ⇒ Object
-
#initialize ⇒ CircuitState
constructor
A new instance of CircuitState.
- #reset_failure_count ⇒ Object
Constructor Details
#initialize ⇒ CircuitState
Returns a new instance of CircuitState.
41 42 43 44 |
# File 'lib/circuit_breaker/circuit_state.rb', line 41 def initialize() @failure_count = 0 @last_failure_time = nil end |
Instance Attribute Details
#failure_count ⇒ Object
Returns the value of attribute failure_count.
48 49 50 |
# File 'lib/circuit_breaker/circuit_state.rb', line 48 def failure_count @failure_count end |
#last_failure_time ⇒ Object
Returns the value of attribute last_failure_time.
46 47 48 |
# File 'lib/circuit_breaker/circuit_state.rb', line 46 def last_failure_time @last_failure_time end |
Instance Method Details
#increment_failure_count ⇒ Object
50 51 52 53 |
# File 'lib/circuit_breaker/circuit_state.rb', line 50 def increment_failure_count @failure_count = @failure_count + 1 @last_failure_time = Time.now end |
#reset_failure_count ⇒ Object
55 56 57 |
# File 'lib/circuit_breaker/circuit_state.rb', line 55 def reset_failure_count @failure_count = 0 end |