class org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor implements org.springframework.cglib.proxy.MethodInterceptor, java.io.Serializable
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor
  super_class: java.lang.Object
{
  private final org.springframework.aop.framework.AdvisedSupport advised;
    descriptor: Lorg/springframework/aop/framework/AdvisedSupport;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  public void <init>(org.springframework.aop.framework.AdvisedSupport);
    descriptor: (Lorg/springframework/aop/framework/AdvisedSupport;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor this
        start local 1 // org.springframework.aop.framework.AdvisedSupport advised
         0: .line 658
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 659
            aload 0 /* this */
            aload 1 /* advised */
            putfield org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.advised:Lorg/springframework/aop/framework/AdvisedSupport;
         2: .line 660
            return
        end local 1 // org.springframework.aop.framework.AdvisedSupport advised
        end local 0 // org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lorg/springframework/aop/framework/CglibAopProxy$DynamicAdvisedInterceptor;
            0    3     1  advised  Lorg/springframework/aop/framework/AdvisedSupport;
    MethodParameters:
         Name  Flags
      advised  

  public java.lang.Object intercept(java.lang.Object, java.lang.reflect.Method, java.lang.Object[], org.springframework.cglib.proxy.MethodProxy);
    descriptor: (Ljava/lang/Object;Ljava/lang/reflect/Method;[Ljava/lang/Object;Lorg/springframework/cglib/proxy/MethodProxy;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=9, locals=15, args_size=5
        start local 0 // org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor this
        start local 1 // java.lang.Object proxy
        start local 2 // java.lang.reflect.Method method
        start local 3 // java.lang.Object[] args
        start local 4 // org.springframework.cglib.proxy.MethodProxy methodProxy
         0: .line 665
            aconst_null
            astore 5 /* oldProxy */
        start local 5 // java.lang.Object oldProxy
         1: .line 666
            iconst_0
            istore 6 /* setProxyContext */
        start local 6 // boolean setProxyContext
         2: .line 667
            aconst_null
            astore 7 /* target */
        start local 7 // java.lang.Object target
         3: .line 668
            aload 0 /* this */
            getfield org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.advised:Lorg/springframework/aop/framework/AdvisedSupport;
            invokevirtual org.springframework.aop.framework.AdvisedSupport.getTargetSource:()Lorg/springframework/aop/TargetSource;
            astore 8 /* targetSource */
        start local 8 // org.springframework.aop.TargetSource targetSource
         4: .line 670
            aload 0 /* this */
            getfield org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.advised:Lorg/springframework/aop/framework/AdvisedSupport;
            getfield org.springframework.aop.framework.AdvisedSupport.exposeProxy:Z
            ifeq 7
         5: .line 672
            aload 1 /* proxy */
            invokestatic org.springframework.aop.framework.AopContext.setCurrentProxy:(Ljava/lang/Object;)Ljava/lang/Object;
            astore 5 /* oldProxy */
         6: .line 673
            iconst_1
            istore 6 /* setProxyContext */
         7: .line 676
      StackMap locals: org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor java.lang.Object java.lang.reflect.Method java.lang.Object[] org.springframework.cglib.proxy.MethodProxy java.lang.Object int java.lang.Object org.springframework.aop.TargetSource
      StackMap stack:
            aload 8 /* targetSource */
            invokeinterface org.springframework.aop.TargetSource.getTarget:()Ljava/lang/Object;
            astore 7 /* target */
         8: .line 677
            aload 7 /* target */
            ifnull 9
            aload 7 /* target */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            goto 10
      StackMap locals:
      StackMap stack:
         9: aconst_null
      StackMap locals:
      StackMap stack: java.lang.Class
        10: astore 9 /* targetClass */
        start local 9 // java.lang.Class targetClass
        11: .line 678
            aload 0 /* this */
            getfield org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.advised:Lorg/springframework/aop/framework/AdvisedSupport;
            aload 2 /* method */
            aload 9 /* targetClass */
            invokevirtual org.springframework.aop.framework.AdvisedSupport.getInterceptorsAndDynamicInterceptionAdvice:(Ljava/lang/reflect/Method;Ljava/lang/Class;)Ljava/util/List;
            astore 10 /* chain */
        start local 10 // java.util.List chain
        12: .line 682
            aload 10 /* chain */
            invokeinterface java.util.List.isEmpty:()Z
            ifeq 16
            aload 2 /* method */
            invokevirtual java.lang.reflect.Method.getModifiers:()I
            invokestatic java.lang.reflect.Modifier.isPublic:(I)Z
            ifeq 16
        13: .line 687
            aload 2 /* method */
            aload 3 /* args */
            invokestatic org.springframework.aop.framework.AopProxyUtils.adaptArgumentsIfNecessary:(Ljava/lang/reflect/Method;[Ljava/lang/Object;)[Ljava/lang/Object;
            astore 12 /* argsToUse */
        start local 12 // java.lang.Object[] argsToUse
        14: .line 688
            aload 4 /* methodProxy */
            aload 7 /* target */
            aload 12 /* argsToUse */
            invokevirtual org.springframework.cglib.proxy.MethodProxy.invoke:(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
            astore 11 /* retVal */
        end local 12 // java.lang.Object[] argsToUse
        start local 11 // java.lang.Object retVal
        15: .line 689
            goto 17
        end local 11 // java.lang.Object retVal
        16: .line 692
      StackMap locals: java.lang.Class java.util.List
      StackMap stack:
            new org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation
            dup
            aload 1 /* proxy */
            aload 7 /* target */
            aload 2 /* method */
            aload 3 /* args */
            aload 9 /* targetClass */
            aload 10 /* chain */
            aload 4 /* methodProxy */
            invokespecial org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.<init>:(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/reflect/Method;[Ljava/lang/Object;Ljava/lang/Class;Ljava/util/List;Lorg/springframework/cglib/proxy/MethodProxy;)V
            invokevirtual org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed:()Ljava/lang/Object;
            astore 11 /* retVal */
        start local 11 // java.lang.Object retVal
        17: .line 694
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 1 /* proxy */
            aload 7 /* target */
            aload 2 /* method */
            aload 11 /* retVal */
            invokestatic org.springframework.aop.framework.CglibAopProxy.processReturnType:(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/reflect/Method;Ljava/lang/Object;)Ljava/lang/Object;
            astore 11 /* retVal */
        18: .line 695
            aload 11 /* retVal */
            astore 14
        19: .line 698
            aload 7 /* target */
            ifnull 21
            aload 8 /* targetSource */
            invokeinterface org.springframework.aop.TargetSource.isStatic:()Z
            ifne 21
        20: .line 699
            aload 8 /* targetSource */
            aload 7 /* target */
            invokeinterface org.springframework.aop.TargetSource.releaseTarget:(Ljava/lang/Object;)V
        21: .line 701
      StackMap locals: org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor java.lang.Object java.lang.reflect.Method java.lang.Object[] org.springframework.cglib.proxy.MethodProxy java.lang.Object int java.lang.Object org.springframework.aop.TargetSource java.lang.Class java.util.List java.lang.Object top top java.lang.Object
      StackMap stack:
            iload 6 /* setProxyContext */
            ifeq 23
        22: .line 703
            aload 5 /* oldProxy */
            invokestatic org.springframework.aop.framework.AopContext.setCurrentProxy:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
        23: .line 695
      StackMap locals:
      StackMap stack:
            aload 14
            areturn
        end local 11 // java.lang.Object retVal
        end local 10 // java.util.List chain
        end local 9 // java.lang.Class targetClass
        24: .line 697
      StackMap locals: org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor java.lang.Object java.lang.reflect.Method java.lang.Object[] org.springframework.cglib.proxy.MethodProxy java.lang.Object int java.lang.Object org.springframework.aop.TargetSource
      StackMap stack: java.lang.Throwable
            astore 13
        25: .line 698
            aload 7 /* target */
            ifnull 27
            aload 8 /* targetSource */
            invokeinterface org.springframework.aop.TargetSource.isStatic:()Z
            ifne 27
        26: .line 699
            aload 8 /* targetSource */
            aload 7 /* target */
            invokeinterface org.springframework.aop.TargetSource.releaseTarget:(Ljava/lang/Object;)V
        27: .line 701
      StackMap locals: org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor java.lang.Object java.lang.reflect.Method java.lang.Object[] org.springframework.cglib.proxy.MethodProxy java.lang.Object int java.lang.Object org.springframework.aop.TargetSource top top top top java.lang.Throwable
      StackMap stack:
            iload 6 /* setProxyContext */
            ifeq 29
        28: .line 703
            aload 5 /* oldProxy */
            invokestatic org.springframework.aop.framework.AopContext.setCurrentProxy:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
        29: .line 705
      StackMap locals:
      StackMap stack:
            aload 13
            athrow
        end local 8 // org.springframework.aop.TargetSource targetSource
        end local 7 // java.lang.Object target
        end local 6 // boolean setProxyContext
        end local 5 // java.lang.Object oldProxy
        end local 4 // org.springframework.cglib.proxy.MethodProxy methodProxy
        end local 3 // java.lang.Object[] args
        end local 2 // java.lang.reflect.Method method
        end local 1 // java.lang.Object proxy
        end local 0 // org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   30     0             this  Lorg/springframework/aop/framework/CglibAopProxy$DynamicAdvisedInterceptor;
            0   30     1            proxy  Ljava/lang/Object;
            0   30     2           method  Ljava/lang/reflect/Method;
            0   30     3             args  [Ljava/lang/Object;
            0   30     4      methodProxy  Lorg/springframework/cglib/proxy/MethodProxy;
            1   30     5         oldProxy  Ljava/lang/Object;
            2   30     6  setProxyContext  Z
            3   30     7           target  Ljava/lang/Object;
            4   30     8     targetSource  Lorg/springframework/aop/TargetSource;
           11   24     9      targetClass  Ljava/lang/Class<*>;
           12   24    10            chain  Ljava/util/List<Ljava/lang/Object;>;
           15   16    11           retVal  Ljava/lang/Object;
           17   24    11           retVal  Ljava/lang/Object;
           14   15    12        argsToUse  [Ljava/lang/Object;
      Exception table:
        from    to  target  type
           4    19      24  any
    Exceptions:
      throws java.lang.Throwable
    RuntimeVisibleAnnotations: 
      org.springframework.lang.Nullable()
    MethodParameters:
             Name  Flags
      proxy        
      method       
      args         
      methodProxy  

  public boolean equals(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor this
        start local 1 // java.lang.Object other
         0: .line 710
            aload 0 /* this */
            aload 1 /* other */
            if_acmpeq 4
         1: .line 711
            aload 1 /* other */
            instanceof org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor
            ifeq 3
         2: .line 712
            aload 0 /* this */
            getfield org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.advised:Lorg/springframework/aop/framework/AdvisedSupport;
            aload 1 /* other */
            checkcast org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor
            getfield org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.advised:Lorg/springframework/aop/framework/AdvisedSupport;
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifne 4
         3: .line 710
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
      StackMap locals:
      StackMap stack:
         4: iconst_1
            ireturn
        end local 1 // java.lang.Object other
        end local 0 // org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    5     0   this  Lorg/springframework/aop/framework/CglibAopProxy$DynamicAdvisedInterceptor;
            0    5     1  other  Ljava/lang/Object;
    RuntimeVisibleParameterAnnotations: 
      0:
        org.springframework.lang.Nullable()
    MethodParameters:
       Name  Flags
      other  

  public int hashCode();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor this
         0: .line 720
            aload 0 /* this */
            getfield org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.advised:Lorg/springframework/aop/framework/AdvisedSupport;
            invokevirtual java.lang.Object.hashCode:()I
            ireturn
        end local 0 // org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/springframework/aop/framework/CglibAopProxy$DynamicAdvisedInterceptor;
}
SourceFile: "CglibAopProxy.java"
NestHost: org.springframework.aop.framework.CglibAopProxy
InnerClasses:
  private CglibMethodInvocation = org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation of org.springframework.aop.framework.CglibAopProxy
  private DynamicAdvisedInterceptor = org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor of org.springframework.aop.framework.CglibAopProxy