Interface ConstructorInterceptor
- All Superinterfaces:
Advice, Interceptor
Intercepts the construction of a new object.
The user should implement the construct(ConstructorInvocation) method to modify the original
behavior. For example, the following class implements a singleton
interceptor (allows only one unique instance for the intercepted
class):
class DebuggingInterceptor implements ConstructorInterceptor {
Object instance=null;
Object construct(ConstructorInvocation i) throws Throwable {
if(instance==null) {
return instance=i.proceed();
} else {
throw new Exception("singleton does not allow multiple instance");
}
}
}
- Author:
- Rod Johnson
-
Method Summary
Modifier and TypeMethodDescriptionconstruct(ConstructorInvocation invocation) Implement this method to perform extra treatments before and after the construction of a new object.
-
Method Details
-
construct
Implement this method to perform extra treatments before and after the construction of a new object. Polite implementations would certainly like to invokeJoinpoint.proceed().- Parameters:
invocation- the construction joinpoint- Returns:
- the newly created object, which is also the result of
the call to
Joinpoint.proceed(); might be replaced by the interceptor - Throws:
Throwable- if the interceptors or the target object throws an exception
-