!str,htc remove FlexiMerge/Route
- replace all occurrences with equivalent GraphStage implementations This commit introduces a mini-DSL for GraphStage that allows emitting or reading multiple elements to/from a port with one statement, installing stateful handlers on the port to make it work. The emitting side allows stacked continuations, meaning that while an emit() is ongoing (waiting for demand) another one can be added to the queue; this allows convenient formualation of merge-type stages.
This commit is contained in:
parent
dc07fd250c
commit
02810cfa64
45 changed files with 1001 additions and 3227 deletions
|
|
@ -865,7 +865,7 @@ private[stream] class TakeWithin[T](timeout: FiniteDuration) extends SimpleLinea
|
|||
final override protected def onTimer(key: Any): Unit =
|
||||
completeStage()
|
||||
|
||||
scheduleOnce("TakeWithinTimer", timeout)
|
||||
override def preStart(): Unit = scheduleOnce("TakeWithinTimer", timeout)
|
||||
}
|
||||
|
||||
override def toString = "TakeWithin"
|
||||
|
|
@ -885,7 +885,7 @@ private[stream] class DropWithin[T](timeout: FiniteDuration) extends SimpleLinea
|
|||
|
||||
final override protected def onTimer(key: Any): Unit = allow = true
|
||||
|
||||
scheduleOnce("DropWithinTimer", timeout)
|
||||
override def preStart(): Unit = scheduleOnce("DropWithinTimer", timeout)
|
||||
}
|
||||
|
||||
override def toString = "DropWithin"
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue