public class MergeHub
extends java.lang.Object
Source
and a Sink
. The Source
streams the element to a consumer from
its merged inputs. Once the consumer has been materialized, the Source
returns a materialized value which is
the corresponding Sink
. This Sink
can then be materialized arbitrary many times, where each of the new
materializations will feed its consumed elements to the original Source
.Constructor and Description |
---|
MergeHub() |
Modifier and Type | Method and Description |
---|---|
static <T> Source<T,Sink<T,NotUsed>> |
of(java.lang.Class<T> clazz)
Creates a
Source that emits elements merged from a dynamic set of producers. |
static <T> Source<T,Sink<T,NotUsed>> |
of(java.lang.Class<T> clazz,
int perProducerBufferSize)
Creates a
Source that emits elements merged from a dynamic set of producers. |
public static <T> Source<T,Sink<T,NotUsed>> of(java.lang.Class<T> clazz, int perProducerBufferSize)
Source
that emits elements merged from a dynamic set of producers. After the Source
returned
by this method is materialized, it returns a Sink
as a materialized value. This Sink
can be materialized
arbitrary many times and each of the materializations will feed the elements into the original Source
.
Every new materialization of the Source
results in a new, independent hub, which materializes to its own
Sink
for feeding that materialization.
If one of the inputs fails the Sink
, the Source
is failed in turn (possibly jumping over already buffered
elements). Completed Sink
s are simply removed. Once the Source
is cancelled, the Hub is considered closed
and any new producers using the Sink
will be cancelled.
clazz
- Type of elements this hub emits and consumesperProducerBufferSize
- Buffer space used per producer.public static <T> Source<T,Sink<T,NotUsed>> of(java.lang.Class<T> clazz)
Source
that emits elements merged from a dynamic set of producers. After the Source
returned
by this method is materialized, it returns a Sink
as a materialized value. This Sink
can be materialized
arbitrary many times and each of the materializations will feed the elements into the original Source
.
Every new materialization of the Source
results in a new, independent hub, which materializes to its own
Sink
for feeding that materialization.
If one of the inputs fails the Sink
, the Source
is failed in turn (possibly jumping over already buffered
elements). Completed Sink
s are simply removed. Once the Source
is cancelled, the Hub is considered closed
and any new producers using the Sink
will be cancelled.
clazz
- Type of elements this hub emits and consumes