void (MethodExitEvent event) { if (LOG.isDebugEnabled()) { LOG.debug("<- " + event.method()); } try { if (myEntryMethod != null) { // first check declaring type to avoid method calculation in some cases if (myEntryMethod.declaringType().equals(event.location().declaringType()) && myEntryMethod.equals(event.method())) { LOG.debug("Now watching all"); enableEntryWatching(true); myEntryMethod = null; DebuggerUtilsAsync.setEnabled(createExitRequest(), true); } else { return; } } final Method method = event.method(); final Value retVal = event.returnValue(); if (method == null || !DebuggerUtilsEx.isVoid(method)) { // remember methods with non-void return types only myLastExecutedMethod = method; myLastMethodReturnValue = retVal; } } catch (UnsupportedOperationException ex) { LOG.error(ex); } }