Esempio n. 1
0
        public static bool CanUnassign(ModelItem source)
        {
            Contract.Requires(source != null);

            var task = source.GetTaskActivity();
            return task.Status != TaskActivityStatus.Editing;
        }
Esempio n. 2
0
        public static bool CanMerge(ModelItem source)
        {
            Contract.Requires(source != null);

            var task = source.GetTaskActivity();
            return task.Status == TaskActivityStatus.CheckedIn;
        }
Esempio n. 3
0
        public static bool CheckIsTask(ModelItem source)
        {
            Contract.Requires(source != null);

            return source.GetTaskActivity() != null ? true : false;
        }
Esempio n. 4
0
 private static void UpdateTaskItem(ModelItem source, WorkflowEditorViewModel workflowItem)
 {
     ModelItem taskModelItem = GetLastVersionActivity(source, workflowItem);
     MergeTaskArgmentToParent(taskModelItem, workflowItem.WorkflowDesigner.GetRoot(), source);
     CompositeService.UpdateModelItem(source, source.GetTaskActivity().CreateTaskActivity(taskModelItem));
 }
Esempio n. 5
0
        private static string GetXamlOfTaskBody(WorkflowDesigner rootDesigner, ModelItem taskItem)
        {
            TaskActivity taskActivity = taskItem.GetTaskActivity();
            WorkflowDesigner bodyDesigner = CompositeService.CreateWorkflowDesigner(taskActivity.TaskBody,
                new TaskAssignment() { TaskId = taskActivity.TaskId }.GetFriendlyName(((ActivityBuilder)rootDesigner.GetRoot().GetCurrentValue()).Name));
            ModelItem rootItem = rootDesigner.GetRoot();
            ModelItem bodyItem = bodyDesigner.GetRoot();

            ArgumentService.AddArguments(bodyItem, rootItem);
            List<Variable> variables = ArgumentService.GetAvailableVariables(taskItem).ToList();
            ArgumentService.AddArguments(bodyItem,
                variables.Select(v => new DynamicActivityProperty(){
                    Name = v.Name,
                    Type = typeof(InOutArgument<>).MakeGenericType(v.Type),
                }));

            return bodyDesigner.CompilableXaml();
        }
Esempio n. 6
0
        private static ModelItem GetLastVersionActivity(ModelItem source, WorkflowEditorViewModel workflowItem)
        {
            TaskActivity task = source.GetTaskActivity();
            var result = TaskService.GetLastVersionTaskActivityDC(task.TaskId);

            workflowItem.DownloadTaskDependency(result);

            return CompositeService.CreateActivity(result.Activity.Xaml);
        }
Esempio n. 7
0
        public static void UnassignTask(ModelItem source)
        {
            Contract.Requires(source != null);

            var updatedBody = source.GetTaskActivity().TaskBody;
            if (updatedBody != null)
            {
                CompositeService.UpdateModelItem(source, updatedBody);
            }
            else
            {
                CompositeService.DeleteModelItem(source);
            }
        }