class org.springframework.cache.config.AnnotationDrivenCacheBeanDefinitionParser$SpringCachingConfigurer
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: org.springframework.cache.config.AnnotationDrivenCacheBeanDefinitionParser$SpringCachingConfigurer
  super_class: java.lang.Object
{
  private void <init>();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.springframework.cache.config.AnnotationDrivenCacheBeanDefinitionParser$SpringCachingConfigurer this
         0: .line 140
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // org.springframework.cache.config.AnnotationDrivenCacheBeanDefinitionParser$SpringCachingConfigurer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/springframework/cache/config/AnnotationDrivenCacheBeanDefinitionParser$SpringCachingConfigurer;

  private static void registerCacheAdvisor(org.w3c.dom.Element, org.springframework.beans.factory.xml.ParserContext);
    descriptor: (Lorg/w3c/dom/Element;Lorg/springframework/beans/factory/xml/ParserContext;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=9, args_size=2
        start local 0 // org.w3c.dom.Element element
        start local 1 // org.springframework.beans.factory.xml.ParserContext parserContext
         0: .line 143
            aload 1 /* parserContext */
            invokevirtual org.springframework.beans.factory.xml.ParserContext.getRegistry:()Lorg/springframework/beans/factory/support/BeanDefinitionRegistry;
            ldc "org.springframework.cache.config.internalCacheAdvisor"
            invokeinterface org.springframework.beans.factory.support.BeanDefinitionRegistry.containsBeanDefinition:(Ljava/lang/String;)Z
            ifne 27
         1: .line 144
            aload 1 /* parserContext */
            aload 0 /* element */
            invokevirtual org.springframework.beans.factory.xml.ParserContext.extractSource:(Ljava/lang/Object;)Ljava/lang/Object;
            astore 2 /* eleSource */
        start local 2 // java.lang.Object eleSource
         2: .line 147
            new org.springframework.beans.factory.support.RootBeanDefinition
            dup
            ldc "org.springframework.cache.annotation.AnnotationCacheOperationSource"
            invokespecial org.springframework.beans.factory.support.RootBeanDefinition.<init>:(Ljava/lang/String;)V
            astore 3 /* sourceDef */
        start local 3 // org.springframework.beans.factory.support.RootBeanDefinition sourceDef
         3: .line 148
            aload 3 /* sourceDef */
            aload 2 /* eleSource */
            invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.setSource:(Ljava/lang/Object;)V
         4: .line 149
            aload 3 /* sourceDef */
            iconst_2
            invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.setRole:(I)V
         5: .line 150
            aload 1 /* parserContext */
            invokevirtual org.springframework.beans.factory.xml.ParserContext.getReaderContext:()Lorg/springframework/beans/factory/xml/XmlReaderContext;
            aload 3 /* sourceDef */
            invokevirtual org.springframework.beans.factory.xml.XmlReaderContext.registerWithGeneratedName:(Lorg/springframework/beans/factory/config/BeanDefinition;)Ljava/lang/String;
            astore 4 /* sourceName */
        start local 4 // java.lang.String sourceName
         6: .line 153
            new org.springframework.beans.factory.support.RootBeanDefinition
            dup
            ldc Lorg/springframework/cache/interceptor/CacheInterceptor;
            invokespecial org.springframework.beans.factory.support.RootBeanDefinition.<init>:(Ljava/lang/Class;)V
            astore 5 /* interceptorDef */
        start local 5 // org.springframework.beans.factory.support.RootBeanDefinition interceptorDef
         7: .line 154
            aload 5 /* interceptorDef */
            aload 2 /* eleSource */
            invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.setSource:(Ljava/lang/Object;)V
         8: .line 155
            aload 5 /* interceptorDef */
            iconst_2
            invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.setRole:(I)V
         9: .line 156
            aload 0 /* element */
            aload 5 /* interceptorDef */
            iconst_0
            invokestatic org.springframework.cache.config.AnnotationDrivenCacheBeanDefinitionParser.parseCacheResolution:(Lorg/w3c/dom/Element;Lorg/springframework/beans/factory/config/BeanDefinition;Z)V
        10: .line 157
            aload 0 /* element */
            aload 5 /* interceptorDef */
            invokestatic org.springframework.cache.config.AnnotationDrivenCacheBeanDefinitionParser.parseErrorHandler:(Lorg/w3c/dom/Element;Lorg/springframework/beans/factory/config/BeanDefinition;)V
        11: .line 158
            aload 0 /* element */
            aload 5 /* interceptorDef */
            invokestatic org.springframework.cache.config.CacheNamespaceHandler.parseKeyGenerator:(Lorg/w3c/dom/Element;Lorg/springframework/beans/factory/config/BeanDefinition;)Lorg/springframework/beans/factory/config/BeanDefinition;
            pop
        12: .line 159
            aload 5 /* interceptorDef */
            invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.getPropertyValues:()Lorg/springframework/beans/MutablePropertyValues;
            ldc "cacheOperationSources"
            new org.springframework.beans.factory.config.RuntimeBeanReference
            dup
            aload 4 /* sourceName */
            invokespecial org.springframework.beans.factory.config.RuntimeBeanReference.<init>:(Ljava/lang/String;)V
            invokevirtual org.springframework.beans.MutablePropertyValues.add:(Ljava/lang/String;Ljava/lang/Object;)Lorg/springframework/beans/MutablePropertyValues;
            pop
        13: .line 160
            aload 1 /* parserContext */
            invokevirtual org.springframework.beans.factory.xml.ParserContext.getReaderContext:()Lorg/springframework/beans/factory/xml/XmlReaderContext;
            aload 5 /* interceptorDef */
            invokevirtual org.springframework.beans.factory.xml.XmlReaderContext.registerWithGeneratedName:(Lorg/springframework/beans/factory/config/BeanDefinition;)Ljava/lang/String;
            astore 6 /* interceptorName */
        start local 6 // java.lang.String interceptorName
        14: .line 163
            new org.springframework.beans.factory.support.RootBeanDefinition
            dup
            ldc Lorg/springframework/cache/interceptor/BeanFactoryCacheOperationSourceAdvisor;
            invokespecial org.springframework.beans.factory.support.RootBeanDefinition.<init>:(Ljava/lang/Class;)V
            astore 7 /* advisorDef */
        start local 7 // org.springframework.beans.factory.support.RootBeanDefinition advisorDef
        15: .line 164
            aload 7 /* advisorDef */
            aload 2 /* eleSource */
            invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.setSource:(Ljava/lang/Object;)V
        16: .line 165
            aload 7 /* advisorDef */
            iconst_2
            invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.setRole:(I)V
        17: .line 166
            aload 7 /* advisorDef */
            invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.getPropertyValues:()Lorg/springframework/beans/MutablePropertyValues;
            ldc "cacheOperationSource"
            new org.springframework.beans.factory.config.RuntimeBeanReference
            dup
            aload 4 /* sourceName */
            invokespecial org.springframework.beans.factory.config.RuntimeBeanReference.<init>:(Ljava/lang/String;)V
            invokevirtual org.springframework.beans.MutablePropertyValues.add:(Ljava/lang/String;Ljava/lang/Object;)Lorg/springframework/beans/MutablePropertyValues;
            pop
        18: .line 167
            aload 7 /* advisorDef */
            invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.getPropertyValues:()Lorg/springframework/beans/MutablePropertyValues;
            ldc "adviceBeanName"
            aload 6 /* interceptorName */
            invokevirtual org.springframework.beans.MutablePropertyValues.add:(Ljava/lang/String;Ljava/lang/Object;)Lorg/springframework/beans/MutablePropertyValues;
            pop
        19: .line 168
            aload 0 /* element */
            ldc "order"
            invokeinterface org.w3c.dom.Element.hasAttribute:(Ljava/lang/String;)Z
            ifeq 21
        20: .line 169
            aload 7 /* advisorDef */
            invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.getPropertyValues:()Lorg/springframework/beans/MutablePropertyValues;
            ldc "order"
            aload 0 /* element */
            ldc "order"
            invokeinterface org.w3c.dom.Element.getAttribute:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual org.springframework.beans.MutablePropertyValues.add:(Ljava/lang/String;Ljava/lang/Object;)Lorg/springframework/beans/MutablePropertyValues;
            pop
        21: .line 171
      StackMap locals: org.w3c.dom.Element org.springframework.beans.factory.xml.ParserContext java.lang.Object org.springframework.beans.factory.support.RootBeanDefinition java.lang.String org.springframework.beans.factory.support.RootBeanDefinition java.lang.String org.springframework.beans.factory.support.RootBeanDefinition
      StackMap stack:
            aload 1 /* parserContext */
            invokevirtual org.springframework.beans.factory.xml.ParserContext.getRegistry:()Lorg/springframework/beans/factory/support/BeanDefinitionRegistry;
            ldc "org.springframework.cache.config.internalCacheAdvisor"
            aload 7 /* advisorDef */
            invokeinterface org.springframework.beans.factory.support.BeanDefinitionRegistry.registerBeanDefinition:(Ljava/lang/String;Lorg/springframework/beans/factory/config/BeanDefinition;)V
        22: .line 173
            new org.springframework.beans.factory.parsing.CompositeComponentDefinition
            dup
            aload 0 /* element */
            invokeinterface org.w3c.dom.Element.getTagName:()Ljava/lang/String;
            aload 2 /* eleSource */
            invokespecial org.springframework.beans.factory.parsing.CompositeComponentDefinition.<init>:(Ljava/lang/String;Ljava/lang/Object;)V
            astore 8 /* compositeDef */
        start local 8 // org.springframework.beans.factory.parsing.CompositeComponentDefinition compositeDef
        23: .line 174
            aload 8 /* compositeDef */
            new org.springframework.beans.factory.parsing.BeanComponentDefinition
            dup
            aload 3 /* sourceDef */
            aload 4 /* sourceName */
            invokespecial org.springframework.beans.factory.parsing.BeanComponentDefinition.<init>:(Lorg/springframework/beans/factory/config/BeanDefinition;Ljava/lang/String;)V
            invokevirtual org.springframework.beans.factory.parsing.CompositeComponentDefinition.addNestedComponent:(Lorg/springframework/beans/factory/parsing/ComponentDefinition;)V
        24: .line 175
            aload 8 /* compositeDef */
            new org.springframework.beans.factory.parsing.BeanComponentDefinition
            dup
            aload 5 /* interceptorDef */
            aload 6 /* interceptorName */
            invokespecial org.springframework.beans.factory.parsing.BeanComponentDefinition.<init>:(Lorg/springframework/beans/factory/config/BeanDefinition;Ljava/lang/String;)V
            invokevirtual org.springframework.beans.factory.parsing.CompositeComponentDefinition.addNestedComponent:(Lorg/springframework/beans/factory/parsing/ComponentDefinition;)V
        25: .line 176
            aload 8 /* compositeDef */
            new org.springframework.beans.factory.parsing.BeanComponentDefinition
            dup
            aload 7 /* advisorDef */
            ldc "org.springframework.cache.config.internalCacheAdvisor"
            invokespecial org.springframework.beans.factory.parsing.BeanComponentDefinition.<init>:(Lorg/springframework/beans/factory/config/BeanDefinition;Ljava/lang/String;)V
            invokevirtual org.springframework.beans.factory.parsing.CompositeComponentDefinition.addNestedComponent:(Lorg/springframework/beans/factory/parsing/ComponentDefinition;)V
        26: .line 177
            aload 1 /* parserContext */
            aload 8 /* compositeDef */
            invokevirtual org.springframework.beans.factory.xml.ParserContext.registerComponent:(Lorg/springframework/beans/factory/parsing/ComponentDefinition;)V
        end local 8 // org.springframework.beans.factory.parsing.CompositeComponentDefinition compositeDef
        end local 7 // org.springframework.beans.factory.support.RootBeanDefinition advisorDef
        end local 6 // java.lang.String interceptorName
        end local 5 // org.springframework.beans.factory.support.RootBeanDefinition interceptorDef
        end local 4 // java.lang.String sourceName
        end local 3 // org.springframework.beans.factory.support.RootBeanDefinition sourceDef
        end local 2 // java.lang.Object eleSource
        27: .line 179
      StackMap locals: org.w3c.dom.Element org.springframework.beans.factory.xml.ParserContext
      StackMap stack:
            return
        end local 1 // org.springframework.beans.factory.xml.ParserContext parserContext
        end local 0 // org.w3c.dom.Element element
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   28     0          element  Lorg/w3c/dom/Element;
            0   28     1    parserContext  Lorg/springframework/beans/factory/xml/ParserContext;
            2   27     2        eleSource  Ljava/lang/Object;
            3   27     3        sourceDef  Lorg/springframework/beans/factory/support/RootBeanDefinition;
            6   27     4       sourceName  Ljava/lang/String;
            7   27     5   interceptorDef  Lorg/springframework/beans/factory/support/RootBeanDefinition;
           14   27     6  interceptorName  Ljava/lang/String;
           15   27     7       advisorDef  Lorg/springframework/beans/factory/support/RootBeanDefinition;
           23   27     8     compositeDef  Lorg/springframework/beans/factory/parsing/CompositeComponentDefinition;
    MethodParameters:
               Name  Flags
      element        
      parserContext  

  private static void registerCacheAspect(org.w3c.dom.Element, org.springframework.beans.factory.xml.ParserContext);
    descriptor: (Lorg/w3c/dom/Element;Lorg/springframework/beans/factory/xml/ParserContext;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // org.w3c.dom.Element element
        start local 1 // org.springframework.beans.factory.xml.ParserContext parserContext
         0: .line 191
            aload 1 /* parserContext */
            invokevirtual org.springframework.beans.factory.xml.ParserContext.getRegistry:()Lorg/springframework/beans/factory/support/BeanDefinitionRegistry;
            ldc "org.springframework.cache.config.internalCacheAspect"
            invokeinterface org.springframework.beans.factory.support.BeanDefinitionRegistry.containsBeanDefinition:(Ljava/lang/String;)Z
            ifne 7
         1: .line 192
            new org.springframework.beans.factory.support.RootBeanDefinition
            dup
            invokespecial org.springframework.beans.factory.support.RootBeanDefinition.<init>:()V
            astore 2 /* def */
        start local 2 // org.springframework.beans.factory.support.RootBeanDefinition def
         2: .line 193
            aload 2 /* def */
            ldc "org.springframework.cache.aspectj.AnnotationCacheAspect"
            invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.setBeanClassName:(Ljava/lang/String;)V
         3: .line 194
            aload 2 /* def */
            ldc "aspectOf"
            invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.setFactoryMethodName:(Ljava/lang/String;)V
         4: .line 195
            aload 0 /* element */
            aload 2 /* def */
            iconst_0
            invokestatic org.springframework.cache.config.AnnotationDrivenCacheBeanDefinitionParser.parseCacheResolution:(Lorg/w3c/dom/Element;Lorg/springframework/beans/factory/config/BeanDefinition;Z)V
         5: .line 196
            aload 0 /* element */
            aload 2 /* def */
            invokestatic org.springframework.cache.config.CacheNamespaceHandler.parseKeyGenerator:(Lorg/w3c/dom/Element;Lorg/springframework/beans/factory/config/BeanDefinition;)Lorg/springframework/beans/factory/config/BeanDefinition;
            pop
         6: .line 197
            aload 1 /* parserContext */
            new org.springframework.beans.factory.parsing.BeanComponentDefinition
            dup
            aload 2 /* def */
            ldc "org.springframework.cache.config.internalCacheAspect"
            invokespecial org.springframework.beans.factory.parsing.BeanComponentDefinition.<init>:(Lorg/springframework/beans/factory/config/BeanDefinition;Ljava/lang/String;)V
            invokevirtual org.springframework.beans.factory.xml.ParserContext.registerBeanComponent:(Lorg/springframework/beans/factory/parsing/BeanComponentDefinition;)V
        end local 2 // org.springframework.beans.factory.support.RootBeanDefinition def
         7: .line 199
      StackMap locals:
      StackMap stack:
            return
        end local 1 // org.springframework.beans.factory.xml.ParserContext parserContext
        end local 0 // org.w3c.dom.Element element
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    8     0        element  Lorg/w3c/dom/Element;
            0    8     1  parserContext  Lorg/springframework/beans/factory/xml/ParserContext;
            2    7     2            def  Lorg/springframework/beans/factory/support/RootBeanDefinition;
    MethodParameters:
               Name  Flags
      element        
      parserContext  
}
SourceFile: "AnnotationDrivenCacheBeanDefinitionParser.java"
NestHost: org.springframework.cache.config.AnnotationDrivenCacheBeanDefinitionParser
InnerClasses:
  private SpringCachingConfigurer = org.springframework.cache.config.AnnotationDrivenCacheBeanDefinitionParser$SpringCachingConfigurer of org.springframework.cache.config.AnnotationDrivenCacheBeanDefinitionParser