public class ControlFlowPointcut extends java.lang.Object implements Pointcut, ClassFilter, MethodMatcher, java.io.Serializable
TRUETRUE| Constructor and Description |
|---|
ControlFlowPointcut(java.lang.Class<?> clazz)
Construct a new pointcut that matches all control flows below that class.
|
ControlFlowPointcut(java.lang.Class<?> clazz,
java.lang.String methodName)
Construct a new pointcut that matches all calls below the given method
in the given class.
|
| Modifier and Type | Method and Description |
|---|---|
boolean |
equals(java.lang.Object other) |
ClassFilter |
getClassFilter()
Return the ClassFilter for this pointcut.
|
int |
getEvaluations()
It's useful to know how many times we've fired, for optimization.
|
MethodMatcher |
getMethodMatcher()
Return the MethodMatcher for this pointcut.
|
int |
hashCode() |
boolean |
isRuntime()
Is this MethodMatcher dynamic, that is, must a final call be made on the
MethodMatcher.matches(java.lang.reflect.Method, Class, Object[]) method at
runtime even if the 2-arg matches method returns true? |
boolean |
matches(java.lang.Class<?> clazz)
Subclasses can override this for greater filtering (and performance).
|
boolean |
matches(java.lang.reflect.Method method,
java.lang.Class<?> targetClass)
Subclasses can override this if it's possible to filter out
some candidate classes.
|
boolean |
matches(java.lang.reflect.Method method,
java.lang.Class<?> targetClass,
java.lang.Object... args)
Check whether there a runtime (dynamic) match for this method,
which must have matched statically.
|
public ControlFlowPointcut(java.lang.Class<?> clazz)
clazz - the clazzpublic ControlFlowPointcut(java.lang.Class<?> clazz,
java.lang.String methodName)
clazz - the clazzmethodName - the name of the method (may be null)public boolean matches(java.lang.Class<?> clazz)
matches in interface ClassFilterclazz - the candidate target classpublic boolean matches(java.lang.reflect.Method method,
java.lang.Class<?> targetClass)
matches in interface MethodMatchermethod - the candidate methodtargetClass - the target class (may be null, in which case
the candidate class must be taken to be the method's declaring class)public boolean isRuntime()
MethodMatcherMethodMatcher.matches(java.lang.reflect.Method, Class, Object[]) method at
runtime even if the 2-arg matches method returns true?
Can be invoked when an AOP proxy is created, and need not be invoked again before each method invocation,
isRuntime in interface MethodMatcherMethodMatcher.matches(java.lang.reflect.Method, Class, Object[]) method
is required if static matching passedpublic boolean matches(java.lang.reflect.Method method,
java.lang.Class<?> targetClass,
java.lang.Object... args)
MethodMatcherThis method is invoked only if the 2-arg matches method returns
true for the given method and target class, and if the
MethodMatcher.isRuntime() method returns true. Invoked
immediately before potential running of the advice, after any
advice earlier in the advice chain has run.
matches in interface MethodMatchermethod - the candidate methodtargetClass - the target class (may be null, in which case
the candidate class must be taken to be the method's declaring class)args - arguments to the methodMethodMatcher.matches(Method, Class)public int getEvaluations()
public ClassFilter getClassFilter()
PointcutgetClassFilter in interface Pointcutnull)public MethodMatcher getMethodMatcher()
PointcutgetMethodMatcher in interface Pointcutnull)public boolean equals(java.lang.Object other)
equals in class java.lang.Objectpublic int hashCode()
hashCode in class java.lang.Object