public abstract class ProcessOrCaseTaskActivityBehavior extends TaskActivityBehavior implements TransferVariablesActivityBehavior {
protected CallableElement callableElement;
protected void performStart(CmmnActivityExecution execution) {
CmmnExecution caseExecution = (CmmnExecution) execution;
List<CallableElementParameter> inputs = callableElement.getInputs();
Map<String, Object> variables = getVariables(inputs, caseExecution);
String businessKey = callableElement.getBusinessKey(caseExecution);
triggerCallableElement(caseExecution, variables, businessKey);
if (caseExecution.isActive() && !isBlocking(caseExecution)) {
caseExecution.complete();
}
}