Object

akka.stream.alpakka.s3.impl.backport

RetryFlow

Related Doc: package backport

Permalink

object RetryFlow

Source
RetryFlow.scala
Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. RetryFlow
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Value Members

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

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

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

    Permalink
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  5. def clone(): AnyRef

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

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

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

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

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

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

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

    Permalink
    Definition Classes
    AnyRef
  13. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  14. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  15. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  16. def toString(): String

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

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

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

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  20. def withBackoff[In, Out, Mat](minBackoff: FiniteDuration, maxBackoff: FiniteDuration, randomFactor: Double, maxRetries: Int, flow: Flow[In, Out, Mat])(decideRetry: (In, Out) ⇒ Option[In]): Flow[In, Out, Mat]

    Permalink

    API may change!

    API may change!

    Allows retrying individual elements in the stream with an exponential backoff.

    The retry condition is controlled by the decideRetry function. It takes the originally emitted element and the response emitted by flow, and may return a request to be retried.

    The implementation of the RetryFlow requires that flow follows one-in-one-out semantics, the Flow may not filter elements, nor emit more than one element per incoming element. The RetryFlow will fail if two elements are emitted from the flow, it will be stuck "forever" if nothing is emitted. Just one element will be emitted into the flow at any time. The flow needs to emit an element before the next will be emitted to it.

    minBackoff

    minimum duration to backoff between issuing retries

    maxBackoff

    maximum duration to backoff between issuing retries

    randomFactor

    adds jitter to the retry delay. Use 0 for no jitter

    maxRetries

    total number of allowed retries, when reached the last result will be emitted even if unsuccessful

    flow

    a flow to retry elements from

    decideRetry

    retry condition decision function

  21. def withBackoffAndContext[In, CtxIn, Out, CtxOut, Mat](minBackoff: FiniteDuration, maxBackoff: FiniteDuration, randomFactor: Double, maxRetries: Int, flow: FlowWithContext[In, CtxIn, Out, CtxOut, Mat])(decideRetry: ((In, CtxIn), (Out, CtxOut)) ⇒ Option[(In, CtxIn)]): FlowWithContext[In, CtxIn, Out, CtxOut, Mat]

    Permalink

    API may change!

    API may change!

    Allows retrying individual elements in the stream with an exponential backoff.

    The retry condition is controlled by the decideRetry function. It takes the originally emitted element with its context, and the response emitted by flow, and may return a request to be retried.

    The implementation of the RetryFlow requires that flow follows one-in-one-out semantics, the FlowWithContext may not filter elements, nor emit more than one element per incoming element. The RetryFlow will fail if two elements are emitted from the flow, it will be stuck "forever" if nothing is emitted. Just one element will be emitted into the flow at any time. The flow needs to emit an element before the next will be emitted to it.

    The wrapped flow and decideRetry take the additional context parameters which can be a context, or used to control retrying with other information.

    minBackoff

    minimum duration to backoff between issuing retries

    maxBackoff

    maximum duration to backoff between issuing retries

    randomFactor

    adds jitter to the retry delay. Use 0 for no jitter

    maxRetries

    total number of allowed retries, when reached the last result will be emitted even if unsuccessful

    flow

    a flow with context to retry elements from

    decideRetry

    retry condition decision function

Inherited from AnyRef

Inherited from Any

Ungrouped