Ejemplo n.º 1
0
        public static IEnumerable <WorkflowDecision> GenerateFinalDecisionsFor(this IEnumerable <WorkflowClosingDecision> workflowClosingDecisions, IWorkflowClosingActions workflowClosingActions)
        {
            var finalClosingDecision = workflowClosingDecisions.OrderByDescending(d => d.Priority).First();
            var finalWorkflowAction  = finalClosingDecision.ProvideFinalActionFrom(workflowClosingActions);

            return(finalWorkflowAction == null?Enumerable.Empty <WorkflowDecision>() : finalWorkflowAction.GetDecisions());
        }
Ejemplo n.º 2
0
 internal override WorkflowAction ProvideFinalActionFrom(IWorkflowClosingActions workflowClosingActions)
 {
     return(workflowClosingActions.OnCompletion(_result, Proposal));
 }
Ejemplo n.º 3
0
 internal override WorkflowAction ProvideFinalActionFrom(IWorkflowClosingActions workflowClosingActions)
 {
     return(_restartWorkflowAction);
 }
Ejemplo n.º 4
0
 internal abstract WorkflowAction ProvideFinalActionFrom(IWorkflowClosingActions workflowClosingActions);
Ejemplo n.º 5
0
 internal override WorkflowAction ProvideFinalActionFrom(IWorkflowClosingActions workflowClosingActions)
 {
     return(workflowClosingActions.OnCancellation(_details));
 }
Ejemplo n.º 6
0
 internal override WorkflowAction ProvideFinalActionFrom(IWorkflowClosingActions workflowClosingActions)
 {
     return(workflowClosingActions.OnFailure(_reason, _details));
 }