public interface AspectJAdvisorFactory
AspectMetadata,
AjTypeSystem| Modifier and Type | Method and Description |
|---|---|
Advice |
getAdvice(java.lang.reflect.Method candidateAdviceMethod,
AspectJExpressionPointcut expressionPointcut,
MetadataAwareAspectInstanceFactory aspectInstanceFactory,
int declarationOrder,
java.lang.String aspectName)
Build a Spring AOP Advice for the given AspectJ advice method.
|
Advisor |
getAdvisor(java.lang.reflect.Method candidateAdviceMethod,
MetadataAwareAspectInstanceFactory aspectInstanceFactory,
int declarationOrder,
java.lang.String aspectName)
Build a Spring AOP Advisor for the given AspectJ advice method.
|
java.util.List<Advisor> |
getAdvisors(MetadataAwareAspectInstanceFactory aspectInstanceFactory)
Build Spring AOP Advisors for all annotated At-AspectJ methods
on the specified aspect instance.
|
boolean |
isAspect(java.lang.Class<?> clazz)
Determine whether or not the given class is an aspect, as reported
by AspectJ's
AjTypeSystem. |
void |
validate(java.lang.Class<?> aspectClass)
Is the given class a valid AspectJ aspect class?
|
boolean isAspect(java.lang.Class<?> clazz)
AjTypeSystem.
Will simply return false if the supposed aspect is
invalid (such as an extension of a concrete aspect class).
Will return true for some aspects that Spring AOP cannot process,
such as those with unsupported instantiation models.
Use the validate(java.lang.Class<?>) method to handle these cases if necessary.
clazz - the supposed annotation-style AspectJ classvoid validate(java.lang.Class<?> aspectClass)
throws AopConfigException
aspectClass - the supposed AspectJ annotation-style class to validateAopConfigException - if the class is an invalid aspect
(which can never be legal)NotAnAtAspectException - if the class is not an aspect at all
(which may or may not be legal, depending on the context)java.util.List<Advisor> getAdvisors(MetadataAwareAspectInstanceFactory aspectInstanceFactory)
aspectInstanceFactory - the aspect instance factory
(not the aspect instance itself in order to avoid eager instantiation)Advisor getAdvisor(java.lang.reflect.Method candidateAdviceMethod, MetadataAwareAspectInstanceFactory aspectInstanceFactory, int declarationOrder, java.lang.String aspectName)
candidateAdviceMethod - the candidate advice methodaspectInstanceFactory - the aspect instance factorydeclarationOrder - the declaration order within the aspectaspectName - the name of the aspectnull if the method is not an AspectJ advice method
or if it is a pointcut that will be used by other advice but will not
create a Spring advice in its own rightAdvice getAdvice(java.lang.reflect.Method candidateAdviceMethod, AspectJExpressionPointcut expressionPointcut, MetadataAwareAspectInstanceFactory aspectInstanceFactory, int declarationOrder, java.lang.String aspectName)
candidateAdviceMethod - the candidate advice methodexpressionPointcut - the AspectJ expression pointcutaspectInstanceFactory - the aspect instance factorydeclarationOrder - the declaration order within the aspectaspectName - the name of the aspectnull if the method is not an AspectJ advice method
or if it is a pointcut that will be used by other advice but will not
create a Spring advice in its own rightAspectJAroundAdvice,
AspectJMethodBeforeAdvice,
AspectJAfterAdvice,
AspectJAfterReturningAdvice,
AspectJAfterThrowingAdvice