public void complete() { fireEvent(TaskListener.EVENTNAME_COMPLETE); if (Authentication.getAuthenticatedUserId() != null && processInstanceId != null) { getProcessInstance() .involveUser(Authentication.getAuthenticatedUserId(), IdentityLinkType.PARTICIPANT); } Context.getCommandContext() .getTaskEntityManager() .deleteTask(this, TaskEntity.DELETE_REASON_COMPLETED, false); if (executionId != null) { ExecutionEntity execution = getExecution(); execution.removeTask(this); execution.signal(null, null); } }