class org.springframework.web.servlet.function.ResourceHandlerFunction implements org.springframework.web.servlet.function.HandlerFunction<org.springframework.web.servlet.function.ServerResponse>
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: org.springframework.web.servlet.function.ResourceHandlerFunction
super_class: java.lang.Object
{
private static final java.util.Set<org.springframework.http.HttpMethod> SUPPORTED_METHODS;
descriptor: Ljava/util/Set;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
Signature: Ljava/util/Set<Lorg/springframework/http/HttpMethod;>;
private final org.springframework.core.io.Resource resource;
descriptor: Lorg/springframework/core/io/Resource;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private static volatile int[] $SWITCH_TABLE$org$springframework$http$HttpMethod;
descriptor: [I
flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=3, locals=0, args_size=0
0: getstatic org.springframework.http.HttpMethod.GET:Lorg/springframework/http/HttpMethod;
getstatic org.springframework.http.HttpMethod.HEAD:Lorg/springframework/http/HttpMethod;
getstatic org.springframework.http.HttpMethod.OPTIONS:Lorg/springframework/http/HttpMethod;
invokestatic java.util.EnumSet.of:(Ljava/lang/Enum;Ljava/lang/Enum;Ljava/lang/Enum;)Ljava/util/EnumSet;
1: putstatic org.springframework.web.servlet.function.ResourceHandlerFunction.SUPPORTED_METHODS:Ljava/util/Set;
2: return
LocalVariableTable:
Start End Slot Name Signature
public void <init>(org.springframework.core.io.Resource);
descriptor: (Lorg/springframework/core/io/Resource;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 1
putfield org.springframework.web.servlet.function.ResourceHandlerFunction.resource:Lorg/springframework/core/io/Resource;
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/springframework/web/servlet/function/ResourceHandlerFunction;
0 3 1 resource Lorg/springframework/core/io/Resource;
MethodParameters:
Name Flags
resource
public org.springframework.web.servlet.function.ServerResponse handle(org.springframework.web.servlet.function.ServerRequest);
descriptor: (Lorg/springframework/web/servlet/function/ServerRequest;)Lorg/springframework/web/servlet/function/ServerResponse;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=2
start local 0 start local 1 0: aload 1
invokeinterface org.springframework.web.servlet.function.ServerRequest.method:()Lorg/springframework/http/HttpMethod;
astore 2
start local 2 1: aload 2
ifnull 9
2: invokestatic org.springframework.web.servlet.function.ResourceHandlerFunction.$SWITCH_TABLE$org$springframework$http$HttpMethod:()[I
aload 2
invokevirtual org.springframework.http.HttpMethod.ordinal:()I
iaload
tableswitch { // 1 - 7
1: 3
2: 4
3: 9
4: 9
5: 9
6: 9
7: 6
default: 9
}
3: StackMap locals: org.springframework.http.HttpMethod
StackMap stack:
aload 0
getfield org.springframework.web.servlet.function.ResourceHandlerFunction.resource:Lorg/springframework/core/io/Resource;
invokestatic org.springframework.web.servlet.function.EntityResponse.fromObject:(Ljava/lang/Object;)Lorg/springframework/web/servlet/function/EntityResponse$Builder;
invokeinterface org.springframework.web.servlet.function.EntityResponse$Builder.build:()Lorg/springframework/web/servlet/function/EntityResponse;
areturn
4: StackMap locals:
StackMap stack:
new org.springframework.web.servlet.function.ResourceHandlerFunction$HeadMethodResource
dup
aload 0
getfield org.springframework.web.servlet.function.ResourceHandlerFunction.resource:Lorg/springframework/core/io/Resource;
invokespecial org.springframework.web.servlet.function.ResourceHandlerFunction$HeadMethodResource.<init>:(Lorg/springframework/core/io/Resource;)V
astore 3
start local 3 5: aload 3
invokestatic org.springframework.web.servlet.function.EntityResponse.fromObject:(Ljava/lang/Object;)Lorg/springframework/web/servlet/function/EntityResponse$Builder;
invokeinterface org.springframework.web.servlet.function.EntityResponse$Builder.build:()Lorg/springframework/web/servlet/function/EntityResponse;
areturn
end local 3 6: StackMap locals:
StackMap stack:
invokestatic org.springframework.web.servlet.function.ServerResponse.ok:()Lorg/springframework/web/servlet/function/ServerResponse$BodyBuilder;
7: getstatic org.springframework.web.servlet.function.ResourceHandlerFunction.SUPPORTED_METHODS:Ljava/util/Set;
invokeinterface org.springframework.web.servlet.function.ServerResponse$BodyBuilder.allow:(Ljava/util/Set;)Lorg/springframework/web/servlet/function/ServerResponse$HeadersBuilder;
checkcast org.springframework.web.servlet.function.ServerResponse$BodyBuilder
invokeinterface org.springframework.web.servlet.function.ServerResponse$BodyBuilder.build:()Lorg/springframework/web/servlet/function/ServerResponse;
8: areturn
9: StackMap locals:
StackMap stack:
getstatic org.springframework.http.HttpStatus.METHOD_NOT_ALLOWED:Lorg/springframework/http/HttpStatus;
invokestatic org.springframework.web.servlet.function.ServerResponse.status:(Lorg/springframework/http/HttpStatus;)Lorg/springframework/web/servlet/function/ServerResponse$BodyBuilder;
10: getstatic org.springframework.web.servlet.function.ResourceHandlerFunction.SUPPORTED_METHODS:Ljava/util/Set;
invokeinterface org.springframework.web.servlet.function.ServerResponse$BodyBuilder.allow:(Ljava/util/Set;)Lorg/springframework/web/servlet/function/ServerResponse$HeadersBuilder;
checkcast org.springframework.web.servlet.function.ServerResponse$BodyBuilder
invokeinterface org.springframework.web.servlet.function.ServerResponse$BodyBuilder.build:()Lorg/springframework/web/servlet/function/ServerResponse;
11: areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lorg/springframework/web/servlet/function/ResourceHandlerFunction;
0 12 1 request Lorg/springframework/web/servlet/function/ServerRequest;
1 12 2 method Lorg/springframework/http/HttpMethod;
5 6 3 headResource Lorg/springframework/core/io/Resource;
MethodParameters:
Name Flags
request
static int[] $SWITCH_TABLE$org$springframework$http$HttpMethod();
descriptor: ()[I
flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=1, args_size=0
0: getstatic org.springframework.web.servlet.function.ResourceHandlerFunction.$SWITCH_TABLE$org$springframework$http$HttpMethod:[I
dup
ifnull 1
areturn
StackMap locals:
StackMap stack: int[]
1: pop
invokestatic org.springframework.http.HttpMethod.values:()[Lorg/springframework/http/HttpMethod;
arraylength
newarray 10
astore 0
2: aload 0
getstatic org.springframework.http.HttpMethod.DELETE:Lorg/springframework/http/HttpMethod;
invokevirtual org.springframework.http.HttpMethod.ordinal:()I
bipush 6
iastore
3: goto 5
StackMap locals: int[]
StackMap stack: java.lang.NoSuchFieldError
4: pop
StackMap locals:
StackMap stack:
5: aload 0
getstatic org.springframework.http.HttpMethod.GET:Lorg/springframework/http/HttpMethod;
invokevirtual org.springframework.http.HttpMethod.ordinal:()I
iconst_1
iastore
6: goto 8
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
7: pop
StackMap locals:
StackMap stack:
8: aload 0
getstatic org.springframework.http.HttpMethod.HEAD:Lorg/springframework/http/HttpMethod;
invokevirtual org.springframework.http.HttpMethod.ordinal:()I
iconst_2
iastore
9: goto 11
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
10: pop
StackMap locals:
StackMap stack:
11: aload 0
getstatic org.springframework.http.HttpMethod.OPTIONS:Lorg/springframework/http/HttpMethod;
invokevirtual org.springframework.http.HttpMethod.ordinal:()I
bipush 7
iastore
12: goto 14
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
13: pop
StackMap locals:
StackMap stack:
14: aload 0
getstatic org.springframework.http.HttpMethod.PATCH:Lorg/springframework/http/HttpMethod;
invokevirtual org.springframework.http.HttpMethod.ordinal:()I
iconst_5
iastore
15: goto 17
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
16: pop
StackMap locals:
StackMap stack:
17: aload 0
getstatic org.springframework.http.HttpMethod.POST:Lorg/springframework/http/HttpMethod;
invokevirtual org.springframework.http.HttpMethod.ordinal:()I
iconst_3
iastore
18: goto 20
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
19: pop
StackMap locals:
StackMap stack:
20: aload 0
getstatic org.springframework.http.HttpMethod.PUT:Lorg/springframework/http/HttpMethod;
invokevirtual org.springframework.http.HttpMethod.ordinal:()I
iconst_4
iastore
21: goto 23
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
22: pop
StackMap locals:
StackMap stack:
23: aload 0
getstatic org.springframework.http.HttpMethod.TRACE:Lorg/springframework/http/HttpMethod;
invokevirtual org.springframework.http.HttpMethod.ordinal:()I
bipush 8
iastore
24: goto 26
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
25: pop
StackMap locals:
StackMap stack:
26: aload 0
dup
putstatic org.springframework.web.servlet.function.ResourceHandlerFunction.$SWITCH_TABLE$org$springframework$http$HttpMethod:[I
areturn
LocalVariableTable:
Start End Slot Name Signature
Exception table:
from to target type
2 3 4 Class java.lang.NoSuchFieldError
5 6 7 Class java.lang.NoSuchFieldError
8 9 10 Class java.lang.NoSuchFieldError
11 12 13 Class java.lang.NoSuchFieldError
14 15 16 Class java.lang.NoSuchFieldError
17 18 19 Class java.lang.NoSuchFieldError
20 21 22 Class java.lang.NoSuchFieldError
23 24 25 Class java.lang.NoSuchFieldError
}
Signature: Ljava/lang/Object;Lorg/springframework/web/servlet/function/HandlerFunction<Lorg/springframework/web/servlet/function/ServerResponse;>;
SourceFile: "ResourceHandlerFunction.java"
NestMembers:
org.springframework.web.servlet.function.ResourceHandlerFunction$HeadMethodResource
InnerClasses:
public abstract Builder = org.springframework.web.servlet.function.EntityResponse$Builder of org.springframework.web.servlet.function.EntityResponse
private HeadMethodResource = org.springframework.web.servlet.function.ResourceHandlerFunction$HeadMethodResource of org.springframework.web.servlet.function.ResourceHandlerFunction
public abstract BodyBuilder = org.springframework.web.servlet.function.ServerResponse$BodyBuilder of org.springframework.web.servlet.function.ServerResponse
public abstract HeadersBuilder = org.springframework.web.servlet.function.ServerResponse$HeadersBuilder of org.springframework.web.servlet.function.ServerResponse