@Override public void after(Object target, Object[] args, Object result, Throwable throwable) { final int pop = scope.pop(); if (pop != Scope.ZERO) { return; } this.delegate.after(target, args, result, throwable); }
@Override public void before(Object target, Object[] args) { final int push = scope.push(); if (push != Scope.ZERO) { return; } this.delegate.before(target, args); }
@Override public int pop() { final Scope localScope = getLocalScope(); return localScope.pop(); }
@Override public int depth() { final Scope localScope = getLocalScope(); return localScope.depth(); }