class org.springframework.web.servlet.config.ResourcesBeanDefinitionParser implements org.springframework.beans.factory.xml.BeanDefinitionParser
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: org.springframework.web.servlet.config.ResourcesBeanDefinitionParser
super_class: java.lang.Object
{
private static final java.lang.String RESOURCE_CHAIN_CACHE;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "spring-resource-chain-cache"
private static final java.lang.String VERSION_RESOLVER_ELEMENT;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "version-resolver"
private static final java.lang.String VERSION_STRATEGY_ELEMENT;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "version-strategy"
private static final java.lang.String FIXED_VERSION_STRATEGY_ELEMENT;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "fixed-version-strategy"
private static final java.lang.String CONTENT_VERSION_STRATEGY_ELEMENT;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "content-version-strategy"
private static final java.lang.String RESOURCE_URL_PROVIDER;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "mvcResourceUrlProvider"
private static final boolean webJarsPresent;
descriptor: Z
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: ldc "org.webjars.WebJarAssetLocator"
ldc Lorg/springframework/web/servlet/config/ResourcesBeanDefinitionParser;
invokevirtual java.lang.Class.getClassLoader:()Ljava/lang/ClassLoader;
1: invokestatic org.springframework.util.ClassUtils.isPresent:(Ljava/lang/String;Ljava/lang/ClassLoader;)Z
putstatic org.springframework.web.servlet.config.ResourcesBeanDefinitionParser.webJarsPresent:Z
2: return
LocalVariableTable:
Start End Slot Name Signature
void <init>();
descriptor: ()V
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/web/servlet/config/ResourcesBeanDefinitionParser;
public org.springframework.beans.factory.config.BeanDefinition parse(org.w3c.dom.Element, org.springframework.beans.factory.xml.ParserContext);
descriptor: (Lorg/w3c/dom/Element;Lorg/springframework/beans/factory/xml/ParserContext;)Lorg/springframework/beans/factory/config/BeanDefinition;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=14, args_size=3
start local 0 start local 1 start local 2 0: aload 2
aload 1
invokevirtual org.springframework.beans.factory.xml.ParserContext.extractSource:(Ljava/lang/Object;)Ljava/lang/Object;
astore 3
start local 3 1: aload 0
aload 2
aload 3
invokevirtual org.springframework.web.servlet.config.ResourcesBeanDefinitionParser.registerUrlProvider:(Lorg/springframework/beans/factory/xml/ParserContext;Ljava/lang/Object;)V
2: aconst_null
aload 2
aload 3
invokestatic org.springframework.web.servlet.config.MvcNamespaceUtils.registerPathMatcher:(Lorg/springframework/beans/factory/config/RuntimeBeanReference;Lorg/springframework/beans/factory/xml/ParserContext;Ljava/lang/Object;)Lorg/springframework/beans/factory/config/RuntimeBeanReference;
astore 4
start local 4 3: aconst_null
aload 2
aload 3
invokestatic org.springframework.web.servlet.config.MvcNamespaceUtils.registerUrlPathHelper:(Lorg/springframework/beans/factory/config/RuntimeBeanReference;Lorg/springframework/beans/factory/xml/ParserContext;Ljava/lang/Object;)Lorg/springframework/beans/factory/config/RuntimeBeanReference;
astore 5
start local 5 4: aload 0
aload 2
aload 1
aload 5
aload 3
invokevirtual org.springframework.web.servlet.config.ResourcesBeanDefinitionParser.registerResourceHandler:(Lorg/springframework/beans/factory/xml/ParserContext;Lorg/w3c/dom/Element;Lorg/springframework/beans/factory/config/RuntimeBeanReference;Ljava/lang/Object;)Ljava/lang/String;
astore 6
start local 6 5: aload 6
ifnonnull 7
6: aconst_null
areturn
7: StackMap locals: org.springframework.web.servlet.config.ResourcesBeanDefinitionParser org.w3c.dom.Element org.springframework.beans.factory.xml.ParserContext java.lang.Object org.springframework.beans.factory.config.RuntimeBeanReference org.springframework.beans.factory.config.RuntimeBeanReference java.lang.String
StackMap stack:
new org.springframework.beans.factory.support.ManagedMap
dup
invokespecial org.springframework.beans.factory.support.ManagedMap.<init>:()V
astore 7
start local 7 8: aload 1
ldc "mapping"
invokeinterface org.w3c.dom.Element.getAttribute:(Ljava/lang/String;)Ljava/lang/String;
astore 8
start local 8 9: aload 8
invokestatic org.springframework.util.StringUtils.hasText:(Ljava/lang/String;)Z
ifne 12
10: aload 2
invokevirtual org.springframework.beans.factory.xml.ParserContext.getReaderContext:()Lorg/springframework/beans/factory/xml/XmlReaderContext;
ldc "The 'mapping' attribute is required."
aload 2
aload 1
invokevirtual org.springframework.beans.factory.xml.ParserContext.extractSource:(Ljava/lang/Object;)Ljava/lang/Object;
invokevirtual org.springframework.beans.factory.xml.XmlReaderContext.error:(Ljava/lang/String;Ljava/lang/Object;)V
11: aconst_null
areturn
12: StackMap locals: java.util.Map java.lang.String
StackMap stack:
aload 7
aload 8
aload 6
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
13: new org.springframework.beans.factory.support.RootBeanDefinition
dup
ldc Lorg/springframework/web/servlet/handler/SimpleUrlHandlerMapping;
invokespecial org.springframework.beans.factory.support.RootBeanDefinition.<init>:(Ljava/lang/Class;)V
astore 9
start local 9 14: aload 9
aload 3
invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.setSource:(Ljava/lang/Object;)V
15: aload 9
iconst_2
invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.setRole:(I)V
16: aload 9
invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.getPropertyValues:()Lorg/springframework/beans/MutablePropertyValues;
ldc "urlMap"
aload 7
invokevirtual org.springframework.beans.MutablePropertyValues.add:(Ljava/lang/String;Ljava/lang/Object;)Lorg/springframework/beans/MutablePropertyValues;
pop
17: aload 9
invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.getPropertyValues:()Lorg/springframework/beans/MutablePropertyValues;
ldc "pathMatcher"
aload 4
invokevirtual org.springframework.beans.MutablePropertyValues.add:(Ljava/lang/String;Ljava/lang/Object;)Lorg/springframework/beans/MutablePropertyValues;
ldc "urlPathHelper"
aload 5
invokevirtual org.springframework.beans.MutablePropertyValues.add:(Ljava/lang/String;Ljava/lang/Object;)Lorg/springframework/beans/MutablePropertyValues;
pop
18: aload 1
ldc "order"
invokeinterface org.w3c.dom.Element.getAttribute:(Ljava/lang/String;)Ljava/lang/String;
astore 10
start local 10 19: aload 10
invokestatic org.springframework.util.StringUtils.hasText:(Ljava/lang/String;)Z
ifeq 20
aload 10
goto 21
StackMap locals: org.springframework.beans.factory.support.RootBeanDefinition java.lang.String
StackMap stack:
20: ldc 2147483646
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
StackMap locals:
StackMap stack: java.io.Serializable
21: astore 11
start local 11 22: aload 9
invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.getPropertyValues:()Lorg/springframework/beans/MutablePropertyValues;
ldc "order"
aload 11
invokevirtual org.springframework.beans.MutablePropertyValues.add:(Ljava/lang/String;Ljava/lang/Object;)Lorg/springframework/beans/MutablePropertyValues;
pop
23: aconst_null
aload 2
aload 3
invokestatic org.springframework.web.servlet.config.MvcNamespaceUtils.registerCorsConfigurations:(Ljava/util/Map;Lorg/springframework/beans/factory/xml/ParserContext;Ljava/lang/Object;)Lorg/springframework/beans/factory/config/RuntimeBeanReference;
astore 12
start local 12 24: aload 9
invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.getPropertyValues:()Lorg/springframework/beans/MutablePropertyValues;
ldc "corsConfigurations"
aload 12
invokevirtual org.springframework.beans.MutablePropertyValues.add:(Ljava/lang/String;Ljava/lang/Object;)Lorg/springframework/beans/MutablePropertyValues;
pop
25: aload 2
invokevirtual org.springframework.beans.factory.xml.ParserContext.getReaderContext:()Lorg/springframework/beans/factory/xml/XmlReaderContext;
aload 9
invokevirtual org.springframework.beans.factory.xml.XmlReaderContext.generateBeanName:(Lorg/springframework/beans/factory/config/BeanDefinition;)Ljava/lang/String;
astore 13
start local 13 26: aload 2
invokevirtual org.springframework.beans.factory.xml.ParserContext.getRegistry:()Lorg/springframework/beans/factory/support/BeanDefinitionRegistry;
aload 13
aload 9
invokeinterface org.springframework.beans.factory.support.BeanDefinitionRegistry.registerBeanDefinition:(Ljava/lang/String;Lorg/springframework/beans/factory/config/BeanDefinition;)V
27: aload 2
new org.springframework.beans.factory.parsing.BeanComponentDefinition
dup
aload 9
aload 13
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.registerComponent:(Lorg/springframework/beans/factory/parsing/ComponentDefinition;)V
28: aload 2
aload 3
invokestatic org.springframework.web.servlet.config.MvcNamespaceUtils.registerDefaultComponents:(Lorg/springframework/beans/factory/xml/ParserContext;Ljava/lang/Object;)V
29: aconst_null
areturn
end local 13 end local 12 end local 11 end local 10 end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 30 0 this Lorg/springframework/web/servlet/config/ResourcesBeanDefinitionParser;
0 30 1 element Lorg/w3c/dom/Element;
0 30 2 context Lorg/springframework/beans/factory/xml/ParserContext;
1 30 3 source Ljava/lang/Object;
3 30 4 pathMatcherRef Lorg/springframework/beans/factory/config/RuntimeBeanReference;
4 30 5 pathHelperRef Lorg/springframework/beans/factory/config/RuntimeBeanReference;
5 30 6 resourceHandlerName Ljava/lang/String;
8 30 7 urlMap Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
9 30 8 resourceRequestPath Ljava/lang/String;
14 30 9 handlerMappingDef Lorg/springframework/beans/factory/support/RootBeanDefinition;
19 30 10 orderValue Ljava/lang/String;
22 30 11 order Ljava/lang/Object;
24 30 12 corsRef Lorg/springframework/beans/factory/config/RuntimeBeanReference;
26 30 13 beanName Ljava/lang/String;
MethodParameters:
Name Flags
element
context
private void registerUrlProvider(org.springframework.beans.factory.xml.ParserContext, java.lang.Object);
descriptor: (Lorg/springframework/beans/factory/xml/ParserContext;Ljava/lang/Object;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=7, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokevirtual org.springframework.beans.factory.xml.ParserContext.getRegistry:()Lorg/springframework/beans/factory/support/BeanDefinitionRegistry;
ldc "mvcResourceUrlProvider"
invokeinterface org.springframework.beans.factory.support.BeanDefinitionRegistry.containsBeanDefinition:(Ljava/lang/String;)Z
ifne 16
1: new org.springframework.beans.factory.support.RootBeanDefinition
dup
ldc Lorg/springframework/web/servlet/resource/ResourceUrlProvider;
invokespecial org.springframework.beans.factory.support.RootBeanDefinition.<init>:(Ljava/lang/Class;)V
astore 3
start local 3 2: aload 3
aload 2
invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.setSource:(Ljava/lang/Object;)V
3: aload 3
iconst_2
invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.setRole:(I)V
4: aload 1
invokevirtual org.springframework.beans.factory.xml.ParserContext.getRegistry:()Lorg/springframework/beans/factory/support/BeanDefinitionRegistry;
ldc "mvcResourceUrlProvider"
aload 3
invokeinterface org.springframework.beans.factory.support.BeanDefinitionRegistry.registerBeanDefinition:(Ljava/lang/String;Lorg/springframework/beans/factory/config/BeanDefinition;)V
5: aload 1
new org.springframework.beans.factory.parsing.BeanComponentDefinition
dup
aload 3
ldc "mvcResourceUrlProvider"
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.registerComponent:(Lorg/springframework/beans/factory/parsing/ComponentDefinition;)V
6: new org.springframework.beans.factory.support.RootBeanDefinition
dup
ldc Lorg/springframework/web/servlet/resource/ResourceUrlProviderExposingInterceptor;
invokespecial org.springframework.beans.factory.support.RootBeanDefinition.<init>:(Ljava/lang/Class;)V
astore 4
start local 4 7: aload 4
aload 2
invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.setSource:(Ljava/lang/Object;)V
8: aload 4
invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.getConstructorArgumentValues:()Lorg/springframework/beans/factory/config/ConstructorArgumentValues;
iconst_0
aload 3
invokevirtual org.springframework.beans.factory.config.ConstructorArgumentValues.addIndexedArgumentValue:(ILjava/lang/Object;)V
9: new org.springframework.beans.factory.support.RootBeanDefinition
dup
ldc Lorg/springframework/web/servlet/handler/MappedInterceptor;
invokespecial org.springframework.beans.factory.support.RootBeanDefinition.<init>:(Ljava/lang/Class;)V
astore 5
start local 5 10: aload 5
aload 2
invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.setSource:(Ljava/lang/Object;)V
11: aload 5
iconst_2
invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.setRole:(I)V
12: aload 5
invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.getConstructorArgumentValues:()Lorg/springframework/beans/factory/config/ConstructorArgumentValues;
iconst_0
aconst_null
invokevirtual org.springframework.beans.factory.config.ConstructorArgumentValues.addIndexedArgumentValue:(ILjava/lang/Object;)V
13: aload 5
invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.getConstructorArgumentValues:()Lorg/springframework/beans/factory/config/ConstructorArgumentValues;
iconst_1
aload 4
invokevirtual org.springframework.beans.factory.config.ConstructorArgumentValues.addIndexedArgumentValue:(ILjava/lang/Object;)V
14: aload 1
invokevirtual org.springframework.beans.factory.xml.ParserContext.getReaderContext:()Lorg/springframework/beans/factory/xml/XmlReaderContext;
aload 5
invokevirtual org.springframework.beans.factory.xml.XmlReaderContext.registerWithGeneratedName:(Lorg/springframework/beans/factory/config/BeanDefinition;)Ljava/lang/String;
astore 6
start local 6 15: aload 1
new org.springframework.beans.factory.parsing.BeanComponentDefinition
dup
aload 5
aload 6
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.registerComponent:(Lorg/springframework/beans/factory/parsing/ComponentDefinition;)V
end local 6 end local 5 end local 4 end local 3 16: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Lorg/springframework/web/servlet/config/ResourcesBeanDefinitionParser;
0 17 1 context Lorg/springframework/beans/factory/xml/ParserContext;
0 17 2 source Ljava/lang/Object;
2 16 3 urlProvider Lorg/springframework/beans/factory/support/RootBeanDefinition;
7 16 4 interceptor Lorg/springframework/beans/factory/support/RootBeanDefinition;
10 16 5 mappedInterceptor Lorg/springframework/beans/factory/support/RootBeanDefinition;
15 16 6 mappedInterceptorName Ljava/lang/String;
RuntimeVisibleParameterAnnotations:
0:
1:
org.springframework.lang.Nullable()
MethodParameters:
Name Flags
context
source
private java.lang.String registerResourceHandler(org.springframework.beans.factory.xml.ParserContext, org.w3c.dom.Element, org.springframework.beans.factory.config.RuntimeBeanReference, java.lang.Object);
descriptor: (Lorg/springframework/beans/factory/xml/ParserContext;Lorg/w3c/dom/Element;Lorg/springframework/beans/factory/config/RuntimeBeanReference;Ljava/lang/Object;)Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=13, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 2
ldc "location"
invokeinterface org.w3c.dom.Element.getAttribute:(Ljava/lang/String;)Ljava/lang/String;
astore 5
start local 5 1: aload 5
invokestatic org.springframework.util.StringUtils.hasText:(Ljava/lang/String;)Z
ifne 4
2: aload 1
invokevirtual org.springframework.beans.factory.xml.ParserContext.getReaderContext:()Lorg/springframework/beans/factory/xml/XmlReaderContext;
ldc "The 'location' attribute is required."
aload 1
aload 2
invokevirtual org.springframework.beans.factory.xml.ParserContext.extractSource:(Ljava/lang/Object;)Ljava/lang/Object;
invokevirtual org.springframework.beans.factory.xml.XmlReaderContext.error:(Ljava/lang/String;Ljava/lang/Object;)V
3: aconst_null
areturn
4: StackMap locals: java.lang.String
StackMap stack:
new org.springframework.beans.factory.support.RootBeanDefinition
dup
ldc Lorg/springframework/web/servlet/resource/ResourceHttpRequestHandler;
invokespecial org.springframework.beans.factory.support.RootBeanDefinition.<init>:(Ljava/lang/Class;)V
astore 6
start local 6 5: aload 6
aload 4
invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.setSource:(Ljava/lang/Object;)V
6: aload 6
iconst_2
invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.setRole:(I)V
7: aload 6
invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.getPropertyValues:()Lorg/springframework/beans/MutablePropertyValues;
astore 7
start local 7 8: aload 7
ldc "urlPathHelper"
aload 3
invokevirtual org.springframework.beans.MutablePropertyValues.add:(Ljava/lang/String;Ljava/lang/Object;)Lorg/springframework/beans/MutablePropertyValues;
pop
9: aload 7
ldc "locationValues"
aload 5
invokestatic org.springframework.util.StringUtils.commaDelimitedListToStringArray:(Ljava/lang/String;)[Ljava/lang/String;
invokevirtual org.springframework.beans.MutablePropertyValues.add:(Ljava/lang/String;Ljava/lang/Object;)Lorg/springframework/beans/MutablePropertyValues;
pop
10: aload 2
ldc "cache-period"
invokeinterface org.w3c.dom.Element.getAttribute:(Ljava/lang/String;)Ljava/lang/String;
astore 8
start local 8 11: aload 8
invokestatic org.springframework.util.StringUtils.hasText:(Ljava/lang/String;)Z
ifeq 13
12: aload 7
ldc "cacheSeconds"
aload 8
invokevirtual org.springframework.beans.MutablePropertyValues.add:(Ljava/lang/String;Ljava/lang/Object;)Lorg/springframework/beans/MutablePropertyValues;
pop
13: StackMap locals: org.springframework.beans.factory.support.RootBeanDefinition org.springframework.beans.MutablePropertyValues java.lang.String
StackMap stack:
aload 2
ldc "cache-control"
invokestatic org.springframework.util.xml.DomUtils.getChildElementByTagName:(Lorg/w3c/dom/Element;Ljava/lang/String;)Lorg/w3c/dom/Element;
astore 9
start local 9 14: aload 9
ifnull 17
15: aload 0
aload 9
invokevirtual org.springframework.web.servlet.config.ResourcesBeanDefinitionParser.parseCacheControl:(Lorg/w3c/dom/Element;)Lorg/springframework/http/CacheControl;
astore 10
start local 10 16: aload 7
ldc "cacheControl"
aload 10
invokevirtual org.springframework.beans.MutablePropertyValues.add:(Ljava/lang/String;Ljava/lang/Object;)Lorg/springframework/beans/MutablePropertyValues;
pop
end local 10 17: StackMap locals: org.w3c.dom.Element
StackMap stack:
aload 2
ldc "resource-chain"
invokestatic org.springframework.util.xml.DomUtils.getChildElementByTagName:(Lorg/w3c/dom/Element;Ljava/lang/String;)Lorg/w3c/dom/Element;
astore 10
start local 10 18: aload 10
ifnull 20
19: aload 0
aload 6
aload 1
aload 10
aload 4
invokevirtual org.springframework.web.servlet.config.ResourcesBeanDefinitionParser.parseResourceChain:(Lorg/springframework/beans/factory/support/RootBeanDefinition;Lorg/springframework/beans/factory/xml/ParserContext;Lorg/w3c/dom/Element;Ljava/lang/Object;)V
20: StackMap locals: org.w3c.dom.Element
StackMap stack:
aload 1
invokestatic org.springframework.web.servlet.config.MvcNamespaceUtils.getContentNegotiationManager:(Lorg/springframework/beans/factory/xml/ParserContext;)Ljava/lang/Object;
astore 11
start local 11 21: aload 11
ifnull 23
22: aload 7
ldc "contentNegotiationManager"
aload 11
invokevirtual org.springframework.beans.MutablePropertyValues.add:(Ljava/lang/String;Ljava/lang/Object;)Lorg/springframework/beans/MutablePropertyValues;
pop
23: StackMap locals: java.lang.Object
StackMap stack:
aload 1
invokevirtual org.springframework.beans.factory.xml.ParserContext.getReaderContext:()Lorg/springframework/beans/factory/xml/XmlReaderContext;
aload 6
invokevirtual org.springframework.beans.factory.xml.XmlReaderContext.generateBeanName:(Lorg/springframework/beans/factory/config/BeanDefinition;)Ljava/lang/String;
astore 12
start local 12 24: aload 1
invokevirtual org.springframework.beans.factory.xml.ParserContext.getRegistry:()Lorg/springframework/beans/factory/support/BeanDefinitionRegistry;
aload 12
aload 6
invokeinterface org.springframework.beans.factory.support.BeanDefinitionRegistry.registerBeanDefinition:(Ljava/lang/String;Lorg/springframework/beans/factory/config/BeanDefinition;)V
25: aload 1
new org.springframework.beans.factory.parsing.BeanComponentDefinition
dup
aload 6
aload 12
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.registerComponent:(Lorg/springframework/beans/factory/parsing/ComponentDefinition;)V
26: aload 12
areturn
end local 12 end local 11 end local 10 end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 27 0 this Lorg/springframework/web/servlet/config/ResourcesBeanDefinitionParser;
0 27 1 context Lorg/springframework/beans/factory/xml/ParserContext;
0 27 2 element Lorg/w3c/dom/Element;
0 27 3 pathHelperRef Lorg/springframework/beans/factory/config/RuntimeBeanReference;
0 27 4 source Ljava/lang/Object;
1 27 5 locationAttr Ljava/lang/String;
5 27 6 resourceHandlerDef Lorg/springframework/beans/factory/support/RootBeanDefinition;
8 27 7 values Lorg/springframework/beans/MutablePropertyValues;
11 27 8 cacheSeconds Ljava/lang/String;
14 27 9 cacheControlElement Lorg/w3c/dom/Element;
16 17 10 cacheControl Lorg/springframework/http/CacheControl;
18 27 10 resourceChainElement Lorg/w3c/dom/Element;
21 27 11 manager Ljava/lang/Object;
24 27 12 beanName Ljava/lang/String;
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
RuntimeVisibleParameterAnnotations:
0:
1:
2:
3:
org.springframework.lang.Nullable()
MethodParameters:
Name Flags
context
element
pathHelperRef
source
private org.springframework.http.CacheControl parseCacheControl(org.w3c.dom.Element);
descriptor: (Lorg/w3c/dom/Element;)Lorg/springframework/http/CacheControl;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: ldc "true"
aload 1
ldc "no-cache"
invokeinterface org.w3c.dom.Element.getAttribute:(Ljava/lang/String;)Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 3
1: invokestatic org.springframework.http.CacheControl.noCache:()Lorg/springframework/http/CacheControl;
astore 2
start local 2 2: goto 10
end local 2 3: StackMap locals:
StackMap stack:
ldc "true"
aload 1
ldc "no-store"
invokeinterface org.w3c.dom.Element.getAttribute:(Ljava/lang/String;)Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 6
4: invokestatic org.springframework.http.CacheControl.noStore:()Lorg/springframework/http/CacheControl;
astore 2
start local 2 5: goto 10
end local 2 6: StackMap locals:
StackMap stack:
aload 1
ldc "max-age"
invokeinterface org.w3c.dom.Element.hasAttribute:(Ljava/lang/String;)Z
ifeq 9
7: aload 1
ldc "max-age"
invokeinterface org.w3c.dom.Element.getAttribute:(Ljava/lang/String;)Ljava/lang/String;
invokestatic java.lang.Long.parseLong:(Ljava/lang/String;)J
getstatic java.util.concurrent.TimeUnit.SECONDS:Ljava/util/concurrent/TimeUnit;
invokestatic org.springframework.http.CacheControl.maxAge:(JLjava/util/concurrent/TimeUnit;)Lorg/springframework/http/CacheControl;
astore 2
start local 2 8: goto 10
end local 2 9: StackMap locals:
StackMap stack:
invokestatic org.springframework.http.CacheControl.empty:()Lorg/springframework/http/CacheControl;
astore 2
start local 2 10: StackMap locals: org.springframework.http.CacheControl
StackMap stack:
ldc "true"
aload 1
ldc "must-revalidate"
invokeinterface org.w3c.dom.Element.getAttribute:(Ljava/lang/String;)Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 12
11: aload 2
invokevirtual org.springframework.http.CacheControl.mustRevalidate:()Lorg/springframework/http/CacheControl;
astore 2
12: StackMap locals:
StackMap stack:
ldc "true"
aload 1
ldc "no-transform"
invokeinterface org.w3c.dom.Element.getAttribute:(Ljava/lang/String;)Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 14
13: aload 2
invokevirtual org.springframework.http.CacheControl.noTransform:()Lorg/springframework/http/CacheControl;
astore 2
14: StackMap locals:
StackMap stack:
ldc "true"
aload 1
ldc "cache-public"
invokeinterface org.w3c.dom.Element.getAttribute:(Ljava/lang/String;)Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 16
15: aload 2
invokevirtual org.springframework.http.CacheControl.cachePublic:()Lorg/springframework/http/CacheControl;
astore 2
16: StackMap locals:
StackMap stack:
ldc "true"
aload 1
ldc "cache-private"
invokeinterface org.w3c.dom.Element.getAttribute:(Ljava/lang/String;)Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 18
17: aload 2
invokevirtual org.springframework.http.CacheControl.cachePrivate:()Lorg/springframework/http/CacheControl;
astore 2
18: StackMap locals:
StackMap stack:
ldc "true"
aload 1
ldc "proxy-revalidate"
invokeinterface org.w3c.dom.Element.getAttribute:(Ljava/lang/String;)Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 20
19: aload 2
invokevirtual org.springframework.http.CacheControl.proxyRevalidate:()Lorg/springframework/http/CacheControl;
astore 2
20: StackMap locals:
StackMap stack:
aload 1
ldc "s-maxage"
invokeinterface org.w3c.dom.Element.hasAttribute:(Ljava/lang/String;)Z
ifeq 22
21: aload 2
aload 1
ldc "s-maxage"
invokeinterface org.w3c.dom.Element.getAttribute:(Ljava/lang/String;)Ljava/lang/String;
invokestatic java.lang.Long.parseLong:(Ljava/lang/String;)J
getstatic java.util.concurrent.TimeUnit.SECONDS:Ljava/util/concurrent/TimeUnit;
invokevirtual org.springframework.http.CacheControl.sMaxAge:(JLjava/util/concurrent/TimeUnit;)Lorg/springframework/http/CacheControl;
astore 2
22: StackMap locals:
StackMap stack:
aload 1
ldc "stale-while-revalidate"
invokeinterface org.w3c.dom.Element.hasAttribute:(Ljava/lang/String;)Z
ifeq 26
23: aload 2
24: aload 1
ldc "stale-while-revalidate"
invokeinterface org.w3c.dom.Element.getAttribute:(Ljava/lang/String;)Ljava/lang/String;
invokestatic java.lang.Long.parseLong:(Ljava/lang/String;)J
getstatic java.util.concurrent.TimeUnit.SECONDS:Ljava/util/concurrent/TimeUnit;
25: invokevirtual org.springframework.http.CacheControl.staleWhileRevalidate:(JLjava/util/concurrent/TimeUnit;)Lorg/springframework/http/CacheControl;
astore 2
26: StackMap locals:
StackMap stack:
aload 1
ldc "stale-if-error"
invokeinterface org.w3c.dom.Element.hasAttribute:(Ljava/lang/String;)Z
ifeq 30
27: aload 2
28: aload 1
ldc "stale-if-error"
invokeinterface org.w3c.dom.Element.getAttribute:(Ljava/lang/String;)Ljava/lang/String;
invokestatic java.lang.Long.parseLong:(Ljava/lang/String;)J
getstatic java.util.concurrent.TimeUnit.SECONDS:Ljava/util/concurrent/TimeUnit;
29: invokevirtual org.springframework.http.CacheControl.staleIfError:(JLjava/util/concurrent/TimeUnit;)Lorg/springframework/http/CacheControl;
astore 2
30: StackMap locals:
StackMap stack:
aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 31 0 this Lorg/springframework/web/servlet/config/ResourcesBeanDefinitionParser;
0 31 1 element Lorg/w3c/dom/Element;
2 3 2 cacheControl Lorg/springframework/http/CacheControl;
5 6 2 cacheControl Lorg/springframework/http/CacheControl;
8 9 2 cacheControl Lorg/springframework/http/CacheControl;
10 31 2 cacheControl Lorg/springframework/http/CacheControl;
MethodParameters:
Name Flags
element
private void parseResourceChain(org.springframework.beans.factory.support.RootBeanDefinition, org.springframework.beans.factory.xml.ParserContext, org.w3c.dom.Element, java.lang.Object);
descriptor: (Lorg/springframework/beans/factory/support/RootBeanDefinition;Lorg/springframework/beans/factory/xml/ParserContext;Lorg/w3c/dom/Element;Ljava/lang/Object;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=7, locals=9, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 3
ldc "auto-registration"
invokeinterface org.w3c.dom.Element.getAttribute:(Ljava/lang/String;)Ljava/lang/String;
astore 5
start local 5 1: aload 5
invokestatic org.springframework.util.StringUtils.hasText:(Ljava/lang/String;)Z
ifeq 2
ldc "false"
aload 5
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 2
iconst_0
goto 3
StackMap locals: java.lang.String
StackMap stack:
2: iconst_1
StackMap locals:
StackMap stack: int
3: istore 6
start local 6 4: new org.springframework.beans.factory.support.ManagedList
dup
invokespecial org.springframework.beans.factory.support.ManagedList.<init>:()V
astore 7
start local 7 5: aload 7
aload 4
invokevirtual org.springframework.beans.factory.support.ManagedList.setSource:(Ljava/lang/Object;)V
6: new org.springframework.beans.factory.support.ManagedList
dup
invokespecial org.springframework.beans.factory.support.ManagedList.<init>:()V
astore 8
start local 8 7: aload 8
aload 4
invokevirtual org.springframework.beans.factory.support.ManagedList.setSource:(Ljava/lang/Object;)V
8: aload 0
aload 7
aload 8
aload 3
aload 4
invokevirtual org.springframework.web.servlet.config.ResourcesBeanDefinitionParser.parseResourceCache:(Lorg/springframework/beans/factory/support/ManagedList;Lorg/springframework/beans/factory/support/ManagedList;Lorg/w3c/dom/Element;Ljava/lang/Object;)V
9: aload 0
10: iload 6
aload 7
aload 8
aload 2
aload 3
aload 4
11: invokevirtual org.springframework.web.servlet.config.ResourcesBeanDefinitionParser.parseResourceResolversTransformers:(ZLorg/springframework/beans/factory/support/ManagedList;Lorg/springframework/beans/factory/support/ManagedList;Lorg/springframework/beans/factory/xml/ParserContext;Lorg/w3c/dom/Element;Ljava/lang/Object;)V
12: aload 7
invokevirtual org.springframework.beans.factory.support.ManagedList.isEmpty:()Z
ifne 14
13: aload 1
invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.getPropertyValues:()Lorg/springframework/beans/MutablePropertyValues;
ldc "resourceResolvers"
aload 7
invokevirtual org.springframework.beans.MutablePropertyValues.add:(Ljava/lang/String;Ljava/lang/Object;)Lorg/springframework/beans/MutablePropertyValues;
pop
14: StackMap locals: int org.springframework.beans.factory.support.ManagedList org.springframework.beans.factory.support.ManagedList
StackMap stack:
aload 8
invokevirtual org.springframework.beans.factory.support.ManagedList.isEmpty:()Z
ifne 16
15: aload 1
invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.getPropertyValues:()Lorg/springframework/beans/MutablePropertyValues;
ldc "resourceTransformers"
aload 8
invokevirtual org.springframework.beans.MutablePropertyValues.add:(Ljava/lang/String;Ljava/lang/Object;)Lorg/springframework/beans/MutablePropertyValues;
pop
16: StackMap locals:
StackMap stack:
return
end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Lorg/springframework/web/servlet/config/ResourcesBeanDefinitionParser;
0 17 1 resourceHandlerDef Lorg/springframework/beans/factory/support/RootBeanDefinition;
0 17 2 context Lorg/springframework/beans/factory/xml/ParserContext;
0 17 3 element Lorg/w3c/dom/Element;
0 17 4 source Ljava/lang/Object;
1 17 5 autoRegistration Ljava/lang/String;
4 17 6 isAutoRegistration Z
5 17 7 resourceResolvers Lorg/springframework/beans/factory/support/ManagedList<Ljava/lang/Object;>;
7 17 8 resourceTransformers Lorg/springframework/beans/factory/support/ManagedList<Ljava/lang/Object;>;
RuntimeVisibleParameterAnnotations:
0:
1:
2:
3:
org.springframework.lang.Nullable()
MethodParameters:
Name Flags
resourceHandlerDef
context
element
source
private void parseResourceCache(org.springframework.beans.factory.support.ManagedList<java.lang.Object>, org.springframework.beans.factory.support.ManagedList<java.lang.Object>, org.w3c.dom.Element, );
descriptor: (Lorg/springframework/beans/factory/support/ManagedList;Lorg/springframework/beans/factory/support/ManagedList;Lorg/w3c/dom/Element;Ljava/lang/Object;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=13, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 3
ldc "resource-cache"
invokeinterface org.w3c.dom.Element.getAttribute:(Ljava/lang/String;)Ljava/lang/String;
astore 5
start local 5 1: ldc "true"
aload 5
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 27
2: new org.springframework.beans.factory.config.ConstructorArgumentValues
dup
invokespecial org.springframework.beans.factory.config.ConstructorArgumentValues.<init>:()V
astore 6
start local 6 3: new org.springframework.beans.factory.support.RootBeanDefinition
dup
ldc Lorg/springframework/web/servlet/resource/CachingResourceResolver;
invokespecial org.springframework.beans.factory.support.RootBeanDefinition.<init>:(Ljava/lang/Class;)V
astore 7
start local 7 4: aload 7
aload 4
invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.setSource:(Ljava/lang/Object;)V
5: aload 7
iconst_2
invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.setRole:(I)V
6: aload 7
aload 6
invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.setConstructorArgumentValues:(Lorg/springframework/beans/factory/config/ConstructorArgumentValues;)V
7: new org.springframework.beans.factory.support.RootBeanDefinition
dup
ldc Lorg/springframework/web/servlet/resource/CachingResourceTransformer;
invokespecial org.springframework.beans.factory.support.RootBeanDefinition.<init>:(Ljava/lang/Class;)V
astore 8
start local 8 8: aload 8
aload 4
invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.setSource:(Ljava/lang/Object;)V
9: aload 8
iconst_2
invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.setRole:(I)V
10: aload 8
aload 6
invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.setConstructorArgumentValues:(Lorg/springframework/beans/factory/config/ConstructorArgumentValues;)V
11: aload 3
ldc "cache-manager"
invokeinterface org.w3c.dom.Element.getAttribute:(Ljava/lang/String;)Ljava/lang/String;
astore 9
start local 9 12: aload 3
ldc "cache-name"
invokeinterface org.w3c.dom.Element.getAttribute:(Ljava/lang/String;)Ljava/lang/String;
astore 10
start local 10 13: aload 9
invokestatic org.springframework.util.StringUtils.hasText:(Ljava/lang/String;)Z
ifeq 18
aload 10
invokestatic org.springframework.util.StringUtils.hasText:(Ljava/lang/String;)Z
ifeq 18
14: new org.springframework.beans.factory.config.RuntimeBeanReference
dup
aload 9
invokespecial org.springframework.beans.factory.config.RuntimeBeanReference.<init>:(Ljava/lang/String;)V
astore 11
start local 11 15: aload 6
iconst_0
aload 11
invokevirtual org.springframework.beans.factory.config.ConstructorArgumentValues.addIndexedArgumentValue:(ILjava/lang/Object;)V
16: aload 6
iconst_1
aload 10
invokevirtual org.springframework.beans.factory.config.ConstructorArgumentValues.addIndexedArgumentValue:(ILjava/lang/Object;)V
end local 11 17: goto 25
18: StackMap locals: org.springframework.web.servlet.config.ResourcesBeanDefinitionParser org.springframework.beans.factory.support.ManagedList org.springframework.beans.factory.support.ManagedList org.w3c.dom.Element java.lang.Object java.lang.String org.springframework.beans.factory.config.ConstructorArgumentValues org.springframework.beans.factory.support.RootBeanDefinition org.springframework.beans.factory.support.RootBeanDefinition java.lang.String java.lang.String
StackMap stack:
new org.springframework.beans.factory.config.ConstructorArgumentValues
dup
invokespecial org.springframework.beans.factory.config.ConstructorArgumentValues.<init>:()V
astore 11
start local 11 19: aload 11
iconst_0
ldc "spring-resource-chain-cache"
invokevirtual org.springframework.beans.factory.config.ConstructorArgumentValues.addIndexedArgumentValue:(ILjava/lang/Object;)V
20: new org.springframework.beans.factory.support.RootBeanDefinition
dup
ldc Lorg/springframework/cache/concurrent/ConcurrentMapCache;
invokespecial org.springframework.beans.factory.support.RootBeanDefinition.<init>:(Ljava/lang/Class;)V
astore 12
start local 12 21: aload 12
aload 4
invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.setSource:(Ljava/lang/Object;)V
22: aload 12
iconst_2
invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.setRole:(I)V
23: aload 12
aload 11
invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.setConstructorArgumentValues:(Lorg/springframework/beans/factory/config/ConstructorArgumentValues;)V
24: aload 6
iconst_0
aload 12
invokevirtual org.springframework.beans.factory.config.ConstructorArgumentValues.addIndexedArgumentValue:(ILjava/lang/Object;)V
end local 12 end local 11 25: StackMap locals:
StackMap stack:
aload 1
aload 7
invokevirtual org.springframework.beans.factory.support.ManagedList.add:(Ljava/lang/Object;)Z
pop
26: aload 2
aload 8
invokevirtual org.springframework.beans.factory.support.ManagedList.add:(Ljava/lang/Object;)Z
pop
end local 10 end local 9 end local 8 end local 7 end local 6 27: StackMap locals: org.springframework.web.servlet.config.ResourcesBeanDefinitionParser org.springframework.beans.factory.support.ManagedList org.springframework.beans.factory.support.ManagedList org.w3c.dom.Element java.lang.Object java.lang.String
StackMap stack:
return
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 28 0 this Lorg/springframework/web/servlet/config/ResourcesBeanDefinitionParser;
0 28 1 resourceResolvers Lorg/springframework/beans/factory/support/ManagedList<Ljava/lang/Object;>;
0 28 2 resourceTransformers Lorg/springframework/beans/factory/support/ManagedList<Ljava/lang/Object;>;
0 28 3 element Lorg/w3c/dom/Element;
0 28 4 source Ljava/lang/Object;
1 28 5 resourceCache Ljava/lang/String;
3 27 6 cargs Lorg/springframework/beans/factory/config/ConstructorArgumentValues;
4 27 7 cachingResolverDef Lorg/springframework/beans/factory/support/RootBeanDefinition;
8 27 8 cachingTransformerDef Lorg/springframework/beans/factory/support/RootBeanDefinition;
12 27 9 cacheManagerName Ljava/lang/String;
13 27 10 cacheName Ljava/lang/String;
15 17 11 cacheManagerRef Lorg/springframework/beans/factory/config/RuntimeBeanReference;
19 25 11 cacheCavs Lorg/springframework/beans/factory/config/ConstructorArgumentValues;
21 25 12 cacheDef Lorg/springframework/beans/factory/support/RootBeanDefinition;
Signature: (Lorg/springframework/beans/factory/support/ManagedList<Ljava/lang/Object;>;Lorg/springframework/beans/factory/support/ManagedList<Ljava/lang/Object;>;Lorg/w3c/dom/Element;Ljava/lang/Object;)V
RuntimeVisibleParameterAnnotations:
0:
1:
2:
3:
org.springframework.lang.Nullable()
MethodParameters:
Name Flags
resourceResolvers
resourceTransformers
element
source
private void parseResourceResolversTransformers(boolean, org.springframework.beans.factory.support.ManagedList<java.lang.Object>, org.springframework.beans.factory.support.ManagedList<java.lang.Object>, org.springframework.beans.factory.xml.ParserContext, org.w3c.dom.Element, );
descriptor: (ZLorg/springframework/beans/factory/support/ManagedList;Lorg/springframework/beans/factory/support/ManagedList;Lorg/springframework/beans/factory/xml/ParserContext;Lorg/w3c/dom/Element;Ljava/lang/Object;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=12, args_size=7
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 0: aload 5
ldc "resolvers"
invokestatic org.springframework.util.xml.DomUtils.getChildElementByTagName:(Lorg/w3c/dom/Element;Ljava/lang/String;)Lorg/w3c/dom/Element;
astore 7
start local 7 1: aload 7
ifnull 17
2: aload 7
invokestatic org.springframework.util.xml.DomUtils.getChildElements:(Lorg/w3c/dom/Element;)Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 9
goto 16
StackMap locals: org.springframework.web.servlet.config.ResourcesBeanDefinitionParser int org.springframework.beans.factory.support.ManagedList org.springframework.beans.factory.support.ManagedList org.springframework.beans.factory.xml.ParserContext org.w3c.dom.Element java.lang.Object org.w3c.dom.Element top java.util.Iterator
StackMap stack:
3: aload 9
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.w3c.dom.Element
astore 8
start local 8 4: ldc "version-resolver"
aload 8
invokeinterface org.w3c.dom.Element.getLocalName:()Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 14
5: aload 0
aload 4
aload 8
aload 6
invokevirtual org.springframework.web.servlet.config.ResourcesBeanDefinitionParser.parseVersionResolver:(Lorg/springframework/beans/factory/xml/ParserContext;Lorg/w3c/dom/Element;Ljava/lang/Object;)Lorg/springframework/beans/factory/support/RootBeanDefinition;
astore 10
start local 10 6: aload 10
aload 6
invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.setSource:(Ljava/lang/Object;)V
7: aload 2
aload 10
invokevirtual org.springframework.beans.factory.support.ManagedList.add:(Ljava/lang/Object;)Z
pop
8: iload 1
ifeq 16
9: new org.springframework.beans.factory.support.RootBeanDefinition
dup
ldc Lorg/springframework/web/servlet/resource/CssLinkResourceTransformer;
invokespecial org.springframework.beans.factory.support.RootBeanDefinition.<init>:(Ljava/lang/Class;)V
astore 11
start local 11 10: aload 11
aload 6
invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.setSource:(Ljava/lang/Object;)V
11: aload 11
iconst_2
invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.setRole:(I)V
12: aload 3
aload 11
invokevirtual org.springframework.beans.factory.support.ManagedList.add:(Ljava/lang/Object;)Z
pop
end local 11 end local 10 13: goto 16
14: StackMap locals: org.springframework.web.servlet.config.ResourcesBeanDefinitionParser int org.springframework.beans.factory.support.ManagedList org.springframework.beans.factory.support.ManagedList org.springframework.beans.factory.xml.ParserContext org.w3c.dom.Element java.lang.Object org.w3c.dom.Element org.w3c.dom.Element java.util.Iterator
StackMap stack:
aload 4
invokevirtual org.springframework.beans.factory.xml.ParserContext.getDelegate:()Lorg/springframework/beans/factory/xml/BeanDefinitionParserDelegate;
aload 8
aconst_null
invokevirtual org.springframework.beans.factory.xml.BeanDefinitionParserDelegate.parsePropertySubElement:(Lorg/w3c/dom/Element;Lorg/springframework/beans/factory/config/BeanDefinition;)Ljava/lang/Object;
astore 10
start local 10 15: aload 2
aload 10
invokevirtual org.springframework.beans.factory.support.ManagedList.add:(Ljava/lang/Object;)Z
pop
end local 10 end local 8 16: StackMap locals: org.springframework.web.servlet.config.ResourcesBeanDefinitionParser int org.springframework.beans.factory.support.ManagedList org.springframework.beans.factory.support.ManagedList org.springframework.beans.factory.xml.ParserContext org.w3c.dom.Element java.lang.Object org.w3c.dom.Element top java.util.Iterator
StackMap stack:
aload 9
invokeinterface java.util.Iterator.hasNext:()Z
ifne 3
17: StackMap locals: org.springframework.web.servlet.config.ResourcesBeanDefinitionParser int org.springframework.beans.factory.support.ManagedList org.springframework.beans.factory.support.ManagedList org.springframework.beans.factory.xml.ParserContext org.w3c.dom.Element java.lang.Object org.w3c.dom.Element
StackMap stack:
iload 1
ifeq 27
18: getstatic org.springframework.web.servlet.config.ResourcesBeanDefinitionParser.webJarsPresent:Z
ifeq 23
19: new org.springframework.beans.factory.support.RootBeanDefinition
dup
ldc Lorg/springframework/web/servlet/resource/WebJarsResourceResolver;
invokespecial org.springframework.beans.factory.support.RootBeanDefinition.<init>:(Ljava/lang/Class;)V
astore 8
start local 8 20: aload 8
aload 6
invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.setSource:(Ljava/lang/Object;)V
21: aload 8
iconst_2
invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.setRole:(I)V
22: aload 2
aload 8
invokevirtual org.springframework.beans.factory.support.ManagedList.add:(Ljava/lang/Object;)Z
pop
end local 8 23: StackMap locals:
StackMap stack:
new org.springframework.beans.factory.support.RootBeanDefinition
dup
ldc Lorg/springframework/web/servlet/resource/PathResourceResolver;
invokespecial org.springframework.beans.factory.support.RootBeanDefinition.<init>:(Ljava/lang/Class;)V
astore 8
start local 8 24: aload 8
aload 6
invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.setSource:(Ljava/lang/Object;)V
25: aload 8
iconst_2
invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.setRole:(I)V
26: aload 2
aload 8
invokevirtual org.springframework.beans.factory.support.ManagedList.add:(Ljava/lang/Object;)Z
pop
end local 8 27: StackMap locals:
StackMap stack:
aload 5
ldc "transformers"
invokestatic org.springframework.util.xml.DomUtils.getChildElementByTagName:(Lorg/w3c/dom/Element;Ljava/lang/String;)Lorg/w3c/dom/Element;
astore 8
start local 8 28: aload 8
ifnull 34
29: aload 8
iconst_2
anewarray java.lang.String
dup
iconst_0
ldc "bean"
aastore
dup
iconst_1
ldc "ref"
aastore
invokestatic org.springframework.util.xml.DomUtils.getChildElementsByTagName:(Lorg/w3c/dom/Element;[Ljava/lang/String;)Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 10
goto 33
StackMap locals: org.springframework.web.servlet.config.ResourcesBeanDefinitionParser int org.springframework.beans.factory.support.ManagedList org.springframework.beans.factory.support.ManagedList org.springframework.beans.factory.xml.ParserContext org.w3c.dom.Element java.lang.Object org.w3c.dom.Element org.w3c.dom.Element top java.util.Iterator
StackMap stack:
30: aload 10
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.w3c.dom.Element
astore 9
start local 9 31: aload 4
invokevirtual org.springframework.beans.factory.xml.ParserContext.getDelegate:()Lorg/springframework/beans/factory/xml/BeanDefinitionParserDelegate;
aload 9
aconst_null
invokevirtual org.springframework.beans.factory.xml.BeanDefinitionParserDelegate.parsePropertySubElement:(Lorg/w3c/dom/Element;Lorg/springframework/beans/factory/config/BeanDefinition;)Ljava/lang/Object;
astore 11
start local 11 32: aload 3
aload 11
invokevirtual org.springframework.beans.factory.support.ManagedList.add:(Ljava/lang/Object;)Z
pop
end local 11 end local 9 33: StackMap locals:
StackMap stack:
aload 10
invokeinterface java.util.Iterator.hasNext:()Z
ifne 30
34: StackMap locals: org.springframework.web.servlet.config.ResourcesBeanDefinitionParser int org.springframework.beans.factory.support.ManagedList org.springframework.beans.factory.support.ManagedList org.springframework.beans.factory.xml.ParserContext org.w3c.dom.Element java.lang.Object org.w3c.dom.Element org.w3c.dom.Element
StackMap stack:
return
end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 35 0 this Lorg/springframework/web/servlet/config/ResourcesBeanDefinitionParser;
0 35 1 isAutoRegistration Z
0 35 2 resourceResolvers Lorg/springframework/beans/factory/support/ManagedList<Ljava/lang/Object;>;
0 35 3 resourceTransformers Lorg/springframework/beans/factory/support/ManagedList<Ljava/lang/Object;>;
0 35 4 context Lorg/springframework/beans/factory/xml/ParserContext;
0 35 5 element Lorg/w3c/dom/Element;
0 35 6 source Ljava/lang/Object;
1 35 7 resolversElement Lorg/w3c/dom/Element;
4 16 8 beanElement Lorg/w3c/dom/Element;
6 13 10 versionResolverDef Lorg/springframework/beans/factory/support/RootBeanDefinition;
10 13 11 cssLinkTransformerDef Lorg/springframework/beans/factory/support/RootBeanDefinition;
15 16 10 object Ljava/lang/Object;
20 23 8 webJarsResolverDef Lorg/springframework/beans/factory/support/RootBeanDefinition;
24 27 8 pathResolverDef Lorg/springframework/beans/factory/support/RootBeanDefinition;
28 35 8 transformersElement Lorg/w3c/dom/Element;
31 33 9 beanElement Lorg/w3c/dom/Element;
32 33 11 object Ljava/lang/Object;
Signature: (ZLorg/springframework/beans/factory/support/ManagedList<Ljava/lang/Object;>;Lorg/springframework/beans/factory/support/ManagedList<Ljava/lang/Object;>;Lorg/springframework/beans/factory/xml/ParserContext;Lorg/w3c/dom/Element;Ljava/lang/Object;)V
RuntimeVisibleParameterAnnotations:
0:
1:
2:
3:
4:
5:
org.springframework.lang.Nullable()
MethodParameters:
Name Flags
isAutoRegistration
resourceResolvers
resourceTransformers
context
element
source
private org.springframework.beans.factory.support.RootBeanDefinition parseVersionResolver(org.springframework.beans.factory.xml.ParserContext, org.w3c.dom.Element, java.lang.Object);
descriptor: (Lorg/springframework/beans/factory/xml/ParserContext;Lorg/w3c/dom/Element;Ljava/lang/Object;)Lorg/springframework/beans/factory/support/RootBeanDefinition;
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=14, args_size=4
start local 0 start local 1 start local 2 start local 3 0: new org.springframework.beans.factory.support.ManagedMap
dup
invokespecial org.springframework.beans.factory.support.ManagedMap.<init>:()V
astore 4
start local 4 1: aload 4
aload 3
invokevirtual org.springframework.beans.factory.support.ManagedMap.setSource:(Ljava/lang/Object;)V
2: new org.springframework.beans.factory.support.RootBeanDefinition
dup
ldc Lorg/springframework/web/servlet/resource/VersionResourceResolver;
invokespecial org.springframework.beans.factory.support.RootBeanDefinition.<init>:(Ljava/lang/Class;)V
astore 5
start local 5 3: aload 5
aload 3
invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.setSource:(Ljava/lang/Object;)V
4: aload 5
iconst_2
invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.setRole:(I)V
5: aload 5
invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.getPropertyValues:()Lorg/springframework/beans/MutablePropertyValues;
ldc "strategyMap"
aload 4
invokevirtual org.springframework.beans.MutablePropertyValues.addPropertyValue:(Ljava/lang/String;Ljava/lang/Object;)V
6: aload 2
invokestatic org.springframework.util.xml.DomUtils.getChildElements:(Lorg/w3c/dom/Element;)Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 7
goto 33
StackMap locals: org.springframework.web.servlet.config.ResourcesBeanDefinitionParser org.springframework.beans.factory.xml.ParserContext org.w3c.dom.Element java.lang.Object org.springframework.beans.factory.support.ManagedMap org.springframework.beans.factory.support.RootBeanDefinition top java.util.Iterator
StackMap stack:
7: aload 7
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.w3c.dom.Element
astore 6
start local 6 8: aload 6
ldc "patterns"
invokeinterface org.w3c.dom.Element.getAttribute:(Ljava/lang/String;)Ljava/lang/String;
invokestatic org.springframework.util.StringUtils.commaDelimitedListToStringArray:(Ljava/lang/String;)[Ljava/lang/String;
astore 8
start local 8 9: aconst_null
astore 9
start local 9 10: ldc "fixed-version-strategy"
aload 6
invokeinterface org.w3c.dom.Element.getLocalName:()Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 19
11: new org.springframework.beans.factory.config.ConstructorArgumentValues
dup
invokespecial org.springframework.beans.factory.config.ConstructorArgumentValues.<init>:()V
astore 10
start local 10 12: aload 10
iconst_0
aload 6
ldc "version"
invokeinterface org.w3c.dom.Element.getAttribute:(Ljava/lang/String;)Ljava/lang/String;
invokevirtual org.springframework.beans.factory.config.ConstructorArgumentValues.addIndexedArgumentValue:(ILjava/lang/Object;)V
13: new org.springframework.beans.factory.support.RootBeanDefinition
dup
ldc Lorg/springframework/web/servlet/resource/FixedVersionStrategy;
invokespecial org.springframework.beans.factory.support.RootBeanDefinition.<init>:(Ljava/lang/Class;)V
astore 11
start local 11 14: aload 11
aload 3
invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.setSource:(Ljava/lang/Object;)V
15: aload 11
iconst_2
invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.setRole:(I)V
16: aload 11
aload 10
invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.setConstructorArgumentValues:(Lorg/springframework/beans/factory/config/ConstructorArgumentValues;)V
17: aload 11
astore 9
end local 11 end local 10 18: goto 28
19: StackMap locals: org.springframework.web.servlet.config.ResourcesBeanDefinitionParser org.springframework.beans.factory.xml.ParserContext org.w3c.dom.Element java.lang.Object org.springframework.beans.factory.support.ManagedMap org.springframework.beans.factory.support.RootBeanDefinition org.w3c.dom.Element java.util.Iterator java.lang.String[] java.lang.Object
StackMap stack:
ldc "content-version-strategy"
aload 6
invokeinterface org.w3c.dom.Element.getLocalName:()Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 25
20: new org.springframework.beans.factory.support.RootBeanDefinition
dup
ldc Lorg/springframework/web/servlet/resource/ContentVersionStrategy;
invokespecial org.springframework.beans.factory.support.RootBeanDefinition.<init>:(Ljava/lang/Class;)V
astore 10
start local 10 21: aload 10
aload 3
invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.setSource:(Ljava/lang/Object;)V
22: aload 10
iconst_2
invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.setRole:(I)V
23: aload 10
astore 9
end local 10 24: goto 28
25: StackMap locals:
StackMap stack:
ldc "version-strategy"
aload 6
invokeinterface org.w3c.dom.Element.getLocalName:()Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 28
26: aload 6
iconst_2
anewarray java.lang.String
dup
iconst_0
ldc "bean"
aastore
dup
iconst_1
ldc "ref"
aastore
invokestatic org.springframework.util.xml.DomUtils.getChildElementsByTagName:(Lorg/w3c/dom/Element;[Ljava/lang/String;)Ljava/util/List;
iconst_0
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast org.w3c.dom.Element
astore 10
start local 10 27: aload 1
invokevirtual org.springframework.beans.factory.xml.ParserContext.getDelegate:()Lorg/springframework/beans/factory/xml/BeanDefinitionParserDelegate;
aload 10
aconst_null
invokevirtual org.springframework.beans.factory.xml.BeanDefinitionParserDelegate.parsePropertySubElement:(Lorg/w3c/dom/Element;Lorg/springframework/beans/factory/config/BeanDefinition;)Ljava/lang/Object;
astore 9
end local 10 28: StackMap locals:
StackMap stack:
aload 8
dup
astore 13
arraylength
istore 12
iconst_0
istore 11
goto 32
StackMap locals: org.springframework.web.servlet.config.ResourcesBeanDefinitionParser org.springframework.beans.factory.xml.ParserContext org.w3c.dom.Element java.lang.Object org.springframework.beans.factory.support.ManagedMap org.springframework.beans.factory.support.RootBeanDefinition org.w3c.dom.Element java.util.Iterator java.lang.String[] java.lang.Object top int int java.lang.String[]
StackMap stack:
29: aload 13
iload 11
aaload
astore 10
start local 10 30: aload 4
aload 10
aload 9
invokevirtual org.springframework.beans.factory.support.ManagedMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 10 31: iinc 11 1
StackMap locals:
StackMap stack:
32: iload 11
iload 12
if_icmplt 29
end local 9 end local 8 end local 6 33: StackMap locals: org.springframework.web.servlet.config.ResourcesBeanDefinitionParser org.springframework.beans.factory.xml.ParserContext org.w3c.dom.Element java.lang.Object org.springframework.beans.factory.support.ManagedMap org.springframework.beans.factory.support.RootBeanDefinition top java.util.Iterator
StackMap stack:
aload 7
invokeinterface java.util.Iterator.hasNext:()Z
ifne 7
34: aload 5
areturn
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 35 0 this Lorg/springframework/web/servlet/config/ResourcesBeanDefinitionParser;
0 35 1 context Lorg/springframework/beans/factory/xml/ParserContext;
0 35 2 element Lorg/w3c/dom/Element;
0 35 3 source Ljava/lang/Object;
1 35 4 strategyMap Lorg/springframework/beans/factory/support/ManagedMap<Ljava/lang/String;Ljava/lang/Object;>;
3 35 5 versionResolverDef Lorg/springframework/beans/factory/support/RootBeanDefinition;
8 33 6 beanElement Lorg/w3c/dom/Element;
9 33 8 patterns [Ljava/lang/String;
10 33 9 strategy Ljava/lang/Object;
12 18 10 cargs Lorg/springframework/beans/factory/config/ConstructorArgumentValues;
14 18 11 strategyDef Lorg/springframework/beans/factory/support/RootBeanDefinition;
21 24 10 strategyDef Lorg/springframework/beans/factory/support/RootBeanDefinition;
27 28 10 childElement Lorg/w3c/dom/Element;
30 31 10 pattern Ljava/lang/String;
RuntimeVisibleParameterAnnotations:
0:
1:
2:
org.springframework.lang.Nullable()
MethodParameters:
Name Flags
context
element
source
}
SourceFile: "ResourcesBeanDefinitionParser.java"