class org.springframework.web.servlet.config.ViewControllerBeanDefinitionParser 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.ViewControllerBeanDefinitionParser
super_class: java.lang.Object
{
private static final java.lang.String HANDLER_MAPPING_BEAN_NAME;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "org.springframework.web.servlet.config.viewControllerHandlerMapping"
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/ViewControllerBeanDefinitionParser;
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=6, locals=10, 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.ViewControllerBeanDefinitionParser.registerHandlerMapping:(Lorg/springframework/beans/factory/xml/ParserContext;Ljava/lang/Object;)Lorg/springframework/beans/factory/config/BeanDefinition;
astore 4
start local 4 2: aload 2
aload 3
invokestatic org.springframework.web.servlet.config.MvcNamespaceUtils.registerDefaultComponents:(Lorg/springframework/beans/factory/xml/ParserContext;Ljava/lang/Object;)V
3: new org.springframework.beans.factory.support.RootBeanDefinition
dup
ldc Lorg/springframework/web/servlet/mvc/ParameterizableViewController;
invokespecial org.springframework.beans.factory.support.RootBeanDefinition.<init>:(Ljava/lang/Class;)V
astore 5
start local 5 4: aload 5
aload 3
invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.setSource:(Ljava/lang/Object;)V
5: aconst_null
astore 6
start local 6 6: aload 1
ldc "status-code"
invokeinterface org.w3c.dom.Element.hasAttribute:(Ljava/lang/String;)Z
ifeq 9
7: aload 1
ldc "status-code"
invokeinterface org.w3c.dom.Element.getAttribute:(Ljava/lang/String;)Ljava/lang/String;
invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;)I
istore 7
start local 7 8: iload 7
invokestatic org.springframework.http.HttpStatus.valueOf:(I)Lorg/springframework/http/HttpStatus;
astore 6
end local 7 9: StackMap locals: org.springframework.web.servlet.config.ViewControllerBeanDefinitionParser org.w3c.dom.Element org.springframework.beans.factory.xml.ParserContext java.lang.Object org.springframework.beans.factory.config.BeanDefinition org.springframework.beans.factory.support.RootBeanDefinition org.springframework.http.HttpStatus
StackMap stack:
aload 1
invokeinterface org.w3c.dom.Element.getLocalName:()Ljava/lang/String;
astore 7
start local 7 10: aload 7
dup
astore 8
invokevirtual java.lang.String.hashCode:()I
lookupswitch { // 3
-1611991977: 11
-971002925: 12
244444100: 13
default: 24
}
StackMap locals: java.lang.String java.lang.String
StackMap stack:
11: aload 8
ldc "status-controller"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 21
goto 24
StackMap locals:
StackMap stack:
12: aload 8
ldc "redirect-view-controller"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 19
goto 24
StackMap locals:
StackMap stack:
13: aload 8
ldc "view-controller"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 14
goto 24
14: StackMap locals:
StackMap stack:
aload 1
ldc "view-name"
invokeinterface org.w3c.dom.Element.hasAttribute:(Ljava/lang/String;)Z
ifeq 16
15: aload 5
invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.getPropertyValues:()Lorg/springframework/beans/MutablePropertyValues;
ldc "viewName"
aload 1
ldc "view-name"
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
16: StackMap locals:
StackMap stack:
aload 6
ifnull 25
17: aload 5
invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.getPropertyValues:()Lorg/springframework/beans/MutablePropertyValues;
ldc "statusCode"
aload 6
invokevirtual org.springframework.beans.MutablePropertyValues.add:(Ljava/lang/String;Ljava/lang/Object;)Lorg/springframework/beans/MutablePropertyValues;
pop
18: goto 25
19: StackMap locals:
StackMap stack:
aload 5
invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.getPropertyValues:()Lorg/springframework/beans/MutablePropertyValues;
ldc "view"
aload 0
aload 1
aload 6
aload 3
invokevirtual org.springframework.web.servlet.config.ViewControllerBeanDefinitionParser.getRedirectView:(Lorg/w3c/dom/Element;Lorg/springframework/http/HttpStatus;Ljava/lang/Object;)Lorg/springframework/beans/factory/support/RootBeanDefinition;
invokevirtual org.springframework.beans.MutablePropertyValues.add:(Ljava/lang/String;Ljava/lang/Object;)Lorg/springframework/beans/MutablePropertyValues;
pop
20: goto 25
21: StackMap locals:
StackMap stack:
aload 5
invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.getPropertyValues:()Lorg/springframework/beans/MutablePropertyValues;
ldc "statusCode"
aload 6
invokevirtual org.springframework.beans.MutablePropertyValues.add:(Ljava/lang/String;Ljava/lang/Object;)Lorg/springframework/beans/MutablePropertyValues;
pop
22: aload 5
invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.getPropertyValues:()Lorg/springframework/beans/MutablePropertyValues;
ldc "statusOnly"
iconst_1
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
invokevirtual org.springframework.beans.MutablePropertyValues.add:(Ljava/lang/String;Ljava/lang/Object;)Lorg/springframework/beans/MutablePropertyValues;
pop
23: goto 25
24: StackMap locals:
StackMap stack:
new java.lang.IllegalStateException
dup
new java.lang.StringBuilder
dup
ldc "Unexpected tag name: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 7
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
25: StackMap locals:
StackMap stack:
aload 4
invokeinterface org.springframework.beans.factory.config.BeanDefinition.getPropertyValues:()Lorg/springframework/beans/MutablePropertyValues;
ldc "urlMap"
invokevirtual org.springframework.beans.MutablePropertyValues.get:(Ljava/lang/String;)Ljava/lang/Object;
checkcast java.util.Map
astore 9
start local 9 26: aload 9
ifnonnull 29
27: new org.springframework.beans.factory.support.ManagedMap
dup
invokespecial org.springframework.beans.factory.support.ManagedMap.<init>:()V
astore 9
28: aload 4
invokeinterface org.springframework.beans.factory.config.BeanDefinition.getPropertyValues:()Lorg/springframework/beans/MutablePropertyValues;
ldc "urlMap"
aload 9
invokevirtual org.springframework.beans.MutablePropertyValues.add:(Ljava/lang/String;Ljava/lang/Object;)Lorg/springframework/beans/MutablePropertyValues;
pop
29: StackMap locals: org.springframework.web.servlet.config.ViewControllerBeanDefinitionParser org.w3c.dom.Element org.springframework.beans.factory.xml.ParserContext java.lang.Object org.springframework.beans.factory.config.BeanDefinition org.springframework.beans.factory.support.RootBeanDefinition org.springframework.http.HttpStatus java.lang.String top java.util.Map
StackMap stack:
aload 9
aload 1
ldc "path"
invokeinterface org.w3c.dom.Element.getAttribute:(Ljava/lang/String;)Ljava/lang/String;
aload 5
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
30: aconst_null
areturn
end local 9 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 31 0 this Lorg/springframework/web/servlet/config/ViewControllerBeanDefinitionParser;
0 31 1 element Lorg/w3c/dom/Element;
0 31 2 parserContext Lorg/springframework/beans/factory/xml/ParserContext;
1 31 3 source Ljava/lang/Object;
2 31 4 hm Lorg/springframework/beans/factory/config/BeanDefinition;
4 31 5 controller Lorg/springframework/beans/factory/support/RootBeanDefinition;
6 31 6 statusCode Lorg/springframework/http/HttpStatus;
8 9 7 statusValue I
10 31 7 name Ljava/lang/String;
26 31 9 urlMap Ljava/util/Map<Ljava/lang/String;Lorg/springframework/beans/factory/config/BeanDefinition;>;
MethodParameters:
Name Flags
element
parserContext
private org.springframework.beans.factory.config.BeanDefinition registerHandlerMapping(org.springframework.beans.factory.xml.ParserContext, java.lang.Object);
descriptor: (Lorg/springframework/beans/factory/xml/ParserContext;Ljava/lang/Object;)Lorg/springframework/beans/factory/config/BeanDefinition;
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=5, 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 "org.springframework.web.servlet.config.viewControllerHandlerMapping"
invokeinterface org.springframework.beans.factory.support.BeanDefinitionRegistry.containsBeanDefinition:(Ljava/lang/String;)Z
ifeq 2
1: aload 1
invokevirtual org.springframework.beans.factory.xml.ParserContext.getRegistry:()Lorg/springframework/beans/factory/support/BeanDefinitionRegistry;
ldc "org.springframework.web.servlet.config.viewControllerHandlerMapping"
invokeinterface org.springframework.beans.factory.support.BeanDefinitionRegistry.getBeanDefinition:(Ljava/lang/String;)Lorg/springframework/beans/factory/config/BeanDefinition;
areturn
2: StackMap locals:
StackMap stack:
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 3
start local 3 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 "org.springframework.web.servlet.config.viewControllerHandlerMapping"
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 "org.springframework.web.servlet.config.viewControllerHandlerMapping"
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: aload 3
aload 2
invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.setSource:(Ljava/lang/Object;)V
7: aload 3
invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.getPropertyValues:()Lorg/springframework/beans/MutablePropertyValues;
ldc "order"
ldc "1"
invokevirtual org.springframework.beans.MutablePropertyValues.add:(Ljava/lang/String;Ljava/lang/Object;)Lorg/springframework/beans/MutablePropertyValues;
pop
8: aload 3
invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.getPropertyValues:()Lorg/springframework/beans/MutablePropertyValues;
ldc "pathMatcher"
aconst_null
aload 1
aload 2
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;
invokevirtual org.springframework.beans.MutablePropertyValues.add:(Ljava/lang/String;Ljava/lang/Object;)Lorg/springframework/beans/MutablePropertyValues;
pop
9: aload 3
invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.getPropertyValues:()Lorg/springframework/beans/MutablePropertyValues;
ldc "urlPathHelper"
aconst_null
aload 1
aload 2
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;
invokevirtual org.springframework.beans.MutablePropertyValues.add:(Ljava/lang/String;Ljava/lang/Object;)Lorg/springframework/beans/MutablePropertyValues;
pop
10: aconst_null
aload 1
aload 2
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 4
start local 4 11: aload 3
invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.getPropertyValues:()Lorg/springframework/beans/MutablePropertyValues;
ldc "corsConfigurations"
aload 4
invokevirtual org.springframework.beans.MutablePropertyValues.add:(Ljava/lang/String;Ljava/lang/Object;)Lorg/springframework/beans/MutablePropertyValues;
pop
12: aload 3
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lorg/springframework/web/servlet/config/ViewControllerBeanDefinitionParser;
0 13 1 context Lorg/springframework/beans/factory/xml/ParserContext;
0 13 2 source Ljava/lang/Object;
3 13 3 beanDef Lorg/springframework/beans/factory/support/RootBeanDefinition;
11 13 4 corsConfigurationsRef Lorg/springframework/beans/factory/config/RuntimeBeanReference;
RuntimeVisibleParameterAnnotations:
0:
1:
org.springframework.lang.Nullable()
MethodParameters:
Name Flags
context
source
private org.springframework.beans.factory.support.RootBeanDefinition getRedirectView(org.w3c.dom.Element, org.springframework.http.HttpStatus, java.lang.Object);
descriptor: (Lorg/w3c/dom/Element;Lorg/springframework/http/HttpStatus;Ljava/lang/Object;)Lorg/springframework/beans/factory/support/RootBeanDefinition;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: new org.springframework.beans.factory.support.RootBeanDefinition
dup
ldc Lorg/springframework/web/servlet/view/RedirectView;
invokespecial org.springframework.beans.factory.support.RootBeanDefinition.<init>:(Ljava/lang/Class;)V
astore 4
start local 4 1: aload 4
aload 3
invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.setSource:(Ljava/lang/Object;)V
2: aload 4
invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.getConstructorArgumentValues:()Lorg/springframework/beans/factory/config/ConstructorArgumentValues;
iconst_0
aload 1
ldc "redirect-url"
invokeinterface org.w3c.dom.Element.getAttribute:(Ljava/lang/String;)Ljava/lang/String;
invokevirtual org.springframework.beans.factory.config.ConstructorArgumentValues.addIndexedArgumentValue:(ILjava/lang/Object;)V
3: aload 2
ifnull 5
4: aload 4
invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.getPropertyValues:()Lorg/springframework/beans/MutablePropertyValues;
ldc "statusCode"
aload 2
invokevirtual org.springframework.beans.MutablePropertyValues.add:(Ljava/lang/String;Ljava/lang/Object;)Lorg/springframework/beans/MutablePropertyValues;
pop
5: StackMap locals: org.springframework.beans.factory.support.RootBeanDefinition
StackMap stack:
aload 1
ldc "context-relative"
invokeinterface org.w3c.dom.Element.hasAttribute:(Ljava/lang/String;)Z
ifeq 8
6: aload 4
invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.getPropertyValues:()Lorg/springframework/beans/MutablePropertyValues;
ldc "contextRelative"
aload 1
ldc "context-relative"
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
7: goto 9
8: StackMap locals:
StackMap stack:
aload 4
invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.getPropertyValues:()Lorg/springframework/beans/MutablePropertyValues;
ldc "contextRelative"
iconst_1
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
invokevirtual org.springframework.beans.MutablePropertyValues.add:(Ljava/lang/String;Ljava/lang/Object;)Lorg/springframework/beans/MutablePropertyValues;
pop
9: StackMap locals:
StackMap stack:
aload 1
ldc "keep-query-params"
invokeinterface org.w3c.dom.Element.hasAttribute:(Ljava/lang/String;)Z
ifeq 11
10: aload 4
invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.getPropertyValues:()Lorg/springframework/beans/MutablePropertyValues;
ldc "propagateQueryParams"
aload 1
ldc "keep-query-params"
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
11: StackMap locals:
StackMap stack:
aload 4
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lorg/springframework/web/servlet/config/ViewControllerBeanDefinitionParser;
0 12 1 element Lorg/w3c/dom/Element;
0 12 2 status Lorg/springframework/http/HttpStatus;
0 12 3 source Ljava/lang/Object;
1 12 4 redirectView Lorg/springframework/beans/factory/support/RootBeanDefinition;
RuntimeVisibleParameterAnnotations:
0:
1:
org.springframework.lang.Nullable()
2:
org.springframework.lang.Nullable()
MethodParameters:
Name Flags
element
status
source
}
SourceFile: "ViewControllerBeanDefinitionParser.java"