## Package org.springframework.aop.aspectj.annotation

Classes enabling AspectJ 5 @Annotated classes to be used in Spring AOP.

See:
Description

Interface Summary
AspectJAdvisorFactory: Interface for factories that can create Spring AOP Advisors from classes annotated with AspectJ annotation syntax.
MetadataAwareAspectInstanceFactory: Subinterface of `AspectInstanceFactory` that returns `AspectMetadata` associated with AspectJ-annotated classes.

Class Summary
AbstractAspectJAdvisorFactory: Abstract base class for factories that can create Spring AOP Advisors given AspectJ classes from classes honoring the AspectJ 5 annotation syntax.
AbstractAspectJAdvisorFactory.AspectJAnnotation<A extends Annotation>: Class modelling an AspectJ annotation, exposing its type enumeration and pointcut String.
AnnotationAwareAspectJAutoProxyCreator: `AspectJAwareAdvisorAutoProxyCreator` subclass that processes all AspectJ annotation aspects in the current application context, as well as Spring Advisors.
AspectJProxyFactory: AspectJ-based proxy factory, allowing for programmatic building of proxies which include AspectJ aspects (code style as well Java 5 annotation style).
AspectMetadata: Metadata for an AspectJ aspect class, with an additional Spring AOP pointcut for the per clause.
BeanFactoryAspectInstanceFactory: `AspectInstanceFactory` implementation backed by a Spring `BeanFactory`.
BeanFactoryAspectJAdvisorsBuilder: Helper for retrieving @AspectJ beans from a BeanFactory and building Spring Advisors based on them, for use with auto-proxying.
LazySingletonAspectInstanceFactoryDecorator: Decorator to cause a `MetadataAwareAspectInstanceFactory` to instantiate only once.
PrototypeAspectInstanceFactory: AspectInstanceFactory backed by a BeanFactory-provided prototype, enforcing prototype semantics.
ReflectiveAspectJAdvisorFactory: Factory that can create Spring AOP Advisors given AspectJ classes from classes honoring the AspectJ 5 annotation syntax, using reflection to invoke the corresponding advice methods.
ReflectiveAspectJAdvisorFactory.SyntheticInstantiationAdvisor: Synthetic advisor that instantiates the aspect.
SimpleMetadataAwareAspectInstanceFactory: Implementation of `MetadataAwareAspectInstanceFactory` that creates a new instance of the specified aspect class for every `SimpleAspectInstanceFactory.getAspectInstance()` call.
SingletonMetadataAwareAspectInstanceFactory: Implementation of `MetadataAwareAspectInstanceFactory` that is backed by a specified singleton object, returning the same instance for every `SingletonAspectInstanceFactory.getAspectInstance()` call.

Enum Summary
AbstractAspectJAdvisorFactory.AspectJAnnotationType

Exception Summary
NotAnAtAspectException: Extension of AopConfigException thrown when trying to perform an advisor generation operation on a class that is not an AspectJ annotation-style aspect.

## Package org.springframework.aop.aspectj.annotation Description

Classes enabling AspectJ 5 @Annotated classes to be used in Spring AOP.

Normally to be used through an AspectJAutoProxyCreator rather than directly.