class org.springframework.cache.config.AnnotationDrivenCacheBeanDefinitionParser$JCacheCachingConfigurer
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: org.springframework.cache.config.AnnotationDrivenCacheBeanDefinitionParser$JCacheCachingConfigurer
  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$JCacheCachingConfigurer this
         0: .line 206
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // org.springframework.cache.config.AnnotationDrivenCacheBeanDefinitionParser$JCacheCachingConfigurer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/springframework/cache/config/AnnotationDrivenCacheBeanDefinitionParser$JCacheCachingConfigurer;

  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 209
            aload 1 /* parserContext */
            invokevirtual org.springframework.beans.factory.xml.ParserContext.getRegistry:()Lorg/springframework/beans/factory/support/BeanDefinitionRegistry;
            ldc "org.springframework.cache.config.internalJCacheAdvisor"
            invokeinterface org.springframework.beans.factory.support.BeanDefinitionRegistry.containsBeanDefinition:(Ljava/lang/String;)Z
            ifne 26
         1: .line 210
            aload 1 /* parserContext */
            aload 0 /* element */
            invokevirtual org.springframework.beans.factory.xml.ParserContext.extractSource:(Ljava/lang/Object;)Ljava/lang/Object;
            astore 2 /* source */
        start local 2 // java.lang.Object source
         2: .line 213
            aload 0 /* element */
            aload 2 /* source */
            invokestatic org.springframework.cache.config.AnnotationDrivenCacheBeanDefinitionParser$JCacheCachingConfigurer.createJCacheOperationSourceBeanDefinition:(Lorg/w3c/dom/Element;Ljava/lang/Object;)Lorg/springframework/beans/factory/support/RootBeanDefinition;
            astore 3 /* sourceDef */
        start local 3 // org.springframework.beans.factory.config.BeanDefinition sourceDef
         3: .line 214
            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
         4: .line 218
            new org.springframework.beans.factory.support.RootBeanDefinition
            dup
            ldc "org.springframework.cache.jcache.interceptor.JCacheInterceptor"
            invokespecial org.springframework.beans.factory.support.RootBeanDefinition.<init>:(Ljava/lang/String;)V
         5: .line 217
            astore 5 /* interceptorDef */
        start local 5 // org.springframework.beans.factory.support.RootBeanDefinition interceptorDef
         6: .line 219
            aload 5 /* interceptorDef */
            aload 2 /* source */
            invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.setSource:(Ljava/lang/Object;)V
         7: .line 220
            aload 5 /* interceptorDef */
            iconst_2
            invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.setRole:(I)V
         8: .line 221
            aload 5 /* interceptorDef */
            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
         9: .line 222
            aload 0 /* element */
            aload 5 /* interceptorDef */
            invokestatic org.springframework.cache.config.AnnotationDrivenCacheBeanDefinitionParser.parseErrorHandler:(Lorg/w3c/dom/Element;Lorg/springframework/beans/factory/config/BeanDefinition;)V
        10: .line 223
            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
        11: .line 226
            new org.springframework.beans.factory.support.RootBeanDefinition
            dup
        12: .line 227
            ldc "org.springframework.cache.jcache.interceptor.BeanFactoryJCacheOperationSourceAdvisor"
        13: .line 226
            invokespecial org.springframework.beans.factory.support.RootBeanDefinition.<init>:(Ljava/lang/String;)V
            astore 7 /* advisorDef */
        start local 7 // org.springframework.beans.factory.support.RootBeanDefinition advisorDef
        14: .line 228
            aload 7 /* advisorDef */
            aload 2 /* source */
            invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.setSource:(Ljava/lang/Object;)V
        15: .line 229
            aload 7 /* advisorDef */
            iconst_2
            invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.setRole:(I)V
        16: .line 230
            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
        17: .line 231
            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
        18: .line 232
            aload 0 /* element */
            ldc "order"
            invokeinterface org.w3c.dom.Element.hasAttribute:(Ljava/lang/String;)Z
            ifeq 20
        19: .line 233
            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
        20: .line 235
      StackMap locals: org.w3c.dom.Element org.springframework.beans.factory.xml.ParserContext java.lang.Object org.springframework.beans.factory.config.BeanDefinition 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.internalJCacheAdvisor"
            aload 7 /* advisorDef */
            invokeinterface org.springframework.beans.factory.support.BeanDefinitionRegistry.registerBeanDefinition:(Ljava/lang/String;Lorg/springframework/beans/factory/config/BeanDefinition;)V
        21: .line 237
            new org.springframework.beans.factory.parsing.CompositeComponentDefinition
            dup
            aload 0 /* element */
            invokeinterface org.w3c.dom.Element.getTagName:()Ljava/lang/String;
            aload 2 /* source */
            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
        22: .line 238
            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
        23: .line 239
            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
        24: .line 240
            aload 8 /* compositeDef */
            new org.springframework.beans.factory.parsing.BeanComponentDefinition
            dup
            aload 7 /* advisorDef */
            ldc "org.springframework.cache.config.internalJCacheAdvisor"
            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 241
            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.config.BeanDefinition sourceDef
        end local 2 // java.lang.Object source
        26: .line 243
      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   27     0          element  Lorg/w3c/dom/Element;
            0   27     1    parserContext  Lorg/springframework/beans/factory/xml/ParserContext;
            2   26     2           source  Ljava/lang/Object;
            3   26     3        sourceDef  Lorg/springframework/beans/factory/config/BeanDefinition;
            4   26     4       sourceName  Ljava/lang/String;
            6   26     5   interceptorDef  Lorg/springframework/beans/factory/support/RootBeanDefinition;
           11   26     6  interceptorName  Ljava/lang/String;
           14   26     7       advisorDef  Lorg/springframework/beans/factory/support/RootBeanDefinition;
           22   26     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=6, args_size=2
        start local 0 // org.w3c.dom.Element element
        start local 1 // org.springframework.beans.factory.xml.ParserContext parserContext
         0: .line 246
            aload 1 /* parserContext */
            invokevirtual org.springframework.beans.factory.xml.ParserContext.getRegistry:()Lorg/springframework/beans/factory/support/BeanDefinitionRegistry;
            ldc "org.springframework.cache.config.internalJCacheAspect"
            invokeinterface org.springframework.beans.factory.support.BeanDefinitionRegistry.containsBeanDefinition:(Ljava/lang/String;)Z
            ifne 11
         1: .line 247
            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 248
            new org.springframework.beans.factory.support.RootBeanDefinition
            dup
            invokespecial org.springframework.beans.factory.support.RootBeanDefinition.<init>:()V
            astore 3 /* def */
        start local 3 // org.springframework.beans.factory.support.RootBeanDefinition def
         3: .line 249
            aload 3 /* def */
            ldc "org.springframework.cache.aspectj.JCacheCacheAspect"
            invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.setBeanClassName:(Ljava/lang/String;)V
         4: .line 250
            aload 3 /* def */
            ldc "aspectOf"
            invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.setFactoryMethodName:(Ljava/lang/String;)V
         5: .line 251
            aload 0 /* element */
            aload 2 /* eleSource */
            invokestatic org.springframework.cache.config.AnnotationDrivenCacheBeanDefinitionParser$JCacheCachingConfigurer.createJCacheOperationSourceBeanDefinition:(Lorg/w3c/dom/Element;Ljava/lang/Object;)Lorg/springframework/beans/factory/support/RootBeanDefinition;
            astore 4 /* sourceDef */
        start local 4 // org.springframework.beans.factory.config.BeanDefinition sourceDef
         6: .line 253
            aload 1 /* parserContext */
            invokevirtual org.springframework.beans.factory.xml.ParserContext.getReaderContext:()Lorg/springframework/beans/factory/xml/XmlReaderContext;
            aload 4 /* sourceDef */
            invokevirtual org.springframework.beans.factory.xml.XmlReaderContext.registerWithGeneratedName:(Lorg/springframework/beans/factory/config/BeanDefinition;)Ljava/lang/String;
         7: .line 252
            astore 5 /* sourceName */
        start local 5 // java.lang.String sourceName
         8: .line 254
            aload 3 /* def */
            invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.getPropertyValues:()Lorg/springframework/beans/MutablePropertyValues;
            ldc "cacheOperationSource"
            new org.springframework.beans.factory.config.RuntimeBeanReference
            dup
            aload 5 /* 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
         9: .line 256
            aload 1 /* parserContext */
            new org.springframework.beans.factory.parsing.BeanComponentDefinition
            dup
            aload 4 /* sourceDef */
            aload 5 /* sourceName */
            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
        10: .line 257
            aload 1 /* parserContext */
            new org.springframework.beans.factory.parsing.BeanComponentDefinition
            dup
            aload 3 /* def */
            ldc "org.springframework.cache.config.internalJCacheAspect"
            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 5 // java.lang.String sourceName
        end local 4 // org.springframework.beans.factory.config.BeanDefinition sourceDef
        end local 3 // org.springframework.beans.factory.support.RootBeanDefinition def
        end local 2 // java.lang.Object eleSource
        11: .line 259
      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   12     0        element  Lorg/w3c/dom/Element;
            0   12     1  parserContext  Lorg/springframework/beans/factory/xml/ParserContext;
            2   11     2      eleSource  Ljava/lang/Object;
            3   11     3            def  Lorg/springframework/beans/factory/support/RootBeanDefinition;
            6   11     4      sourceDef  Lorg/springframework/beans/factory/config/BeanDefinition;
            8   11     5     sourceName  Ljava/lang/String;
    MethodParameters:
               Name  Flags
      element        
      parserContext  

  private static org.springframework.beans.factory.support.RootBeanDefinition createJCacheOperationSourceBeanDefinition(org.w3c.dom.Element, java.lang.Object);
    descriptor: (Lorg/w3c/dom/Element;Ljava/lang/Object;)Lorg/springframework/beans/factory/support/RootBeanDefinition;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // org.w3c.dom.Element element
        start local 1 // java.lang.Object eleSource
         0: .line 263
            new org.springframework.beans.factory.support.RootBeanDefinition
            dup
            ldc "org.springframework.cache.jcache.interceptor.DefaultJCacheOperationSource"
            invokespecial org.springframework.beans.factory.support.RootBeanDefinition.<init>:(Ljava/lang/String;)V
         1: .line 262
            astore 2 /* sourceDef */
        start local 2 // org.springframework.beans.factory.support.RootBeanDefinition sourceDef
         2: .line 264
            aload 2 /* sourceDef */
            aload 1 /* eleSource */
            invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.setSource:(Ljava/lang/Object;)V
         3: .line 265
            aload 2 /* sourceDef */
            iconst_2
            invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.setRole:(I)V
         4: .line 268
            aload 0 /* element */
            aload 2 /* sourceDef */
            iconst_1
            invokestatic org.springframework.cache.config.AnnotationDrivenCacheBeanDefinitionParser.parseCacheResolution:(Lorg/w3c/dom/Element;Lorg/springframework/beans/factory/config/BeanDefinition;Z)V
         5: .line 269
            aload 0 /* element */
            aload 2 /* sourceDef */
            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 270
            aload 2 /* sourceDef */
            areturn
        end local 2 // org.springframework.beans.factory.support.RootBeanDefinition sourceDef
        end local 1 // java.lang.Object eleSource
        end local 0 // org.w3c.dom.Element element
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    7     0    element  Lorg/w3c/dom/Element;
            0    7     1  eleSource  Ljava/lang/Object;
            2    7     2  sourceDef  Lorg/springframework/beans/factory/support/RootBeanDefinition;
    RuntimeVisibleParameterAnnotations: 
      0:
      1:
        org.springframework.lang.Nullable()
    MethodParameters:
           Name  Flags
      element    
      eleSource  
}
SourceFile: "AnnotationDrivenCacheBeanDefinitionParser.java"
NestHost: org.springframework.cache.config.AnnotationDrivenCacheBeanDefinitionParser
InnerClasses:
  private JCacheCachingConfigurer = org.springframework.cache.config.AnnotationDrivenCacheBeanDefinitionParser$JCacheCachingConfigurer of org.springframework.cache.config.AnnotationDrivenCacheBeanDefinitionParser