N
Novice
I'm finding AspectJ very hard to get into, mostly because the manual
(AspectJ Language Guide) seems very weak to me.
For example, a construct they use all the time in examples is "target()".
Clearly, this is an important thing. But I'm darned if I can find
anything in the manual that actually says what "target()" is or does!
They just seem to assume that it's obvious. But I've got a pretty good
imagination and I can imagine lots of things it might be, each of which
has different implications and significance....
Can anyone enlighten me on what "target()" does? Even just an indication
of where it is explained in the manual would be fine. A link to a better
manual or tutorial on AspectJ, if there is such a thing, would also be
greatly appreciated.
And if anyone is aware of a manual or tutorial that explains how to do X
in Aspect J where there is a long list of X's, that would be REALLY
helpful. For instance, I'd like to write an "entering" log entry for each
method (and constructor) as I execute it and I want that log entry to
include the name of the class and method so I need a pointcut and advice
that is able to determine the class name and method name that is being
executed so that I can put it in the logging statement. I'm picturing
something like:
pointcut entering() : execution ( * * (..));
before() : entering() {
this.logger.entering(className, methodName);
}
I know that some context information is available in each method but I'm
not sure how to get the class and method names so that I can put them in
the advice.
That's why I'd love to find a "How to do X" list with lots of different
X's in it. With a bit of luck, what I'm trying to do would be on the list
and I get to what I want to do a little more quickly than churning
through the Language Guide...
(AspectJ Language Guide) seems very weak to me.
For example, a construct they use all the time in examples is "target()".
Clearly, this is an important thing. But I'm darned if I can find
anything in the manual that actually says what "target()" is or does!
They just seem to assume that it's obvious. But I've got a pretty good
imagination and I can imagine lots of things it might be, each of which
has different implications and significance....
Can anyone enlighten me on what "target()" does? Even just an indication
of where it is explained in the manual would be fine. A link to a better
manual or tutorial on AspectJ, if there is such a thing, would also be
greatly appreciated.
And if anyone is aware of a manual or tutorial that explains how to do X
in Aspect J where there is a long list of X's, that would be REALLY
helpful. For instance, I'd like to write an "entering" log entry for each
method (and constructor) as I execute it and I want that log entry to
include the name of the class and method so I need a pointcut and advice
that is able to determine the class name and method name that is being
executed so that I can put it in the logging statement. I'm picturing
something like:
pointcut entering() : execution ( * * (..));
before() : entering() {
this.logger.entering(className, methodName);
}
I know that some context information is available in each method but I'm
not sure how to get the class and method names so that I can put them in
the advice.
That's why I'd love to find a "How to do X" list with lots of different
X's in it. With a bit of luck, what I'm trying to do would be on the list
and I get to what I want to do a little more quickly than churning
through the Language Guide...