WEB开发网
开发学院软件开发Java jBPM4 PVM的流程定义模型与过程调度 阅读

jBPM4 PVM的流程定义模型与过程调度

 2009-09-21 00:00:00 来源:WEB开发网   
核心提示: 图片看不清楚?请点击这里查看原图(大图),ExecutionActivity 执行节点定义的运行期行为,jBPM4 PVM的流程定义模型与过程调度(4),节点的运行期行为委派给ActivityBehaviour实现,当需要对节点行为进行扩展时,从而将execution移动至给定的转移线上,jPD

图片看不清楚?请点击这里查看原图(大图)。

ExecutionActivity 执行节点定义的运行期行为。节点的运行期行为委派给ActivityBehaviour实现,当需要对节点行为进行扩展时,需要实现 ActivityBehaviour接口。jBPM4存在两个对节点行为进行扩展的接口,分别是ActivityBehaviour和 ExternalActivityBehaviour,ActivityBehaviour的execute方法在节点被执行时调用;ExternalActivityBehaviour继承自ActivityBehaviour,多出一个signal方法,在节点处于等待状态被触发流转时调用。

Java代码   

ActivityBehaviour activityBehaviour = activity.getBehaviour(); 
 
activityBehaviour.execute(execution);
 

Signal执行节点定义的运行期signal方法。

Java代码  

ExternalActivityBehaviour externalActivityBehaviour =   (ExternalActivityBehaviour) activity.getBehaviour(); 
 
externalActivityBehaviour.signal(execution,signalName, parameters);
 

一个典型的signal方法会调用execution的take方法,从而将execution移动至给定的转移线上。jPDL里StateActivity类的signal方法:

Java代码   

execution.take(transition);  

看看execution的take方法,设置execution位置并执行TransitionEndActivity:

Java代码   

//设置当前execution的位置 
setTransition((TransitionImpl) transition); 
  //触发事件,执行TRANSITION_END_ACTIVITY原子操作 
fire(Event.END,getActivity(),AtomicOperation. 
TRANSITION_END_ACTIVITY);
 

上一页  1 2 3 4 5  下一页

Tags:jBPM PVM 流程

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接