internal override IEnumerable <WorkflowDecision> GetDecisions() { var triggeredDecisions = new List <WorkflowDecision>(); var childBranches = _triggeringItem.ChildBranches(); foreach (var childBranch in childBranches) { var joinWorkflowItem = _findFirstJointItem(childBranch); if (joinWorkflowItem != null && joinWorkflowItem.AreAllParentBranchesInactive(_triggeringItem)) { triggeredDecisions.AddRange(joinWorkflowItem.GetScheduleDecisions()); } } return(triggeredDecisions); }