예제 #1
0
 internal IEnumerable <Activity> GetChildren()
 {
     if (!this.owner.Equals(ActivityUtilities.ChildActivity.Empty))
     {
         return(ActivityValidationServices.GetChildren(this.owner, this.parentChain, this.options));
     }
     return(ActivityValidationServices.EmptyChildren);
 }
예제 #2
0
        internal IEnumerable <Activity> GetWorkflowTree()
        {
            Activity parent = this.owner.Activity;

            if (parent == null)
            {
                return(ActivityValidationServices.EmptyChildren);
            }
            while (parent.Parent != null)
            {
                parent = parent.Parent;
            }
            List <Activity> list = ActivityValidationServices.GetChildren(new ActivityUtilities.ChildActivity(parent, true), new ActivityUtilities.ActivityCallStack(), this.options);

            list.Add(parent);
            return(list);
        }
예제 #3
0
        internal IEnumerable <Activity> GetWorkflowTree()
        {
            // It is okay to just walk the declared parent chain here
            var currentNode = this.owner.Activity;

            if (currentNode != null)
            {
                while (currentNode.Parent != null)
                {
                    currentNode = currentNode.Parent;
                }
                var nodes = ActivityValidationServices.GetChildren(new ActivityUtilities.ChildActivity(currentNode, true), new ActivityUtilities.ActivityCallStack(), this.options);
                nodes.Add(currentNode);
                return(nodes);
            }
            else
            {
                return(ActivityValidationServices.EmptyChildren);
            }
        }