public void executeWorkItem(WorkItem workItem, WorkItemManager manager) {
String implementation = getImplementation(workItem.getParameters());
if (IMPLEMENTATION_SWITCHYARD.equalsIgnoreCase(implementation)) {
super.executeWorkItem(workItem, manager);
} else {
ServiceTaskHandler sth;
ProcessRuntime runtime = getProcessRuntime();
if (runtime instanceof KieSession) {
sth = new ServiceTaskHandler((KieSession)runtime);
} else {
sth = new ServiceTaskHandler();
}
sth.setClassLoader(getClass().getClassLoader());
sth.executeWorkItem(workItem, manager);
}
}