Class MergePreferred


  • public class MergePreferred
    extends java.lang.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

    • Constructor Detail

      • MergePreferred

        public MergePreferred()
    • Method Detail

      • create

        public static <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 static <T> Graph<MergePreferred.MergePreferredShape<T>,​NotUsed> create​(java.lang.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