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 38
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 40
            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 38
            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 59
            iconst_0
            istore 3 /* candidateFound */
        start local 3 // boolean candidateFound
         1: .line 60
            aload 1 /* importingClassMetadata */
            invokeinterface org.springframework.core.type.AnnotationMetadata.getAnnotationTypes:()Ljava/util/Set;
            astore 4 /* annoTypes */
        start local 4 // java.util.Set annoTypes
         2: .line 61
            aload 4 /* annoTypes */
            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 /* annoType */
        start local 5 // java.lang.String annoType
         4: .line 62
            aload 1 /* importingClassMetadata */
            aload 5 /* annoType */
            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 63
            aload 7 /* candidate */
            ifnonnull 7
         6: .line 64
            goto 17
         7: .line 66
      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 67
            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 68
            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 69
            ldc Ljava/lang/Boolean;
            aload 9 /* proxyTargetClass */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            if_acmpne 17
        11: .line 70
            iconst_1
            istore 3 /* candidateFound */
        12: .line 71
            aload 8 /* mode */
            getstatic org.springframework.context.annotation.AdviceMode.PROXY:Lorg/springframework/context/annotation/AdviceMode;
            if_acmpne 17
        13: .line 72
            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 73
            aload 9 /* proxyTargetClass */
            checkcast java.lang.Boolean
            invokevirtual java.lang.Boolean.booleanValue:()Z
            ifeq 17
        15: .line 74
            aload 2 /* registry */
            invokestatic org.springframework.aop.config.AopConfigUtils.forceAutoProxyCreatorToUseClassProxying:(Lorg/springframework/beans/factory/support/BeanDefinitionRegistry;)V
        16: .line 75
            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 annoType
        17: .line 61
      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 80
            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 81
            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 82
            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 89
            aload 5 /* name */
            aastore
            dup
            iconst_1
            aload 5 /* name */
            aastore
            dup
            iconst_2
            aload 5 /* name */
            aastore
        22: .line 82
            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 91
      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 annoTypes
        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               annoTypes  Ljava/util/Set<Ljava/lang/String;>;
            4   17     5                annoType  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"