Class StaticMethodMatcher

All Implemented Interfaces:
Direct Known Subclasses:
AnnotationMethodMatcher, StaticMethodMatcherPointcut

public abstract class StaticMethodMatcher extends Object implements MethodMatcher
Convenient abstract superclass for static method matchers, which don't care about arguments at runtime.
Rod Johnson
  • Constructor Details

    • StaticMethodMatcher

      public StaticMethodMatcher()
  • Method Details

    • isRuntime

      public final boolean isRuntime()
      Description copied from interface: MethodMatcher
      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?

      Can be invoked when an AOP proxy is created, and need not be invoked again before each method invocation,

      Specified by:
      isRuntime in interface MethodMatcher
      whether or not a runtime match via the 3-arg MethodMatcher.matches(java.lang.reflect.Method, Class, Object[]) method is required if static matching passed
    • matches

      public final boolean matches(Method method, Class<?> targetClass, Object... args)
      Description copied from interface: MethodMatcher
      Check whether there a runtime (dynamic) match for this method, which must have matched statically.

      This 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.

      Specified by:
      matches in interface MethodMatcher
      method - the candidate method
      targetClass - the target class
      args - arguments to the method
      whether there's a runtime match
      See Also: