schedule<M2> method

_ContinuationMessageActionWithData<M, D, T> schedule<M2>(
  1. FutureOr<Object> getMessage(
    1. MessageContext msgCtx,
    2. M msg,
    3. D data,
    4. T ctx,
    ), {
  2. Duration duration = Duration.zero,
  3. bool periodic = false,
  4. String? label,
})

Implementation

_ContinuationMessageActionWithData<M, D, T> schedule<M2>(
  FutureOr<Object> Function(MessageContext msgCtx, M msg, D data, T ctx) getMessage, {
  Duration duration = Duration.zero,
  bool periodic = false,
  String? label,
}) {
  return _ContinuationMessageActionWithData<M, D, T>._(
    _ActionType.schedule,
    (msgCtx, msg, data, ctx) => getMessage(msgCtx, msg, data, ctx).bind(
      (scheduleMsg) => msgCtx.schedule(
        () => scheduleMsg,
        duration: duration,
        periodic: periodic,
      ),
    ),
    TypeLiteral<M2>().type,
    label,
  );
}