Exemple #1
0
 static void validateCompleted(CompositeTaskInstanceInfo ti, Dictionary <string, object> data)
 {
     if (ti.Status != NGinnBPM.Runtime.TaskStatus.Completed)
     {
         throw new Exception("Not completed");
     }
     if (ti.ActiveTasks != null && ti.ActiveTasks.Count > 0)
     {
         throw new Exception("Active tasks");
     }
 }
Exemple #2
0
        public CompositeTaskInstanceInfo GetTaskInstanceInfo(string instanceId)
        {
            CompositeTaskInstanceInfo ret = null;

            RunProcessTransaction(this.DefaultPersistenceMode, ps =>
            {
                CompositeTaskInstance cti    = (CompositeTaskInstance)ps.TaskPersister.GetForRead(instanceId);
                CompositeTaskInstanceInfo rt = new CompositeTaskInstanceInfo();
                rt.InstanceId          = cti.InstanceId;
                rt.TaskId              = cti.TaskId;
                rt.ProcessDefinitionId = cti.ProcessDefinitionId;
                rt.ProcessInstanceId   = cti.ProcessInstanceId;
                rt.Marking             = cti.Marking.Where(x => x.Value > 0).Select(x => x.Key).ToList();
                rt.ActiveTasks         = cti.ActiveTasks.Select(x => x.TaskId).ToList();
                rt.Status              = cti.Status;
                ret = rt;
            });
            return(ret);
        }