Balance

org.apache.pekko.stream.javadsl.Balance
object Balance

Fan-out the stream to several streams. Each upstream element is emitted to the first available downstream consumer. It will not shutdown until the subscriptions for at least two downstream subscribers have been established.

'''Emits when''' any of the outputs stops backpressuring; emits the element to the first available output

'''Backpressures when''' all of the outputs backpressure

'''Completes when''' upstream completes

'''Cancels when''' If eagerCancel is enabled: when any downstream cancels; otherwise: when all downstreams cancel

Attributes

Source
Graph.scala
Graph
Supertypes
class Object
trait Matchable
class Any
Self type
Balance.type

Members list

Value members

Concrete methods

def create[T](outputCount: Int, waitForAllDownstreams: Boolean): Graph[UniformFanOutShape[T, T], NotUsed]

Create a new Balance operator with the specified input type, eagerCancel is false.

Create a new Balance operator with the specified input type, eagerCancel is false.

Value parameters

outputCount

number of output ports

waitForAllDownstreams

if true it will not start emitting elements to downstream outputs until all of them have requested at least one element

Attributes

Source
Graph.scala
def create[T](outputCount: Int, waitForAllDownstreams: Boolean, eagerCancel: Boolean): Graph[UniformFanOutShape[T, T], NotUsed]

Create a new Balance operator with the specified input type.

Create a new Balance operator with the specified input type.

Value parameters

eagerCancel

if true, balance cancels upstream if any of its downstreams cancel, if false, when all have cancelled.

outputCount

number of output ports

waitForAllDownstreams

if true it will not start emitting elements to downstream outputs until all of them have requested at least one element

Attributes

Source
Graph.scala
def create[T](outputCount: Int): Graph[UniformFanOutShape[T, T], NotUsed]

Create a new Balance operator with the specified input type, both waitForAllDownstreams and eagerCancel are false.

Create a new Balance operator with the specified input type, both waitForAllDownstreams and eagerCancel are false.

Value parameters

outputCount

number of output ports

Attributes

Source
Graph.scala
def create[T](clazz: Class[T], outputCount: Int): Graph[UniformFanOutShape[T, T], NotUsed]

Create a new Balance operator with the specified input type, both waitForAllDownstreams and eagerCancel are false.

Create a new Balance operator with the specified input type, both waitForAllDownstreams and eagerCancel are false.

Value parameters

clazz

a type hint for this method

outputCount

number of output ports

Attributes

Source
Graph.scala
def create[T](clazz: Class[T], outputCount: Int, waitForAllDownstreams: Boolean): Graph[UniformFanOutShape[T, T], NotUsed]

Create a new Balance operator with the specified input type, eagerCancel is false.

Create a new Balance operator with the specified input type, eagerCancel is false.

Value parameters

clazz

a type hint for this method

outputCount

number of output ports

waitForAllDownstreams

if true it will not start emitting elements to downstream outputs until all of them have requested at least one element

Attributes

Source
Graph.scala
def create[T](clazz: Class[T], outputCount: Int, waitForAllDownstreams: Boolean, eagerCancel: Boolean): Graph[UniformFanOutShape[T, T], NotUsed]

Create a new Balance operator with the specified input type.

Create a new Balance operator with the specified input type.

Value parameters

clazz

a type hint for this method

eagerCancel

if true, balance cancels upstream if any of its downstreams cancel, if false, when all have cancelled.

outputCount

number of output ports

waitForAllDownstreams

if true it will not start emitting elements to downstream outputs until all of them have requested at least one element

Attributes

Source
Graph.scala