o

akka.stream.javadsl

CoupledTerminationFlow

object CoupledTerminationFlow

Allows coupling termination (cancellation, completion, erroring) of Sinks and Sources while creating a Flow them them. Similar to Flow.fromSinkAndSource however that API does not connect the completion signals of the wrapped operators.

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

Deprecated Value Members

  1. def fromSinkAndSource[I, O, M1, M2](in: Sink[I, M1], out: Source[O, M2]): Flow[I, O, (M1, M2)]

    Similar to Flow.fromSinkAndSource however couples the termination of these two operators.

    Similar to Flow.fromSinkAndSource however couples the termination of these two operators.

    E.g. if the emitted Flow gets a cancellation, the Source of course is cancelled, however the Sink will also be completed. The table below illustrates the effects in detail:

    Returned Flow Sink (in) Source (out)
    cause: upstream (sink-side) receives completion effect: receives completion effect: receives cancel
    cause: upstream (sink-side) receives error effect: receives error effect: receives cancel
    cause: downstream (source-side) receives cancel effect: completes effect: receives cancel
    effect: cancels upstream, completes downstream effect: completes cause: signals complete
    effect: cancels upstream, errors downstream effect: receives error cause: signals error or throws
    effect: cancels upstream, completes downstream cause: cancels effect: receives cancel

    The order in which the in and out sides receive their respective completion signals is not defined, do not rely on its ordering.

    Annotations
    @deprecated
    Deprecated

    (Since version 2.5.2) Use Flow.fromSinkAndSourceCoupledMat(..., ..., Keep.both()) instead