public class org.springframework.context.annotation.AutoProxyRegistrar implements org.springframework.context.annotation.ImportBeanDefinitionRegistrar
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.springframework.context.annotation.AutoProxyRegistrar
  super_class: java.lang.Object
{
  private final org.apache.commons.logging.Log logger;
    descriptor: Lorg/apache/commons/logging/Log;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.springframework.context.annotation.AutoProxyRegistrar this
         0: .line 39
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 41
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokestatic org.apache.commons.logging.LogFactory.getLog:(Ljava/lang/Class;)Lorg/apache/commons/logging/Log;
            putfield org.springframework.context.annotation.AutoProxyRegistrar.logger:Lorg/apache/commons/logging/Log;
         2: .line 39
            return
        end local 0 // org.springframework.context.annotation.AutoProxyRegistrar this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/springframework/context/annotation/AutoProxyRegistrar;

  public void registerBeanDefinitions(org.springframework.core.type.AnnotationMetadata, org.springframework.beans.factory.support.BeanDefinitionRegistry);
    descriptor: (Lorg/springframework/core/type/AnnotationMetadata;Lorg/springframework/beans/factory/support/BeanDefinitionRegistry;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=10, args_size=3
        start local 0 // org.springframework.context.annotation.AutoProxyRegistrar this
        start local 1 // org.springframework.core.type.AnnotationMetadata importingClassMetadata
        start local 2 // org.springframework.beans.factory.support.BeanDefinitionRegistry registry
         0: .line 60
            iconst_0
            istore 3 /* candidateFound */
        start local 3 // boolean candidateFound
         1: .line 61
            aload 1 /* importingClassMetadata */
            invokeinterface org.springframework.core.type.AnnotationMetadata.getAnnotationTypes:()Ljava/util/Set;
            astore 4 /* annTypes */
        start local 4 // java.util.Set annTypes
         2: .line 62
            aload 4 /* annTypes */
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 6
            goto 17
      StackMap locals: org.springframework.context.annotation.AutoProxyRegistrar org.springframework.core.type.AnnotationMetadata org.springframework.beans.factory.support.BeanDefinitionRegistry int java.util.Set top java.util.Iterator
      StackMap stack:
         3: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 5 /* annType */
        start local 5 // java.lang.String annType
         4: .line 63
            aload 1 /* importingClassMetadata */
            aload 5 /* annType */
            invokestatic org.springframework.context.annotation.AnnotationConfigUtils.attributesFor:(Lorg/springframework/core/type/AnnotatedTypeMetadata;Ljava/lang/String;)Lorg/springframework/core/annotation/AnnotationAttributes;
            astore 7 /* candidate */
        start local 7 // org.springframework.core.annotation.AnnotationAttributes candidate
         5: .line 64
            aload 7 /* candidate */
            ifnonnull 7
         6: .line 65
            goto 17
         7: .line 67
      StackMap locals: org.springframework.context.annotation.AutoProxyRegistrar org.springframework.core.type.AnnotationMetadata org.springframework.beans.factory.support.BeanDefinitionRegistry int java.util.Set java.lang.String java.util.Iterator org.springframework.core.annotation.AnnotationAttributes
      StackMap stack:
            aload 7 /* candidate */
            ldc "mode"
            invokevirtual org.springframework.core.annotation.AnnotationAttributes.get:(Ljava/lang/Object;)Ljava/lang/Object;
            astore 8 /* mode */
        start local 8 // java.lang.Object mode
         8: .line 68
            aload 7 /* candidate */
            ldc "proxyTargetClass"
            invokevirtual org.springframework.core.annotation.AnnotationAttributes.get:(Ljava/lang/Object;)Ljava/lang/Object;
            astore 9 /* proxyTargetClass */
        start local 9 // java.lang.Object proxyTargetClass
         9: .line 69
            aload 8 /* mode */
            ifnull 17
            aload 9 /* proxyTargetClass */
            ifnull 17
            ldc Lorg/springframework/context/annotation/AdviceMode;
            aload 8 /* mode */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            if_acmpne 17
        10: .line 70
            ldc Ljava/lang/Boolean;
            aload 9 /* proxyTargetClass */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            if_acmpne 17
        11: .line 71
            iconst_1
            istore 3 /* candidateFound */
        12: .line 72
            aload 8 /* mode */
            getstatic org.springframework.context.annotation.AdviceMode.PROXY:Lorg/springframework/context/annotation/AdviceMode;
            if_acmpne 17
        13: .line 73
            aload 2 /* registry */
            invokestatic org.springframework.aop.config.AopConfigUtils.registerAutoProxyCreatorIfNecessary:(Lorg/springframework/beans/factory/support/BeanDefinitionRegistry;)Lorg/springframework/beans/factory/config/BeanDefinition;
            pop
        14: .line 74
            aload 9 /* proxyTargetClass */
            checkcast java.lang.Boolean
            invokevirtual java.lang.Boolean.booleanValue:()Z
            ifeq 17
        15: .line 75
            aload 2 /* registry */
            invokestatic org.springframework.aop.config.AopConfigUtils.forceAutoProxyCreatorToUseClassProxying:(Lorg/springframework/beans/factory/support/BeanDefinitionRegistry;)V
        16: .line 76
            return
        end local 9 // java.lang.Object proxyTargetClass
        end local 8 // java.lang.Object mode
        end local 7 // org.springframework.core.annotation.AnnotationAttributes candidate
        end local 5 // java.lang.String annType
        17: .line 62
      StackMap locals: org.springframework.context.annotation.AutoProxyRegistrar org.springframework.core.type.AnnotationMetadata org.springframework.beans.factory.support.BeanDefinitionRegistry int java.util.Set top java.util.Iterator
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 3
        18: .line 81
            iload 3 /* candidateFound */
            ifne 23
            aload 0 /* this */
            getfield org.springframework.context.annotation.AutoProxyRegistrar.logger:Lorg/apache/commons/logging/Log;
            invokeinterface org.apache.commons.logging.Log.isInfoEnabled:()Z
            ifeq 23
        19: .line 82
            aload 0 /* this */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.getSimpleName:()Ljava/lang/String;
            astore 5 /* name */
        start local 5 // java.lang.String name
        20: .line 83
            aload 0 /* this */
            getfield org.springframework.context.annotation.AutoProxyRegistrar.logger:Lorg/apache/commons/logging/Log;
            ldc "%s was imported but no annotations were found having both 'mode' and 'proxyTargetClass' attributes of type AdviceMode and boolean respectively. This means that auto proxy creator registration and configuration may not have occurred as intended, and components may not be proxied as expected. Check to ensure that %s has been @Import'ed on the same class where these annotations are declared; otherwise remove the import of %s altogether."
            iconst_3
            anewarray java.lang.Object
            dup
            iconst_0
        21: .line 90
            aload 5 /* name */
            aastore
            dup
            iconst_1
            aload 5 /* name */
            aastore
            dup
            iconst_2
            aload 5 /* name */
            aastore
        22: .line 83
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokeinterface org.apache.commons.logging.Log.info:(Ljava/lang/Object;)V
        end local 5 // java.lang.String name
        23: .line 92
      StackMap locals: org.springframework.context.annotation.AutoProxyRegistrar org.springframework.core.type.AnnotationMetadata org.springframework.beans.factory.support.BeanDefinitionRegistry int java.util.Set
      StackMap stack:
            return
        end local 4 // java.util.Set annTypes
        end local 3 // boolean candidateFound
        end local 2 // org.springframework.beans.factory.support.BeanDefinitionRegistry registry
        end local 1 // org.springframework.core.type.AnnotationMetadata importingClassMetadata
        end local 0 // org.springframework.context.annotation.AutoProxyRegistrar this
      LocalVariableTable:
        Start  End  Slot                    Name  Signature
            0   24     0                    this  Lorg/springframework/context/annotation/AutoProxyRegistrar;
            0   24     1  importingClassMetadata  Lorg/springframework/core/type/AnnotationMetadata;
            0   24     2                registry  Lorg/springframework/beans/factory/support/BeanDefinitionRegistry;
            1   24     3          candidateFound  Z
            2   24     4                annTypes  Ljava/util/Set<Ljava/lang/String;>;
            4   17     5                 annType  Ljava/lang/String;
            5   17     7               candidate  Lorg/springframework/core/annotation/AnnotationAttributes;
            8   17     8                    mode  Ljava/lang/Object;
            9   17     9        proxyTargetClass  Ljava/lang/Object;
           20   23     5                    name  Ljava/lang/String;
    MethodParameters:
                        Name  Flags
      importingClassMetadata  
      registry                
}
SourceFile: "AutoProxyRegistrar.java"