nl.grons.sentries.support

InitialSentryBuilder

class InitialSentryBuilder extends SentryBuilder

Linear Supertypes
SentryBuilder, AnyRef, Any
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. InitialSentryBuilder
  2. SentryBuilder
  3. AnyRef
  4. Any
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Instance Constructors

  1. new InitialSentryBuilder(owner: Class[_], resourceName: String, sentryRegistry: SentriesRegistry)

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. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  7. def clone(): AnyRef

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws()
  8. final def eq(arg0: AnyRef): Boolean

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

    Definition Classes
    AnyRef → Any
  10. def finalize(): Unit

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

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

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

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

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

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

    Definition Classes
    AnyRef
  17. def registered(sentry: ChainableSentry): ChainableSentry

    Returns the registered instance of the sentry (when applicable).

    Returns the registered instance of the sentry (when applicable).

    Attributes
    protected
    Definition Classes
    SentryBuilder
  18. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  19. def toString(): String

    Definition Classes
    AnyRef → Any
  20. final def wait(): Unit

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

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

    Definition Classes
    AnyRef
    Annotations
    @throws()
  23. def withAdaptiveThroughput(targetSuccessRatio: Double = 0.95D): ChainableSentry with SentryBuilder

    Append an adaptive throughput sentry to the current sentry.

    Append an adaptive throughput sentry to the current sentry. See AdaptiveThroughputSentry for more information.

    targetSuccessRatio

    target success ratio, 0 < targetSuccessRatio < 1, defaults to 0.95

    returns

    a new sentry that adaptively changes allowed throughput on top of the current sentry behavior

    Definition Classes
    SentryBuilder
  24. def withConcurrencyLimit(concurrencyLimit: Int): ChainableSentry with SentryBuilder

    Append a concurrency limit sentry to the current sentry.

    Append a concurrency limit sentry to the current sentry.

    concurrencyLimit

    number of concurrently allowed invocations

    returns

    a new sentry that applies a concurrency limit after the current sentry behavior

    Definition Classes
    SentryBuilder
  25. def withDurationLimit(durationLimit: Duration): ChainableSentry with SentryBuilder

    Append a invocation duration limit sentry to the current sentry.

    Append a invocation duration limit sentry to the current sentry.

    WARNING: do NOT use this sentry when you invoke it from 1) a akka.dispatch.Future or 2) an akka.actor.Actor. For such circumstances you are MUCH better of with a timeout on the enclosing future or a timeout message within the actor. Reason: this sentry blocks the current thread while waiting on a future that executes the task. Blocking the current thread is an anti-pattern for futures and actors.

    durationLimit

    the maximum duration of a call

    returns

    a new sentry that applies a duration limit after the current sentry behavior

    Definition Classes
    SentryBuilder
  26. def withFailLimit(failLimit: Int, retryDelay: Duration): ChainableSentry with SentryBuilder

    Append a circuit breaker sentry to the current sentry.

    Append a circuit breaker sentry to the current sentry.

    failLimit

    number of failure after which the flow will be broken

    retryDelay

    timeout for trying again

    returns

    a new sentry that applies a circuit breaker after the current sentry behavior

    Definition Classes
    SentryBuilder
  27. def withFullMetrics: ChainableSentry with SentryBuilder

    Append an extensive metrics sentry to the current sentry.

    Append an extensive metrics sentry to the current sentry.

    Four timers are registered: "all", "success", "fail" and "notAvailable". These are update for respectively each invocation, succeeding invocations, invocations that throw an exception, and invocations that are blocked by a sentry that is later in the chain (detected by catching NotAvailableExceptions).

    When 4 timers is too much detail, use .withMetrics instead.

    returns

    a new sentry that collects metrics after the current sentry behavior

    Definition Classes
    SentryBuilder
  28. def withMetrics: ChainableSentry with SentryBuilder

    Append a metrics sentry to the current sentry.

    Append a metrics sentry to the current sentry.

    One timer is registered: "all". It is update for each invocation. For more extensive measuring, use .withFullMetrics instead.

    returns

    a new sentry that collects metrics after the current sentry behavior

    Definition Classes
    SentryBuilder
  29. def withRateLimit(rate: Int, per: Long): ChainableSentry with SentryBuilder

    Append a rate limit sentry to the current sentry.

    Append a rate limit sentry to the current sentry.

    rate

    number of invocations per time unit

    per

    the time unit in millis

    returns

    a new sentry that applies a concurrency limit after the current sentry behavior

    Definition Classes
    SentryBuilder
  30. def withSentry(sentry: ChainableSentry): ComposingSentryBuilder

    Append a custom sentry to the current sentry.

    Append a custom sentry to the current sentry.

    returns

    a new sentry that applies the given sentry after the current sentry behavior

    Definition Classes
    InitialSentryBuilderSentryBuilder

Inherited from SentryBuilder

Inherited from AnyRef

Inherited from Any

Ungrouped