原文地址:[url]http://www.blogjava.net/sshwsfc/archive/2007/04/24/113217.html[/url]
ProcessInstance里面有一个findToken(String tokenPath)方法。这里面写的是tokenPath。 tokenPath跟文件系统的规则差不多。类似 /fork1/fork2 这样的。
那么,怎么到fork2下的一个分支token ?
token自己也有findToken这个方法,不同的是ProcessInstance的是以rootToken为起点,token自己的是以自己为起点。那么取到token2下面的分支
token2.findToken("token")
如果有返回token,没有返回null
至于token的名字,我刚才查源码才发现,只有在Fork节点才会给token赋予名字。。。
那么token2.findToken("token") 这里"token"那里来
命名的规则,如下。。
String tokenName = null;
if ( transitionName != null ) {
if ( ! parent.hasChild( transitionName ) ) {
tokenName = transitionName;
} else {
int i = 2;
tokenName = transitionName + Integer.toString( i );
while ( parent.hasChild( tokenName ) ) {
i++;
tokenName = transitionName + Integer.toString( i );
}
}
} else { // no transition name
int size = ( parent.getChildren()!=null ? parent.getChildren().size()+1 : 1 );
tokenName = Integer.toString(size);
}
return tokenName;
这里"token"那里来?这个token名字,你自己可以根据命名规则得到 。看到这里应该很明了了
token的命名规则;首先根据transitionName的名字命名,这个transitionName的名字是你自己的写的你不可能不知道。 如果transitionName的名字重名了,加自然数区分 当然,如果transitionName没有名字,用分支的个数+1作为名字。
应该比较清楚了。
PS:这个是qq聊天记录的整理版,所以说话比较诡异。为的是记录下来避免忘记,也感谢群里的朋友。发现互相解决问题是提高水平的一个捷径。。
ProcessInstance里面有一个findToken(String tokenPath)方法。这里面写的是tokenPath。 tokenPath跟文件系统的规则差不多。类似 /fork1/fork2 这样的。
那么,怎么到fork2下的一个分支token ?
token自己也有findToken这个方法,不同的是ProcessInstance的是以rootToken为起点,token自己的是以自己为起点。那么取到token2下面的分支
token2.findToken("token")
如果有返回token,没有返回null
至于token的名字,我刚才查源码才发现,只有在Fork节点才会给token赋予名字。。。
那么token2.findToken("token") 这里"token"那里来
命名的规则,如下。。
String tokenName = null;
if ( transitionName != null ) {
if ( ! parent.hasChild( transitionName ) ) {
tokenName = transitionName;
} else {
int i = 2;
tokenName = transitionName + Integer.toString( i );
while ( parent.hasChild( tokenName ) ) {
i++;
tokenName = transitionName + Integer.toString( i );
}
}
} else { // no transition name
int size = ( parent.getChildren()!=null ? parent.getChildren().size()+1 : 1 );
tokenName = Integer.toString(size);
}
return tokenName;
这里"token"那里来?这个token名字,你自己可以根据命名规则得到 。看到这里应该很明了了
token的命名规则;首先根据transitionName的名字命名,这个transitionName的名字是你自己的写的你不可能不知道。 如果transitionName的名字重名了,加自然数区分 当然,如果transitionName没有名字,用分支的个数+1作为名字。
应该比较清楚了。
PS:这个是qq聊天记录的整理版,所以说话比较诡异。为的是记录下来避免忘记,也感谢群里的朋友。发现互相解决问题是提高水平的一个捷径。。