org.springframework.aop.support.annotation
Class AnnotationClassFilter

java.lang.Object
  extended by org.springframework.aop.support.annotation.AnnotationClassFilter
All Implemented Interfaces:
ClassFilter

public class AnnotationClassFilter
extends java.lang.Object
implements ClassFilter

Simple ClassFilter that looks for a specific Java 5 annotation being present on a class.

Since:
2.0
Author:
Juergen Hoeller
See Also:
AnnotationMatchingPointcut

Field Summary
private  java.lang.Class<? extends java.lang.annotation.Annotation> annotationType
           
private  boolean checkInherited
           
 
Fields inherited from interface org.springframework.aop.ClassFilter
TRUE
 
Constructor Summary
AnnotationClassFilter(java.lang.Class<? extends java.lang.annotation.Annotation> annotationType)
          Create a new AnnotationClassFilter for the given annotation type.
AnnotationClassFilter(java.lang.Class<? extends java.lang.annotation.Annotation> annotationType, boolean checkInherited)
          Create a new AnnotationClassFilter for the given annotation type.
 
Method Summary
 boolean matches(java.lang.Class clazz)
          Should the pointcut apply to the given interface or target class?
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

annotationType

private final java.lang.Class<? extends java.lang.annotation.Annotation> annotationType

checkInherited

private final boolean checkInherited
Constructor Detail

AnnotationClassFilter

public AnnotationClassFilter(java.lang.Class<? extends java.lang.annotation.Annotation> annotationType)
Create a new AnnotationClassFilter for the given annotation type.

Parameters:
annotationType - the annotation type to look for

AnnotationClassFilter

public AnnotationClassFilter(java.lang.Class<? extends java.lang.annotation.Annotation> annotationType,
                             boolean checkInherited)
Create a new AnnotationClassFilter for the given annotation type.

Parameters:
annotationType - the annotation type to look for
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)
Method Detail

matches

public boolean matches(java.lang.Class clazz)
Description copied from interface: ClassFilter
Should the pointcut apply to the given interface or target class?

Specified by:
matches in interface ClassFilter
Parameters:
clazz - the candidate target class
Returns:
whether the advice should apply to the given target class