object MergeHub
A MergeHub is a special streaming hub that is able to collect streamed elements from a dynamic set of producers. It consists of two parts, a 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.
- Source
- Hub.scala
- Alphabetic
- By Inheritance
- MergeHub
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Type Members
- final class ProducerFailed extends RuntimeException
Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
clone(): AnyRef
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
finalize(): Unit
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
-
def
source[T]: Source[T, Sink[T, NotUsed]]
Creates a Source that emits elements merged from a dynamic set of producers.
Creates a 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 Sinks are simply removed. Once the Source is cancelled, the Hub is considered closed and any new producers using the Sink will be cancelled.
-
def
source[T](perProducerBufferSize: Int): Source[T, Sink[T, NotUsed]]
Creates a Source that emits elements merged from a dynamic set of producers.
Creates a 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 Sinks are simply removed. Once the Source is cancelled, the Hub is considered closed and any new producers using the Sink will be cancelled.
- perProducerBufferSize
Buffer space used per producer. Default value is 16.
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
toString(): String
- Definition Classes
- AnyRef → Any
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )