## org.springframework.aop.support.annotation
Class AnnotationMatchingPointcut

    java.lang.Object
      org.springframework.aop.support.annotation.AnnotationMatchingPointcut

All Implemented Interfaces:
  Pointcut

    public class AnnotationMatchingPointcut

extends Object
implements Pointcut

Simple Pointcut that looks for a specific Java 5 annotation being present on a `class` or `method`.

Since:
  2.0
Author:
  Juergen Hoeller
See Also:
  `AnnotationClassFilter`, `AnnotationMethodMatcher`

Field Summary

Fields inherited from interface org.springframework.aop.Pointcut
`TRUE`

Constructor Summary
`AnnotationMatchingPointcut(Class<? extends Annotation> classAnnotationType)` Create a new AnnotationMatchingPointcut for the given annotation type.
`AnnotationMatchingPointcut(Class<? extends Annotation> classAnnotationType, boolean checkInherited)` Create a new AnnotationMatchingPointcut for the given annotation type.
`AnnotationMatchingPointcut(Class<? extends Annotation> classAnnotationType, Class<? extends Annotation> methodAnnotationType)` Create a new AnnotationMatchingPointcut for the given annotation type.

Method Summary
`static AnnotationMatchingPointcut` `forClassAnnotation(Class<? extends Annotation> annotationType)` Factory method for an AnnotationMatchingPointcut that matches for the specified annotation at the class level.
`static AnnotationMatchingPointcut` `forMethodAnnotation(Class<? extends Annotation> annotationType)` Factory method for an AnnotationMatchingPointcut that matches for the specified annotation at the method level.
`ClassFilter` `getClassFilter()` Return the ClassFilter for this pointcut.
`MethodMatcher` `getMethodMatcher()` Return the MethodMatcher for this pointcut.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### AnnotationMatchingPointcut

    public AnnotationMatchingPointcut(Class<? extends Annotation> classAnnotationType)

  Create a new AnnotationMatchingPointcut for the given annotation type.

  Parameters:
    `classAnnotationType` - the annotation type to look for at the class level

### AnnotationMatchingPointcut

    public AnnotationMatchingPointcut(Class<? extends Annotation> classAnnotationType,
                                      boolean checkInherited)

  Create a new AnnotationMatchingPointcut for the given annotation type.

  Parameters:
    `classAnnotationType` - the annotation type to look for at the class level
    `checkInherited` - whether to explicitly check the superclasses and interfaces for the annotation type as well (even if the annotation type is not marked as inherited itself)

### AnnotationMatchingPointcut

    public AnnotationMatchingPointcut(Class<? extends Annotation> classAnnotationType,
                                      Class<? extends Annotation> methodAnnotationType)

  Create a new AnnotationMatchingPointcut for the given annotation type.

  Parameters:
    `classAnnotationType` - the annotation type to look for at the class level (can be `null`)
    `methodAnnotationType` - the annotation type to look for at the method level (can be `null`)

Method Detail

### getClassFilter

    public ClassFilter getClassFilter()

  Description copied from interface: `Pointcut`
  Return the ClassFilter for this pointcut.

  Specified by:
    `getClassFilter` in interface `Pointcut`
  Returns:
    the ClassFilter (never `null`)

### getMethodMatcher

    public MethodMatcher getMethodMatcher()

  Description copied from interface: `Pointcut`
  Return the MethodMatcher for this pointcut.

  Specified by:
    `getMethodMatcher` in interface `Pointcut`
  Returns:
    the MethodMatcher (never `null`)

### forClassAnnotation

    public static AnnotationMatchingPointcut forClassAnnotation(Class<? extends Annotation> annotationType)

  Factory method for an AnnotationMatchingPointcut that matches for the specified annotation at the class level.

  Parameters:
    `annotationType` - the annotation type to look for at the class level
  Returns:
    the corresponding AnnotationMatchingPointcut

### forMethodAnnotation

    public static AnnotationMatchingPointcut forMethodAnnotation(Class<? extends Annotation> annotationType)

  Factory method for an AnnotationMatchingPointcut that matches for the specified annotation at the method level.

  Parameters:
    `annotationType` - the annotation type to look for at the method level
  Returns:
    the corresponding AnnotationMatchingPointcut