JBPM TaskInstance 对象创建过程

对象获得过程如下:

获得对象工厂--->工厂创建代理对象


TaskMgmtInstance tmi = executionContext.getTaskMgmtInstance();

TaskInstance ti=tmi.createTaskInstance(task, token);

TaskInstanceFactory taskInstanceFactory = (TaskInstanceFactory)org.jbpm.JbpmConfiguration.Configs.getObject("jbpm.task.instance.factory"); //创建工厂对象

taskInstanceFactory.createTaskInstance()  //通过工厂创建对象

TaskinstanceFactoryImpl->new TaskInstanceInvokeHandler().getTi();

public class TaskInstanceInvokeHandler{
    private TaskInstance ti;
    public TaskInstanceInvokeHandler(){
        Class[] interfaces=new Class[]{TaskinstanceProxy.class};
        Class c=TaskinstanceInterceptor.getProxyFactory(TaskInstance.class, interfaces);
        try {
            ti=(TaskInstance)TaskinstanceInterceptor.getProxyInstance(c,new TaskinstanceInterceptor());//获得代理对象
        } catch (InstantiationException e) {
            e.printStackTrace();
        } catch (IllegalAccessException e) {
            e.printStackTrace();
        }
    }
    public TaskInstance getTi() {
        return ti;
    }
}


 

原文地址:https://www.cnblogs.com/rigid/p/4837553.html