protected void skip(final Execution internalExecution) {
final ActivityDefinition activity = internalExecution.getNode();
if (activity.getDynamicExecutionSummary() != null) {
try {
if (GroovyExpression.isGroovyExpression(activity.getDynamicExecutionSummary())) {
final Object dynamicExecutionSummary = GroovyUtil.evaluate(activity.getDynamicExecutionSummary(), null,
internalExecution.getActivityInstanceUUID(), false, false);
if (dynamicExecutionSummary != null) {
internalExecution.getActivityInstance().setDynamicExecutionSummary(dynamicExecutionSummary.toString());
}
} else {
internalExecution.getActivityInstance().setDynamicExecutionSummary(activity.getDynamicExecutionSummary());
}
} catch (final Exception e) {
throw new BonitaWrapperException(new BonitaRuntimeException("Error while ending execution: "
+ activity.getDynamicExecutionSummary(), e));
}
}
if (activity.getMultiInstantiationDefinition() != null || activity.getMultipleInstancesInstantiator() != null) {
removeChildrenActivityInstances(internalExecution);
terminateInstanceIfNoOutgoingTransitions(internalExecution);
executeSplit(internalExecution, false);
} else {
terminateInstanceIfNoOutgoingTransitions(internalExecution);
executeSplit(internalExecution, true);
}
}