public int InsertWorkItem(IWorkflowItem entity)
 {
     return(LockExecute <int>(() =>
     {
         if (!string.IsNullOrEmpty(entity.Alias) && entity.Alias.IndexOf('.') > 0)
         {
             entity.Alias = entity.Alias.Substring(entity.Alias.LastIndexOf('.') + 1);
         }
         if (entity.ItemId >= 10000)
         {
             WorkItemsRead.Add(entity);
             return Dao.Get().Insert <WorkflowItemRead>(entity);
         }
         else
         {
             WorkflowEventManager.RaiseWorkItemEvent(EventStep.Before, ItemActionType.Insert, this, entity);
             WorkItems.Add(entity);
             int result = Dao.Get().Insert <WorkflowItem>(entity);
             if (result > 0)
             {
                 WorkflowEventManager.RaiseWorkItemEvent(EventStep.After, ItemActionType.Insert, this, entity);
             }
             return result;
         }
     }));
 }
Example #2
0
 public DownloadFile(WorkflowEventManager eventManager)
 {
     EventManager = eventManager;
 }