接口 ConstructorInterceptor

所有超级接口:
Advice, Interceptor

public interface ConstructorInterceptor extends Interceptor
Intercepts the construction of a new object.

The user should implement the construct(ConstructorInvocation) method to modify the original behavior. E.g. 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");
         }
     }
 }
 
  • 方法概要

    修饰符和类型
    方法
    说明
    Implement this method to perform extra treatments before and after the consrution of a new object.
  • 方法详细资料

    • construct

      Object construct(ConstructorInvocation invocation) throws Throwable
      Implement this method to perform extra treatments before and after the consrution of a new object. Polite implementations would certainly like to invoke Joinpoint.proceed().
      参数:
      invocation - the construction joinpoint
      返回:
      the newly created object, which is also the result of the call to Joinpoint.proceed(), might be replaced by the interceptor.
      抛出:
      Throwable - if the interceptors or the target-object throws an exception.