B egins a propagation wave, with a set of
B egins a propagation wave, with a set of
Emitter -> Reactor
pings. See the implementation of Propagator.Immediate or Propagator.ExecContext to see how this is generally done
The set of pings which begin this propagation wave
Some value of type P, dependent on the implementation
A Propagator is an object which performs a propagation wave over the Scala.Rx dataflow graph. It is parametrized on the type P which it returns after performing a propagation wave. The two existing Propagators are:
Propagator.Immediate (
Propagator[Unit]
), which runs the propagation wave immediately and returns Unit when it is complete.Propagator.ExecContext (
Propagator[Future[Unit]]
), which runs the propagation wave on the givenExecutionContext
and returns aFuture[Unit]
representing the completion of the propagation wave.It is conceivable that custom propagators could use the return type
P
to return other things, e.g. the number of updates performed, or the number of re-tries in that propagation wave. That is up to the implementer to decide.the type that the
propagate()
function returns