TaskServiceImpl.java 文件源码

java
阅读 35 收藏 0 点赞 0 评论 0

项目:bdf2 作者:
private void changeTask(long taskId,String username,StatusOperation operation,String faultMessage) {
    EntityManager em=getEntityManager();
    EntityTransaction trans=em.getTransaction();
    try{
        trans.begin();
        Task task=em.find(Task.class, taskId);
        if(StringUtils.isNotEmpty(faultMessage)){
            task.setFaultMessage(faultMessage);
        }
        if(changeTaskStatus(task,operation)){
            em.persist(task);               
        }
        TaskStatus status=task.getStatus();
        if(status.equals(TaskStatus.Completed) || status.equals(TaskStatus.Error) || status.equals(TaskStatus.Exited) || status.equals(TaskStatus.Obsolete) || status.equals(TaskStatus.Failed)){
            StatefulKnowledgeSession session=this.bpmService.getSession(task.getSessionId());
            session.getWorkItemManager().completeWorkItem(task.getWorkItemId(),null);   
            session.dispose();
        }
        trans.commit();
    }catch(Exception ex){
        trans.rollback();
        throw new RuntimeException(ex);
    }
}
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号