task.setDescription(taskDefinition.getDescription());
task.setPriority(taskDefinition.getPriority());
task.setFormResourceName(taskDefinition.getFormResourceName());
// save task so that TaskDbSession.findTaskByExecution works for assign event listeners
dbSession.save(task);
SwimlaneDefinitionImpl swimlaneDefinition = taskDefinition.getSwimlaneDefinition();
if (swimlaneDefinition!=null) {
SwimlaneImpl swimlane = execution.getInitializedSwimlane(swimlaneDefinition);
task.setSwimlane(swimlane);