Class Merge<T>

  • All Implemented Interfaces:
    Graph<UniformFanInShape<T,​T>,​NotUsed>

    public final class Merge<T>
    extends GraphStage<UniformFanInShape<T,​T>>
    Merge several streams, taking elements as they arrive from input streams (picking randomly when several have elements ready).

    '''Emits when''' one of the inputs has an element 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

    • Constructor Detail

      • Merge

        public Merge​(int inputPorts,
                     boolean eagerComplete)
    • Method Detail

      • apply

        public static <T> Merge<T> apply​(int inputPorts,
                                         boolean eagerComplete)
        Create a new Merge with the specified number of input ports.

        Parameters:
        inputPorts - number of input ports
        eagerComplete - if true, the merge will complete as soon as one of its inputs completes.
        Returns:
        (undocumented)
      • apply$default$2

        public static <T> boolean apply$default$2()
      • named

        public static Graph<S,​M> named​(java.lang.String name)
      • async

        public static Graph<S,​M> async()
      • async

        public static Graph<S,​M> async​(java.lang.String dispatcher)
      • async

        public static Graph<S,​M> async​(java.lang.String dispatcher,
                                             int inputBufferSize)
      • addAttributes

        public static Graph<S,​M> addAttributes​(Attributes attr)
      • withAttributes

        public static final Graph<S,​M> withAttributes​(Attributes attr)
      • createLogicAndMaterializedValue

        public static final scala.Tuple2<GraphStageLogic,​NotUsed> createLogicAndMaterializedValue​(Attributes inheritedAttributes)
      • inputPorts

        public int inputPorts()
      • eagerComplete

        public boolean eagerComplete()
      • in

        public scala.collection.immutable.IndexedSeq<Inlet<T>> in()
      • shape

        public UniformFanInShape<T,​T> shape()
        Description copied from interface: Graph
        The shape of a graph is all that is externally visible: its inlets and outlets.
        Returns:
        (undocumented)
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object