final boolean isSourceSet = sourceObject != null;
final boolean isSourceAssignable =
isSourceSet && (cls == null || cls.isAssignableFrom(sourceObject.getObject().getClass()));
if (isSourceAssignable) {
request.appendDebug(" " + variableName + " set to " + sourceObjectId + " (" + scope + ")");
context.addVariable(variableName, sourceObjectId, scope);
} else {
request.appendDebug(" " + variableName + " set to " + sourceObjectId + " (" + scope + ")");
if (defaultObjectId != null) {
context.addVariable(variableName, defaultObjectId, scope);
}