[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
Re: [aspectj-users] identifying class not included in pointcut
|
The thing is, in at least some cases, the instrumented method can be assumed to have been directly invoked by a native method at the end of a chain of native methods (c code) and therefore, as I understand things, uninstrumentable .
So what I want is to be made aware of the mere fact that the invoker of the instrumented method was not instrumented itself for some reason.
In other cases, the invoking method would by design simply not be scoped by the aspect. Suppose for instance the invoking method was some part of a Comparator.compare() implementation invoked during a Collections.sort().
What unites both these cases for my purpose is that the invoking method (of the instrumented method ) would be 'missing' from an otherwise full accounting of the call stack.
It's as if I am trying to manually create cflow, customizing it like this- only show 'interesting' things, but recognize and record the fact that, prior to this interesting thing, something uninteresting did occur. The call stack you see being presented by MyManualCflow has gaps in it, and those gaps occurred right HERE and right HERE.
Sent from my ASUS MeMO Pad
Andy Clement <andrew.clement@xxxxxxxxx> wrote:
cflow() and cflowbelow() are the usual tools for detecting something calling some other thing - but that seems like targeting that you don't want to do. In the advice you could create a stack trace (using Thread) and inspect it to see who called you but the performance wouldn't be great.
Andy