Class MergeHub$
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.-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionCreates aSourcethat emits elements merged from a dynamic set of producers.Creates aSourcethat emits elements merged from a dynamic set of producers.<T> Source<T,Pair<Sink<T, NotUsed>, MergeHub.DrainingControl>> withDraining(Class<T> clazz) Creates aSourcethat emits elements merged from a dynamic set of producers.<T> Source<T,Pair<Sink<T, NotUsed>, MergeHub.DrainingControl>> withDraining(Class<T> clazz, int perProducerBufferSize) Creates aSourcethat emits elements merged from a dynamic set of producers.
-
Field Details
-
MODULE$
Static reference to the singleton instance of this Scala object.
-
-
Constructor Details
-
MergeHub$
public MergeHub$()
-
-
Method Details
-
of
Creates aSourcethat emits elements merged from a dynamic set of producers. After theSourcereturned by this method is materialized, it returns aSinkas a materialized value. ThisSinkcan be materialized arbitrary many times and each of the materializations will feed the elements into the originalSource.Every new materialization of the
Sourceresults in a new, independent hub, which materializes to its ownSinkfor feeding that materialization.Completed or failed
Sinks are simply removed. Once theSourceis cancelled, the Hub is considered closed and any new producers using theSinkwill be cancelled.- Parameters:
clazz- Type of elements this hub emits and consumesperProducerBufferSize- Buffer space used per producer.
-
withDraining
public <T> Source<T,Pair<Sink<T, withDrainingNotUsed>, MergeHub.DrainingControl>> (Class<T> clazz, int perProducerBufferSize) Creates aSourcethat emits elements merged from a dynamic set of producers. After theSourcereturned by this method is materialized, it returns aSinkas a materialized value. ThisSinkcan be materialized arbitrarily many times and each of the materializations will feed the elements into the originalSource.Every new materialization of the
Sourceresults in a new, independent hub, which materializes to its ownSinkfor feeding that materialization.Completed or failed
Sinks are simply removed. Once theSourceis cancelled, the Hub is considered closed and any new producers using theSinkwill be cancelled.The materialized
DrainingControlcan be used to drain the Hub: any new produces using theSinkwill be cancelled and the Hub will be closed completing theSourceas soon as all currently connected producers complete.- Parameters:
clazz- Type of elements this hub emits and consumesperProducerBufferSize- Buffer space used per producer. Default value is 16.
-
of
Creates aSourcethat emits elements merged from a dynamic set of producers. After theSourcereturned by this method is materialized, it returns aSinkas a materialized value. ThisSinkcan be materialized arbitrary many times and each of the materializations will feed the elements into the originalSource.Every new materialization of the
Sourceresults in a new, independent hub, which materializes to its ownSinkfor feeding that materialization.Completed or failed
Sinks are simply removed. Once theSourceis cancelled, the Hub is considered closed and any new producers using theSinkwill be cancelled.- Parameters:
clazz- Type of elements this hub emits and consumes
-
withDraining
Creates aSourcethat emits elements merged from a dynamic set of producers. After theSourcereturned by this method is materialized, it returns aSinkas a materialized value. ThisSinkcan be materialized arbitrarily many times and each of the materializations will feed the elements into the originalSource.Every new materialization of the
Sourceresults in a new, independent hub, which materializes to its ownSinkfor feeding that materialization.Completed or failed
Sinks are simply removed. Once theSourceis cancelled, the Hub is considered closed and any new producers using theSinkwill be cancelled.The materialized
DrainingControlcan be used to drain the Hub: any new produces using theSinkwill be cancelled and the Hub will be closed completing theSourceas soon as all currently connected producers complete.- Parameters:
clazz- Type of elements this hub emits and consumes
-