本站首页    管理页面    写新日志    退出


«August 2025»
12
3456789
10111213141516
17181920212223
24252627282930
31


公告
 本博客在此声明所有文章均为转摘,只做资料收集使用。

我的分类(专题)

日志更新

最新评论

留言板

链接

Blog信息
blog名称:
日志总数:1304
评论数量:2242
留言数量:5
访问次数:7585428
建立时间:2006年5月29日




[JBoss]一个JBPM工作流管理示例(三)
软件技术,  电脑与网络

lhwork 发表于 2006/6/30 15:28:25

(二)Decisionpackage kellerdu.jbpm.delegation; import org.jbpm.delegation.*;import kellerdu.jbpm.LogsFactory;import org.apache.commons.logging.Log;import kellerdu.jbpm.Constants; public class ChiefDecision implements DecisionHandler {    public ChiefDecision() {    }     /**     * 判断是否需要主管批准,决定下一个要进行的transition     *     * @param executionContext ExecutionContext     * @return String     * @todo Implement this org.jbpm.delegation.DecisionHandler method     */    public String decide(ExecutionContext executionContext) {        Log log=LogsFactory.getLogInstance(this.getClass());        String ac=(String)executionContext.getVariable(Constants.USER_NAME);        if(ac!=null&&(ac.equals("dali")||ac.equals("wang"))){            log.info(ac+"需要老板批准!");            return "BossApprove";        }else{            log.info(ac+"需要先经主管批准");            return "ChiefApprove";        }    }}=======================(三)forkpackage kellerdu.jbpm.delegation; import org.jbpm.*;import org.jbpm.delegation.*;import org.jbpm.model.execution.*;import java.util.*; public class DecidedJoin implements JoinHandler {    public DecidedJoin() {    }     /**     * fork,只要一个分支到达,即可进行下一步操作,同时取消其它同时进行的分支。     * 这里就是用户如果取消,请假就取消。如果用户请假批准,则用户不能取消。     *     * @param forkContext ForkContext     * @throws ExecutionException     * @todo Implement this org.jbpm.delegation.ForkHandler method     */    public void join(JoinContext joinContext) throws ExecutionException {        Iterator it=joinContext.getConcurrentTokens().values().iterator();        Token arrivingToken = joinContext.getToken();        while(it.hasNext()){            Token to=(Token)it.next();            if(to.getId().equals(arrivingToken.getId())){                //取消其它执行的Token                joinContext.getExecutionService().cancelToken(to.getId());            }        }         // reactivate the parent token.          joinContext.reactivateToken( arrivingToken.getParent() );    }}


阅读全文(2289) | 回复(0) | 编辑 | 精华
 



发表评论:
昵称:
密码:
主页:
标题:
验证码:  (不区分大小写,请仔细填写,输错需重写评论内容!)



站点首页 | 联系我们 | 博客注册 | 博客登陆

Sponsored By W3CHINA
W3CHINA Blog 0.8 Processed in 0.063 second(s), page refreshed 144756283 times.
《全国人大常委会关于维护互联网安全的决定》  《计算机信息网络国际联网安全保护管理办法》
苏ICP备05006046号