流程实例中,存有contextInstance来管理token和variable.
contextInstance是通过一个map来进行管理的,这个map的key是token的全名,value是
一个TokenVariableMap的对象.
TokenVariableMap本身并不是个map,而是一个普通的Object,我个人认为jbpm把这个类
的名称取为...Map是一个错误的使用方法.
TokenVariableMap有三个属性,一个是token的全名,一个是Token对象本身,还有一个是
一个Map,用来放variable的name和value,这个Map的名称为variableInstances.
variableInstances是一个map,它的key是variable的名称,如"a",value是一个
VariableInstance对象,VariableInstance对象放了三个属性,一个是token对象本身,
一个是variable的名称,另外一个是variable的value,如 new Integer(3).
我个人的分析认为,jbpm对属性的取名不太恰当,它把不是map的属性取名...Map,而把
是map的属性取名为...s;不过,jbpm对token和variable的处理办法还是值得我们学习的,
它把token等信息直接放到VariableInstance对象中,方便了程序的处理.