# Package org.springframework.aop.aspectj

AspectJ integration package.

See: Description

- Interface Summary
  Interface | Description
  --- | ---
  AspectInstanceFactory | Interface implemented to provide an instance of an AspectJ aspect.
  AspectJPrecedenceInformation | Interface to be implemented by types that can supply the information needed to sort advice/advisors by AspectJ's precedence rules.
  InstantiationModelAwarePointcutAdvisor | Interface to be implemented by Spring AOP Advisors wrapping AspectJ aspects that may have a lazy initialization strategy.

- Class Summary
  Class | Description
  --- | ---
  AbstractAspectJAdvice | Base class for AOP Alliance `Advice` classes wrapping an AspectJ aspect or an AspectJ-annotated advice method.
  AspectJAdviceParameterNameDiscoverer | `ParameterNameDiscoverer` implementation that tries to deduce parameter names for an advice method from the pointcut expression, returning, and throwing clauses.
  AspectJAfterAdvice | Spring AOP advice wrapping an AspectJ after advice method.
  AspectJAfterReturningAdvice | Spring AOP advice wrapping an AspectJ after-returning advice method.
  AspectJAfterThrowingAdvice | Spring AOP advice wrapping an AspectJ after-throwing advice method.
  AspectJAopUtils | Utility methods for dealing with AspectJ advisors.
  AspectJAroundAdvice | Spring AOP around advice (MethodInterceptor) that wraps an AspectJ advice method.
  AspectJExpressionPointcut | Spring `Pointcut` implementation that uses the AspectJ weaver to evaluate a pointcut expression.
  AspectJExpressionPointcutAdvisor | Spring AOP Advisor that can be used for any AspectJ pointcut expression.
  AspectJMethodBeforeAdvice | Spring AOP advice that wraps an AspectJ before method.
  AspectJPointcutAdvisor | AspectJPointcutAdvisor that adapts an `AbstractAspectJAdvice` to the `PointcutAdvisor` interface.
  AspectJProxyUtils | Utility methods for working with AspectJ proxies.
  AspectJWeaverMessageHandler | Implementation of AspectJ's `IMessageHandler` interface that routes AspectJ weaving messages through the same logging system as the regular Spring messages.
  DeclareParentsAdvisor | Introduction advisor delegating to the given object.
  MethodInvocationProceedingJoinPoint | Implementation of AspectJ ProceedingJoinPoint interface wrapping an AOP Alliance MethodInvocation.
  SimpleAspectInstanceFactory | Implementation of `AspectInstanceFactory` that creates a new instance of the specified aspect class for every `SimpleAspectInstanceFactory.getAspectInstance()` call.
  SingletonAspectInstanceFactory | Implementation of `AspectInstanceFactory` that is backed by a specified singleton object, returning the same instance for every `SingletonAspectInstanceFactory.getAspectInstance()` call.
  TypePatternClassFilter | Spring AOP `ClassFilter` implementation using AspectJ type matching.

- Exception Summary
  Exception | Description
  --- | ---
  AspectJAdviceParameterNameDiscoverer.AmbiguousBindingException | Thrown in response to an ambiguous binding being detected when trying to resolve a method's parameter names.

## Package org.springframework.aop.aspectj Description

AspectJ integration package. Includes Spring AOP advice implementations for AspectJ 5 annotation-style methods, and an AspectJExpressionPointcut: a Spring AOP Pointcut implementation that allows use of the AspectJ pointcut expression language with the Spring AOP runtime framework.

Note that use of this package does not require the use of the `ajc` compiler or AspectJ load-time weaver. It is intended to enable the use of a valuable subset of AspectJ functionality, with consistent semantics, with the proxy-based Spring AOP framework.