Class MergePreferred$

java.lang.Object
org.apache.pekko.stream.javadsl.MergePreferred$

public class MergePreferred$ extends Object
Merge several streams, taking elements as they arrive from input streams (picking from preferred when several have elements ready).

'''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)

'''Cancels when''' downstream cancels

  • Field Details

    • MODULE$

      public static final MergePreferred$ MODULE$
      Static reference to the singleton instance of this Scala object.
  • Constructor Details

    • MergePreferred$

      public MergePreferred$()
  • Method Details

    • create

      public <T> Graph<MergePreferred.MergePreferredShape<T>,NotUsed> create(int secondaryPorts)
      Create a new MergePreferred operator with the specified output type.
    • create

      public <T> Graph<MergePreferred.MergePreferredShape<T>,NotUsed> create(Class<T> clazz, int secondaryPorts)
      Create a new MergePreferred operator with the specified output type.
    • create

      public <T> Graph<MergePreferred.MergePreferredShape<T>,NotUsed> create(int secondaryPorts, boolean eagerComplete)
      Create a new MergePreferred operator with the specified output type.

      Parameters:
      eagerComplete - set to true in order to make this operator eagerly finish as soon as one of its inputs completes
    • create

      public <T> Graph<MergePreferred.MergePreferredShape<T>,NotUsed> create(Class<T> clazz, int secondaryPorts, boolean eagerComplete)
      Create a new MergePreferred operator with the specified output type.

      Parameters:
      eagerComplete - set to true in order to make this operator eagerly finish as soon as one of its inputs completes