Packages

final case class Open(startedAt: Timestamp, resetTimeout: FiniteDuration) extends State with Product with Serializable

State of the TaskCircuitBreaker in which the circuit breaker rejects all tasks with an ExecutionRejectedException.

Contract:

  • all tasks fail fast with ExecutionRejectedException
  • after the configured resetTimeout, the circuit breaker enters a HalfOpen state, allowing one task to go through for testing the connection
startedAt

is the timestamp in milliseconds since the epoch when the transition to Open happened

resetTimeout

is the current resetTimeout that is applied to this Open state, to be multiplied by the exponential backoff factor for the next transition from HalfOpen to Open, in case the reset attempt fails

Source
TaskCircuitBreaker.scala
Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Open
  2. Serializable
  3. Serializable
  4. Product
  5. Equals
  6. State
  7. AnyRef
  8. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new Open(startedAt: Timestamp, resetTimeout: FiniteDuration)

    startedAt

    is the timestamp in milliseconds since the epoch when the transition to Open happened

    resetTimeout

    is the current resetTimeout that is applied to this Open state, to be multiplied by the exponential backoff factor for the next transition from HalfOpen to Open, in case the reset attempt fails

Value Members

  1. val expiresAt: Timestamp

    The timestamp in milliseconds since the epoch, specifying when the Open state is to transition to HalfOpen.

    The timestamp in milliseconds since the epoch, specifying when the Open state is to transition to HalfOpen.

    It is calculated as:

    startedAt + resetTimeout.toMillis
  2. val resetTimeout: FiniteDuration
  3. val startedAt: Timestamp