Class MergePrioritized


  • public class MergePrioritized
    extends java.lang.Object
    Merge several streams, taking elements as they arrive from input streams (picking from prioritized once when several have elements ready).

    A MergePrioritized has one out port, one or more input port with their priorities.

    '''Emits when''' one of the inputs has an element available, preferring a input based on its priority 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

    A Broadcast has one in port and 2 or more out ports.

    • Method Summary

      All Methods Static Methods Concrete Methods 
      Modifier and Type Method Description
      static <T> Graph<UniformFanInShape<T,​T>,​NotUsed> create​(int[] priorities)
      Create a new MergePrioritized operator with the specified output type.
      static <T> Graph<UniformFanInShape<T,​T>,​NotUsed> create​(int[] priorities, boolean eagerComplete)
      Create a new MergePrioritized operator with the specified output type.
      static <T> Graph<UniformFanInShape<T,​T>,​NotUsed> create​(java.lang.Class<T> clazz, int[] priorities)
      Create a new MergePrioritized operator with the specified output type.
      static <T> Graph<UniformFanInShape<T,​T>,​NotUsed> create​(java.lang.Class<T> clazz, int[] priorities, boolean eagerComplete)
      Create a new MergePrioritized operator with the specified output type.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • MergePrioritized

        public MergePrioritized()
    • Method Detail

      • create

        public static <T> Graph<UniformFanInShape<T,​T>,​NotUsed> create​(int[] priorities)
        Create a new MergePrioritized operator with the specified output type.
      • create

        public static <T> Graph<UniformFanInShape<T,​T>,​NotUsed> create​(java.lang.Class<T> clazz,
                                                                                   int[] priorities)
        Create a new MergePrioritized operator with the specified output type.
      • create

        public static <T> Graph<UniformFanInShape<T,​T>,​NotUsed> create​(int[] priorities,
                                                                                   boolean eagerComplete)
        Create a new MergePrioritized 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<UniformFanInShape<T,​T>,​NotUsed> create​(java.lang.Class<T> clazz,
                                                                                   int[] priorities,
                                                                                   boolean eagerComplete)
        Create a new MergePrioritized 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