public async Task <IActionResult> Trigger(string token, CancellationToken cancellationToken) { if (!tokenService.TryDecryptToken(token, out Signal signal)) { return(NotFound()); } var workflowInstance = await workflowInstanceStore.GetByIdAsync(signal.WorkflowInstanceId, cancellationToken); if (workflowInstance == null) { return(NotFound()); } var input = new Variables { ["signal"] = signal.Name }; await workflowInvoker.ResumeAsync(workflowInstance, input, cancellationToken : cancellationToken); return(HttpContext.Items.ContainsKey(WorkflowHttpResult.Instance) ? (IActionResult) new EmptyResult() : Accepted()); }
public async Task <WorkflowExecutionContext> ResumeWorkflowAsync(Workflow workflow, IActivity activity, Variables arguments, CancellationToken cancellationToken) { var workflowContext = await invoker.ResumeAsync(workflow, activity, arguments, cancellationToken); await workflowStore.UpdateAsync(workflow, cancellationToken); return(workflowContext); }
public async Task <WorkflowExecutionContext> ResumeWorkflowAsync(Workflow workflow, IActivity activity, Variables arguments, CancellationToken cancellationToken) { return(await invoker.ResumeAsync(workflow, activity, arguments, cancellationToken)); }