WorkflowAction IWorkflow.WorkflowAction(ExternalWorkflowCancelRequestFailedEvent @event) { if (!_allWorkflowItems.HasItemFor(@event)) { return(Handle(EventName.CancelRequestFailed, @event)); } var item = _allWorkflowItems.ChildWorkflowItem(@event); return(item.CancelRequestFailedAction(@event)); }
/// <summary> /// Jump to child workflow. It will cause the workflow to fail if target child workflow is already active. /// </summary> /// <param name="name"></param> /// <param name="version"></param> /// <param name="positionalName"></param> /// <returns></returns> public JumpWorkflowAction ToChildWorkflow(string name, string version, string positionalName = "") { Ensure.NotNull(name, nameof(name)); Ensure.NotNull(version, nameof(version)); var item = _workflowItems.ChildWorkflowItem(Identity.New(name, version, positionalName)); return(WorkflowAction.JumpTo(_triggerItem, item)); }
/// <summary> /// Returns workflow action to cancel the child workflow. /// </summary> /// <param name="name"></param> /// <param name="version"></param> /// <param name="positionalName"></param> /// <returns></returns> public WorkflowAction ForChildWorkflow(string name, string version, string positionalName = "") { Ensure.NotNullAndEmpty(name, nameof(name)); Ensure.NotNullAndEmpty(version, nameof(version)); var item = _workflowItems.ChildWorkflowItem(Identity.New(name, version, positionalName)); return(WorkflowAction.Cancel(item)); }