You want to capture all join points encountered when a join point’s arguments, if any, are of a specific type, number, and ordering.
Identifiers]) pointcut. The syntax for this
pointcut <pointcut name>(
<any values to be picked up>) : args(
<types> or <identifiers> | .. | *, <repeat>);
Identifiers]) pointcut has seven key
Any combination of
Identifiers can be used to narrow to the right
join points and expose the right context to the advice.
Identifier is used to examine the type of the
runtime objects that are the arguments at the captured join point and
to expose those objects to the advice if required.
.. allows you some flexibility in the number
of arguments that a particular join point must have to match against
Identifiers]) pointcut picks all join points that
exactly match the types of the arguments specified. This is to say
that the pointcut will only match join points on methods that have
the same order, number, and types of parameters at runtime.
“best fit” policy is used by the
pointcut. This means the statement
args(MyClass,..,float) would result in any join
points being matched that have two arguments, starting with a
MyClass object and followed by any number of arguments that ...