1 - triagedhelp wantedt:stream
Repository metrics
- Stars
- (13,277 stars)
- PR merge metrics
- (Avg merge 8d 19h) (10 merged PRs in 30d)
Description
Implement it in terms of BroadcastHub instead (after https://github.com/akka/akka/pull/21183 merged). Implementation can be as simple as roughly:
object Sink {
...
def asPublisher[T](fanout: Boolean): Sink[T, Publisher[T]] = {
if (fanout) BroadcastHub.sink(bufferSize).mapMaterializedValue { src =>
new Publisher {
def subscribe(s: Subscriber): Unit = src.runWith(Sink.fromSubscriber(s))
}
}
}
...
}
While this might be somewhat less efficient (although not sure!), it removes a rather ugly old class and its dependencies in one simple move.