Migration from Activiti 5.15.1 to Flowable 6

Hi

We are trying to migrate from Activiti 5.15.1 to Activiti 6 and then to Flowable 6.

Here are couple of issues I see with missing methods

  1. In below code getTaskDefinition() and bpmnParse.getCurrentActivity() method has been removed, could you please suggest an alternate way to implement the same.
    public class MCUserTaskParseHandler extends AbstractBpmnParseHandler
    {
    private TaskListener _userTaskAssignmentListener;
    private TaskListener _userTaskCreationListener;

    protected Class<? extends BaseElement> getHandledType()
    {
    return UserTask.class;
    }

    protected void executeParse(BpmnParse bpmnParse, UserTask task)
    {
    UserTaskActivityBehavior taskBehavior =
    (UserTaskActivityBehavior)bpmnParse.getCurrentActivity().getActivityBehavior();

     taskBehavior.getTaskDefinition().addTaskListener(TaskListener.EVENTNAME_ASSIGNMENT,
     												 _userTaskAssignmentListener);
     taskBehavior.getTaskDefinition().addTaskListener(TaskListener.EVENTNAME_CREATE,
     												 _userTaskCreationListener);*/
    

}
}

2)Below the method addExecutionListener() has been removed

public class MCProcessParsehandler extends AbstractBpmnParseHandler
{
private AssetProcessStartListener _assetSetupListener;
private RACIProviderManager _raciManager;

protected void executeParse(BpmnParse bpmnParse, Process processElement)
{
	final ProcessDefinitionEntity process = bpmnParse.getCurrentProcessDefinition();

	process.addExecutionListener(ExecutionListener.EVENTNAME_START, _assetSetupListener);
	process.addExecutionListener(ExecutionListener.EVENTNAME_START,
								 new RACIProcessStartListener(process.getName(), _raciManager));

}

Appreciate if you could suggest alternate method for the same.

Thanks
Binish

Anyone faced such issues…? thanks!

  1. Listeners are now added to the userTask directly, so something like userTask.getTaskListeners().add()

  2. Use the ProcessParseHandler and similar as to (1), you can add a listener to the Process there.

Thanks but userTask.getTaskListeners().add() expects an ActivitiListener whereas our current implementation leverages custom classes which implement TaskListener class with custom logic within notify() method.

So is there a way to still leverage our existing implementation of TaskListeners or will need to change our custom code to implement ActivitiListener. If so, not sure where exactly existing logic from the notify() method goes in AcitivitiListener. I did not find any documentation around AcitivitiListener.

I think ActivitiListener has a setInstance() method - wherein I can set an instance of tasklistener.