Michael Wohlfart [http://community.jboss.org/people/mwohlf] replied to the 
discussion

"JBPM-2537"

To view the discussion, visit: http://community.jboss.org/message/541258#541258

--------------------------------------------------------------
Hi Guys,

I also stumbled across the jbpm.task.lifecycle.xml file and tried to find out 
what it was doing, this is what i managed to figure out so far:
The content of the file is read in org.jbpm.pvm.internal.task.LifeCycle.java, 
it is parsed and seems to implement a kind of min-process / state machine for 
the task status. You can call LifeCycle.fireLifeCycleEvent(String eventName, 
TaskImpl task)and it changes the state of the task according to the transitions 
defined in jbpm.task.lifecycle.xml.

protected static void fireLifeCycleEvent(String eventName, TaskImpl task) {
    // reading the state machine
    ExecutionImpl lifeCycleExecution = new ExecutionImpl();
    ProcessDefinitionImpl lifeCycleProcess = getLifeCycle(task);
    lifeCycleExecution.setProcessDefinition(lifeCycleProcess);
    // setting up the current state:
    String state = task.getState();
    Activity activity = lifeCycleProcess.getActivity(state);
    lifeCycleExecution.setActivity((ActivityImpl) activity);
    // performing a transition
    lifeCycleExecution.signal(eventName);
    // transfering the new state to the task 
    task.setState(lifeCycleExecution.getActivity().getName());
}

I think this is great stuff, unfortunatly I couldn't find any place in the code 
where LifeCycle.fireLifeCycleEvent(String eventName,  TaskImpl task)is called, 
but to me it seems a nice idea to have the task status and transitions 
configurable in a single file like this.

--------------------------------------------------------------

Reply to this message by going to Community
[http://community.jboss.org/message/541258#541258]

Start a new discussion in jBPM Development at Community
[http://community.jboss.org/choose-container!input.jspa?contentType=1&containerType=14&container=2035]

_______________________________________________
jboss-user mailing list
[email protected]
https://lists.jboss.org/mailman/listinfo/jboss-user

Reply via email to