Beispiel #1
0
        public void CleanUpIfInExpandStep(WorkItem workItemToMove)
        {
            WorkStep expandStep;

            if (WorkflowRepository.IsInExpandStep(workItemToMove, out expandStep))
            {
                var transientStepPath = ExpandedWorkStep.GetTransientPath(expandStep, workItemToMove);
                var transientStep     = WorkflowRepository.GetWorkStep(transientStepPath);

                WorkflowRepository.DeleteWorkStepsRecursively(transientStep);
            }
        }
Beispiel #2
0
        private void CreateTransientWorkSteps(WorkItem item, WorkStep expandStep)
        {
            Debug.Assert(expandStep.Type == WorkStepType.Expand);

            var transientRootPath = ExpandedWorkStep.GetTransientPath(expandStep, item);

            CreateTransientWorkStepsRecursively(transientRootPath, expandStep, item.Id);

            var workItemClass     = WorkItemClass.Combine(expandStep.WorkItemClass, item.Id);
            var transientWorkStep = WorkStep.New(transientRootPath).UpdateFrom(expandStep).UpdateType(WorkStepType.Transient).UpdateWorkItemClass(workItemClass);

            WorkflowRepository.CreateWorkStep(transientWorkStep);
        }