Packages

final class MergePreferred[T] extends GraphStage[MergePreferredShape[T]]

Merge several streams, taking elements as they arrive from input streams (picking from preferred when several have elements ready).

A MergePreferred has one out port, one preferred input port and 1 or more secondary in ports.

Emits when one of the inputs has an element available, preferring a specified input if multiple have elements available

Backpressures when downstream backpressures

Completes when all upstreams complete (eagerComplete=false) or one upstream completes (eagerComplete=true), default value is false

Cancels when downstream cancels

Source
Graph.scala
Type Hierarchy
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. MergePreferred
  2. GraphStage
  3. GraphStageWithMaterializedValue
  4. Graph
  5. AnyRef
  6. Any
Implicitly
  1. by GraphMapMatVal
  2. by any2stringadd
  3. by StringFormat
  4. by Ensuring
  5. by ArrowAssoc
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Instance Constructors

  1. new MergePreferred(secondaryPorts: Int, eagerComplete: Boolean)

Type Members

  1. type Shape = MergePreferredShape[T]

    Type-level accessor for the shape parameter of this graph.

    Type-level accessor for the shape parameter of this graph.

    Definition Classes
    Graph

Value Members

  1. def addAttributes(attr: Attributes): Graph[MergePreferredShape[T], NotUsed]

    Add the given attributes to this Graph.

    Add the given attributes to this Graph. If the specific attribute was already present on this graph this means the added attribute will be more specific than the existing one. If this Source is a composite of multiple graphs, new attributes on the composite will be less specific than attributes set directly on the individual graphs of the composite.

    Definition Classes
    Graph
  2. def async(dispatcher: String, inputBufferSize: Int): Graph[MergePreferredShape[T], NotUsed]

    Put an asynchronous boundary around this Graph

    Put an asynchronous boundary around this Graph

    dispatcher

    Run the graph on this dispatcher

    inputBufferSize

    Set the input buffer to this size for the graph

    Definition Classes
    Graph
  3. def async(dispatcher: String): Graph[MergePreferredShape[T], NotUsed]

    Put an asynchronous boundary around this Graph

    Put an asynchronous boundary around this Graph

    dispatcher

    Run the graph on this dispatcher

    Definition Classes
    Graph
  4. def async: Graph[MergePreferredShape[T], NotUsed]

    Put an asynchronous boundary around this Graph

    Put an asynchronous boundary around this Graph

    Definition Classes
    Graph
  5. def createLogic(inheritedAttributes: Attributes): GraphStageLogic
    Definition Classes
    MergePreferredGraphStage
  6. final def createLogicAndMaterializedValue(inheritedAttributes: Attributes): (GraphStageLogic, NotUsed)
  7. val eagerComplete: Boolean
  8. def getAttributes: Attributes
    Definition Classes
    Graph
  9. def in(id: Int): Inlet[T]
  10. def initialAttributes: Attributes
  11. def mapMaterializedValue[M2](f: (NotUsed) => M2): Graph[MergePreferredShape[T], M2]

    Transform the materialized value of this Graph, leaving all other properties as they were.

    Transform the materialized value of this Graph, leaving all other properties as they were.

    f

    function to map the graph's materialized value

    Implicit
    This member is added by an implicit conversion from MergePreferred[T] toGraphMapMatVal[MergePreferredShape[T], NotUsed] performed by method GraphMapMatVal in org.apache.pekko.stream.Graph.
    Definition Classes
    GraphMapMatVal
  12. def named(name: String): Graph[MergePreferredShape[T], NotUsed]

    Specifies the name of the Graph.

    Specifies the name of the Graph. If the name is null or empty the name is ignored, i.e. Attributes.none is returned.

    Definition Classes
    Graph
  13. def out: Outlet[T]
  14. def preferred: Inlet[T]
  15. val secondaryPorts: Int
  16. val shape: MergePreferredShape[T]

    The shape of a graph is all that is externally visible: its inlets and outlets.

    The shape of a graph is all that is externally visible: its inlets and outlets.

    Definition Classes
    MergePreferredGraph
  17. final def withAttributes(attr: Attributes): Graph[MergePreferredShape[T], NotUsed]

    Replace the attributes of this Flow with the given ones.

    Replace the attributes of this Flow with the given ones. If this Flow is a composite of multiple graphs, new attributes on the composite will be less specific than attributes set directly on the individual graphs of the composite.

    Definition Classes
    GraphStageWithMaterializedValueGraph