return s;
}
private static MethodReturnStep methodReturnTOD(TODSession session, BehaviorExitEvent event, boolean forward, boolean live) {
MethodReturnStep s = new MethodReturnStep();
IBehaviorInfo behavior = event.getOperationBehavior();
// If there is no associated behavior, TOD does not have information
// for the given class. It is likely out of scope.
if (behavior == null || behavior.isStaticInit()) {
return null;
}
MethodInfo methodInfo = session.getClassInformationProvider().getMethodInfo(behavior);
if (!session.getFilter().acceptMethod(methodInfo)) {
return null;
}
s.setType(StepType.METHOD_RETURN);
s.setLive(live);
s.setMethodInfo(methodInfo);
int line = TypeUtils.calculateLineNumber(event.getOperationBehavior(), event.getOperationBytecodeIndex());
s.setLineNumber(line);
s.setForward(forward);
return s;
}