# Migrate to Flowable from Activiti - BpmParseHandler

**URL:** <https://forum.flowable.org/t/migrate-to-flowable-from-activiti-bpmparsehandler/8449>\
**Category:** Flowable Engine\
**Created:** [September 23, 2021, 7:57am UTC](https://forum.flowable.org/t/migrate-to-flowable-from-activiti-bpmparsehandler/8449 "2021-09-23T07:57:44Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![daafvader](https://yyz1.discourse-cdn.com/flex035/user_avatar/forum.flowable.org/daafvader/32/2582_2.png) [@daafvader](https://forum.flowable.org/u/daafvader)\
**Post date:** [September 23, 2021, 7:57am UTC](https://forum.flowable.org/t/migrate-to-flowable-from-activiti-bpmparsehandler/8449/1 "2021-09-23T07:57:44Z")

</div>

Hi  
I’m migrating an old activiti app to Flowable. I’m having trouble with some code we had to attach create/complete/cancel listeners to user tasks. I could not find any examples on how to migrate this code. Any help would be appreciated.

Simplified example below:

```auto

public class HumanTaskParseHandler implements BpmnParseHandler{
 private IHumanTaskCreateListener listener;

  @Override
  public Collection<Class<? extends BaseElement>> getHandledTypes()
  {
    return Lists.<Class<? extends BaseElement>>newArrayList(UserTask.class);
  }

  @Override
  public void parse(BpmnParse bpmnParse, BaseElement element)
  {
    String taskDefinitionKey = element.getId();
    TaskDefinition taskDefinition =
        bpmnParse.getCurrentProcessDefinition().getTaskDefinitions().get(taskDefinitionKey);
    taskDefinition.addTaskListener(TaskListener.EVENTNAME_CREATE, listener);
}
}

```
