/// <summary>节点实例监听器</summary>
 public virtual void onNodeInstanceEventFired(NodeInstanceEvent e)
 {
     //同步器节点的监听器触发条件,是在离开这个节点的时候
     if (e.EventType == NodeInstanceEventEnum.NODEINSTANCE_LEAVING)
     {
         ISynchronizerInstance syncInst = (ISynchronizerInstance)e.getSource();
         IPersistenceService persistenceService = this.RuntimeContext.PersistenceService;
         //删除同步器节点的token
         persistenceService.DeleteTokensForNode(e.Token.ProcessInstanceId, syncInst.Synchronizer.Id);
     }
 }
Example #2
0
 /// <summary>节点实例监听器</summary>
 public virtual void onNodeInstanceEventFired(NodeInstanceEvent e)
 {
     //同步器节点的监听器触发条件,是在离开这个节点的时候
     if (e.EventType == NodeInstanceEventEnum.NODEINSTANCE_LEAVING)
     {
         ISynchronizerInstance syncInst           = (ISynchronizerInstance)e.getSource();
         IPersistenceService   persistenceService = this.RuntimeContext.PersistenceService;
         //删除同步器节点的token
         persistenceService.DeleteTokensForNode(e.Token.ProcessInstanceId, syncInst.Synchronizer.Id);
     }
 }
 /// <summary>节点实例监听器</summary>
 public void onNodeInstanceEventFired(NodeInstanceEvent e)
 {
     // TODO Auto-generated method stub
     if (e.EventType == NodeInstanceEventEnum.NODEINSTANCE_FIRED)
     {
         //保存token,并创建taskinstance
         IPersistenceService persistenceService = this.RuntimeContext.PersistenceService;
         //TODO wmj2003 这里是插入还是更新token
         persistenceService.SaveOrUpdateToken(e.Token);
         //触发activity节点,就要创建新的task
         this.RuntimeContext.TaskInstanceManager.createTaskInstances(e.Token, (IActivityInstance)e.getSource());
     }
     else if (e.EventType == NodeInstanceEventEnum.NODEINSTANCE_COMPLETED)
     {
         //			RuntimeContext.getInstance()
         //			.TaskInstanceManager
         //			.archiveTaskInstances((IActivityInstance)e.getSource());
     }
 }
 /// <summary>节点实例监听器</summary>
 public override void onNodeInstanceEventFired(NodeInstanceEvent e)
 {
     //同步器节点的监听器触发条件,是在离开这个节点的时候
     if (e.EventType == NodeInstanceEventEnum.NODEINSTANCE_LEAVING)
     {
         ISynchronizerInstance syncInst = (ISynchronizerInstance)e.getSource();
         IPersistenceService persistenceService = this.RuntimeContext.PersistenceService;
         //删除同步器节点的token
         persistenceService.DeleteTokensForNode(e.Token.ProcessInstanceId, syncInst.Synchronizer.Id);
     }
     //如果节点实例结束,就触发
     if (e.EventType == NodeInstanceEventEnum.NODEINSTANCE_COMPLETED)
     {
         // 执行ProcessInstance的complete操作
         IToken tk = e.Token;
         ProcessInstance currentProcessInstance = (ProcessInstance)tk.ProcessInstance;
         currentProcessInstance.complete();
     }
 }
Example #5
0
 /// <summary>节点实例监听器</summary>
 public override void onNodeInstanceEventFired(NodeInstanceEvent e)
 {
     //同步器节点的监听器触发条件,是在离开这个节点的时候
     if (e.EventType == NodeInstanceEventEnum.NODEINSTANCE_LEAVING)
     {
         ISynchronizerInstance syncInst           = (ISynchronizerInstance)e.getSource();
         IPersistenceService   persistenceService = this.RuntimeContext.PersistenceService;
         //删除同步器节点的token
         persistenceService.DeleteTokensForNode(e.Token.ProcessInstanceId, syncInst.Synchronizer.Id);
     }
     //如果节点实例结束,就触发
     if (e.EventType == NodeInstanceEventEnum.NODEINSTANCE_COMPLETED)
     {
         // 执行ProcessInstance的complete操作
         IToken          tk = e.Token;
         ProcessInstance currentProcessInstance = (ProcessInstance)tk.ProcessInstance;
         currentProcessInstance.complete();
     }
 }
Example #6
0
 /// <summary>节点实例监听器</summary>
 public void onNodeInstanceEventFired(NodeInstanceEvent e)
 {
     // TODO Auto-generated method stub
     if (e.EventType == NodeInstanceEventEnum.NODEINSTANCE_FIRED)
     {
         //保存token,并创建taskinstance
         IPersistenceService persistenceService = this.RuntimeContext.PersistenceService;
         //TODO wmj2003 这里是插入还是更新token
         persistenceService.SaveOrUpdateToken(e.Token);
         //触发activity节点,就要创建新的task
         this.RuntimeContext.TaskInstanceManager.createTaskInstances(e.Token, (IActivityInstance)e.getSource());
     }
     else if (e.EventType == NodeInstanceEventEnum.NODEINSTANCE_COMPLETED)
     {
         //			RuntimeContext.getInstance()
         //			.TaskInstanceManager
         //			.archiveTaskInstances((IActivityInstance)e.getSource());
     }
 }