public class DefaultAdvisorAdapterRegistry extends Object implements AdvisorAdapterRegistry, Serializable
AdvisorAdapterRegistry
interface.
Supports MethodInterceptor
,
MethodBeforeAdvice
,
AfterReturningAdvice
,
ThrowsAdvice
.Constructor and Description |
---|
DefaultAdvisorAdapterRegistry()
Create a new DefaultAdvisorAdapterRegistry, registering well-known adapters.
|
Modifier and Type | Method and Description |
---|---|
MethodInterceptor[] |
getInterceptors(Advisor advisor)
Return an array of AOP Alliance MethodInterceptors to allow use of the
given Advisor in an interception-based framework.
|
void |
registerAdvisorAdapter(AdvisorAdapter adapter)
Register the given
AdvisorAdapter . |
Advisor |
wrap(Object adviceObject)
Return an
Advisor wrapping the given advice. |
public DefaultAdvisorAdapterRegistry()
public Advisor wrap(Object adviceObject) throws UnknownAdviceTypeException
AdvisorAdapterRegistry
Advisor
wrapping the given advice.
Should by default at least support
MethodInterceptor
,
MethodBeforeAdvice
,
AfterReturningAdvice
,
ThrowsAdvice
.
wrap
in interface AdvisorAdapterRegistry
adviceObject
- an object that should be an advicenull
;
if the advice parameter is an Advisor, it is to be returned as-is)UnknownAdviceTypeException
- if no registered advisor adapter
can wrap the supposed advicepublic MethodInterceptor[] getInterceptors(Advisor advisor) throws UnknownAdviceTypeException
AdvisorAdapterRegistry
Don't worry about the pointcut associated with the Advisor
, if it is
a PointcutAdvisor
: just return an interceptor.
getInterceptors
in interface AdvisorAdapterRegistry
advisor
- the Advisor to find an interceptor forUnknownAdviceTypeException
- if the Advisor type is
not understood by any registered AdvisorAdapterpublic void registerAdvisorAdapter(AdvisorAdapter adapter)
AdvisorAdapterRegistry
AdvisorAdapter
. Note that it is not necessary to register
adapters for an AOP Alliance Interceptors or Spring Advices: these must be
automatically recognized by an AdvisorAdapterRegistry
implementation.registerAdvisorAdapter
in interface AdvisorAdapterRegistry
adapter
- an AdvisorAdapter that understands particular Advisor or Advice types