nl.grons.sentries.core

CircuitBreakerSentry

class CircuitBreakerSentry extends ChainableSentry

A sentry that limits the number of consecutive failures; a.k.a. a circuit breaker. A new instance can be obtained through the SentrySupport mixin.

Linear Supertypes
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. Hide All
  2. Show all
  1. CircuitBreakerSentry
  2. ChainableSentry
  3. NamedSentry
  4. Sentry
  5. AnyRef
  6. Any
Visibility
  1. Public
  2. All

Instance Constructors

  1. new CircuitBreakerSentry(resourceName: String, failLimit: Int, retryDelay: Duration, owner: Class[_])

Value Members

  1. final def !=(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  2. final def !=(arg0: Any): Boolean

    Definition Classes
    Any
  3. final def ##(): Int

    Definition Classes
    AnyRef → Any
  4. final def ==(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  5. final def ==(arg0: Any): Boolean

    Definition Classes
    Any
  6. def andThen(s: Sentry): Sentry

    Composes two instances of Sentry in a new Sentry, with this sentries context applied first.

    Composes two instances of Sentry in a new Sentry, with this sentries context applied first.

    returns

    a new sentry t such that t(x) == s(this(x))

    Definition Classes
    Sentry
  7. def apply[T](r: ⇒ T): T

    Run the given code block in the context of this sentry, and return its value.

    Run the given code block in the context of this sentry, and return its value.

    Definition Classes
    CircuitBreakerSentrySentry
  8. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  9. def attemptResetBrokenState(currentState: BrokenState): Boolean

    Try to restart the broken state.

    Try to restart the broken state.

    currentState

    the expected current state

    returns

    true when the state was changed, false when the given state was not the current state

  10. def clone(): AnyRef

    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws()
  11. def compose(s: Sentry): Sentry

    Composes two instances of Sentry in a new Sentry, with this sentries context applied last.

    Composes two instances of Sentry in a new Sentry, with this sentries context applied last.

    returns

    a new sentry t such that t(x) == this(s(x))

    Definition Classes
    Sentry
  12. final def eq(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  13. def equals(arg0: Any): Boolean

    Definition Classes
    AnyRef → Any
  14. val failLimit: Int

  15. def finalize(): Unit

    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws()
  16. final def getClass(): java.lang.Class[_]

    Definition Classes
    AnyRef → Any
  17. def hashCode(): Int

    Definition Classes
    AnyRef → Any
  18. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  19. final def ne(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  20. final def notify(): Unit

    Definition Classes
    AnyRef
  21. final def notifyAll(): Unit

    Definition Classes
    AnyRef
  22. def reset(): Unit

    Switch to flow state.

    Switch to flow state.

    Definition Classes
    CircuitBreakerSentrySentry
  23. val resourceName: String

    returns

    a string describing the resource that is protected, e.g. "mysql:server-b.com:3336". It is used in exceptions and visible through JMX.

    Definition Classes
    CircuitBreakerSentryNamedSentry
  24. val retryDelay: Duration

  25. val sentryType: String

    returns

    a simple describing identifier that is unique per sentry chain, e.g. "rateLimit". ResourceName plus sentryType uniquely name each sentry. The sentry registry enforces this. The sentryType is also used in JMX to uniquely name bean properties for a resource. null for sentry wrappers, that must not be registered.

    Definition Classes
    CircuitBreakerSentryChainableSentry
  26. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  27. def toString(): String

    Definition Classes
    AnyRef → Any
  28. def trip(): Unit

    Switch to broken state.

  29. final def wait(): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws()
  30. final def wait(arg0: Long, arg1: Int): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws()
  31. final def wait(arg0: Long): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws()

Inherited from ChainableSentry

Inherited from NamedSentry

Inherited from Sentry

Inherited from AnyRef

Inherited from Any