class org.springframework.web.method.annotation.ModelFactory$ModelMethod
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: org.springframework.web.method.annotation.ModelFactory$ModelMethod
super_class: java.lang.Object
{
private final org.springframework.web.method.support.InvocableHandlerMethod handlerMethod;
descriptor: Lorg/springframework/web/method/support/InvocableHandlerMethod;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.util.Set<java.lang.String> dependencies;
descriptor: Ljava/util/Set;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/Set<Ljava/lang/String;>;
public void <init>(org.springframework.web.method.support.InvocableHandlerMethod);
descriptor: (Lorg/springframework/web/method/support/InvocableHandlerMethod;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=6, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
putfield org.springframework.web.method.annotation.ModelFactory$ModelMethod.dependencies:Ljava/util/Set;
2: aload 0
aload 1
putfield org.springframework.web.method.annotation.ModelFactory$ModelMethod.handlerMethod:Lorg/springframework/web/method/support/InvocableHandlerMethod;
3: aload 1
invokevirtual org.springframework.web.method.support.InvocableHandlerMethod.getMethodParameters:()[Lorg/springframework/core/MethodParameter;
dup
astore 5
arraylength
istore 4
iconst_0
istore 3
goto 8
StackMap locals: org.springframework.web.method.annotation.ModelFactory$ModelMethod org.springframework.web.method.support.InvocableHandlerMethod top int int org.springframework.core.MethodParameter[]
StackMap stack:
4: aload 5
iload 3
aaload
astore 2
start local 2 5: aload 2
ldc Lorg/springframework/web/bind/annotation/ModelAttribute;
invokevirtual org.springframework.core.MethodParameter.hasParameterAnnotation:(Ljava/lang/Class;)Z
ifeq 7
6: aload 0
getfield org.springframework.web.method.annotation.ModelFactory$ModelMethod.dependencies:Ljava/util/Set;
aload 2
invokestatic org.springframework.web.method.annotation.ModelFactory.getNameForParameter:(Lorg/springframework/core/MethodParameter;)Ljava/lang/String;
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
end local 2 7: StackMap locals:
StackMap stack:
iinc 3 1
StackMap locals:
StackMap stack:
8: iload 3
iload 4
if_icmplt 4
9: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lorg/springframework/web/method/annotation/ModelFactory$ModelMethod;
0 10 1 handlerMethod Lorg/springframework/web/method/support/InvocableHandlerMethod;
5 7 2 parameter Lorg/springframework/core/MethodParameter;
MethodParameters:
Name Flags
handlerMethod
public org.springframework.web.method.support.InvocableHandlerMethod getHandlerMethod();
descriptor: ()Lorg/springframework/web/method/support/InvocableHandlerMethod;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.springframework.web.method.annotation.ModelFactory$ModelMethod.handlerMethod:Lorg/springframework/web/method/support/InvocableHandlerMethod;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/web/method/annotation/ModelFactory$ModelMethod;
public boolean checkDependencies(org.springframework.web.method.support.ModelAndViewContainer);
descriptor: (Lorg/springframework/web/method/support/ModelAndViewContainer;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=4, args_size=2
start local 0 start local 1 0: aload 0
getfield org.springframework.web.method.annotation.ModelFactory$ModelMethod.dependencies:Ljava/util/Set;
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 3
goto 4
StackMap locals: org.springframework.web.method.annotation.ModelFactory$ModelMethod org.springframework.web.method.support.ModelAndViewContainer top java.util.Iterator
StackMap stack:
1: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.String
astore 2
start local 2 2: aload 1
aload 2
invokevirtual org.springframework.web.method.support.ModelAndViewContainer.containsAttribute:(Ljava/lang/String;)Z
ifne 4
3: iconst_0
ireturn
end local 2 4: StackMap locals:
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifne 1
5: iconst_1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/springframework/web/method/annotation/ModelFactory$ModelMethod;
0 6 1 mavContainer Lorg/springframework/web/method/support/ModelAndViewContainer;
2 4 2 name Ljava/lang/String;
MethodParameters:
Name Flags
mavContainer
public java.util.List<java.lang.String> getUnresolvedDependencies(org.springframework.web.method.support.ModelAndViewContainer);
descriptor: (Lorg/springframework/web/method/support/ModelAndViewContainer;)Ljava/util/List;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=5, args_size=2
start local 0 start local 1 0: new java.util.ArrayList
dup
aload 0
getfield org.springframework.web.method.annotation.ModelFactory$ModelMethod.dependencies:Ljava/util/Set;
invokeinterface java.util.Set.size:()I
invokespecial java.util.ArrayList.<init>:(I)V
astore 2
start local 2 1: aload 0
getfield org.springframework.web.method.annotation.ModelFactory$ModelMethod.dependencies:Ljava/util/Set;
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 4
goto 5
StackMap locals: org.springframework.web.method.annotation.ModelFactory$ModelMethod org.springframework.web.method.support.ModelAndViewContainer java.util.List top java.util.Iterator
StackMap stack:
2: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.String
astore 3
start local 3 3: aload 1
aload 3
invokevirtual org.springframework.web.method.support.ModelAndViewContainer.containsAttribute:(Ljava/lang/String;)Z
ifne 5
4: aload 2
aload 3
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
end local 3 5: StackMap locals:
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
6: aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/springframework/web/method/annotation/ModelFactory$ModelMethod;
0 7 1 mavContainer Lorg/springframework/web/method/support/ModelAndViewContainer;
1 7 2 result Ljava/util/List<Ljava/lang/String;>;
3 5 3 name Ljava/lang/String;
Signature: (Lorg/springframework/web/method/support/ModelAndViewContainer;)Ljava/util/List<Ljava/lang/String;>;
MethodParameters:
Name Flags
mavContainer
public java.lang.String toString();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.springframework.web.method.annotation.ModelFactory$ModelMethod.handlerMethod:Lorg/springframework/web/method/support/InvocableHandlerMethod;
invokevirtual org.springframework.web.method.support.InvocableHandlerMethod.getMethod:()Ljava/lang/reflect/Method;
invokevirtual java.lang.reflect.Method.toGenericString:()Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/web/method/annotation/ModelFactory$ModelMethod;
}
SourceFile: "ModelFactory.java"
NestHost: org.springframework.web.method.annotation.ModelFactory
InnerClasses:
private ModelMethod = org.springframework.web.method.annotation.ModelFactory$ModelMethod of org.springframework.web.method.annotation.ModelFactory