protected override DoNext performInvoke() { var input = _request.Find <TInput>().Single(); var output = _action(_handler, input); _messages.EnqueueCascading(output); return(DoNext.Continue); }
public void Push <T>(Task <T> task) { _messages.Add(() => _context.EnqueueCascading(task.Result)); _tasks.Add(task); }
public static Task CascadeAsync <T>(Task <T> task, IInvocationContext context) { return(task.ContinueWith(t => context.EnqueueCascading(t.Result), TaskContinuationOptions.NotOnFaulted)); }