public class org.springframework.http.server.reactive.UndertowHttpHandlerAdapter implements io.undertow.server.HttpHandler
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.springframework.http.server.reactive.UndertowHttpHandlerAdapter
super_class: java.lang.Object
{
private static final org.apache.commons.logging.Log logger;
descriptor: Lorg/apache/commons/logging/Log;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private final org.springframework.http.server.reactive.HttpHandler httpHandler;
descriptor: Lorg/springframework/http/server/reactive/HttpHandler;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private org.springframework.core.io.buffer.DataBufferFactory bufferFactory;
descriptor: Lorg/springframework/core/io/buffer/DataBufferFactory;
flags: (0x0002) ACC_PRIVATE
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: ldc Lorg/springframework/http/server/reactive/UndertowHttpHandlerAdapter;
invokestatic org.springframework.http.HttpLogging.forLogName:(Ljava/lang/Class;)Lorg/apache/commons/logging/Log;
putstatic org.springframework.http.server.reactive.UndertowHttpHandlerAdapter.logger:Lorg/apache/commons/logging/Log;
return
LocalVariableTable:
Start End Slot Name Signature
public void <init>(org.springframework.http.server.reactive.HttpHandler);
descriptor: (Lorg/springframework/http/server/reactive/HttpHandler;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
new org.springframework.core.io.buffer.DefaultDataBufferFactory
dup
iconst_0
invokespecial org.springframework.core.io.buffer.DefaultDataBufferFactory.<init>:(Z)V
putfield org.springframework.http.server.reactive.UndertowHttpHandlerAdapter.bufferFactory:Lorg/springframework/core/io/buffer/DataBufferFactory;
2: aload 1
ldc "HttpHandler must not be null"
invokestatic org.springframework.util.Assert.notNull:(Ljava/lang/Object;Ljava/lang/String;)V
3: aload 0
aload 1
putfield org.springframework.http.server.reactive.UndertowHttpHandlerAdapter.httpHandler:Lorg/springframework/http/server/reactive/HttpHandler;
4: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/springframework/http/server/reactive/UndertowHttpHandlerAdapter;
0 5 1 httpHandler Lorg/springframework/http/server/reactive/HttpHandler;
MethodParameters:
Name Flags
httpHandler
public void setDataBufferFactory(org.springframework.core.io.buffer.DataBufferFactory);
descriptor: (Lorg/springframework/core/io/buffer/DataBufferFactory;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
ldc "DataBufferFactory must not be null"
invokestatic org.springframework.util.Assert.notNull:(Ljava/lang/Object;Ljava/lang/String;)V
1: aload 0
aload 1
putfield org.springframework.http.server.reactive.UndertowHttpHandlerAdapter.bufferFactory:Lorg/springframework/core/io/buffer/DataBufferFactory;
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/springframework/http/server/reactive/UndertowHttpHandlerAdapter;
0 3 1 bufferFactory Lorg/springframework/core/io/buffer/DataBufferFactory;
MethodParameters:
Name Flags
bufferFactory
public org.springframework.core.io.buffer.DataBufferFactory getDataBufferFactory();
descriptor: ()Lorg/springframework/core/io/buffer/DataBufferFactory;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.springframework.http.server.reactive.UndertowHttpHandlerAdapter.bufferFactory:Lorg/springframework/core/io/buffer/DataBufferFactory;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/http/server/reactive/UndertowHttpHandlerAdapter;
public void handleRequest(io.undertow.server.HttpServerExchange);
descriptor: (Lio/undertow/server/HttpServerExchange;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=5, args_size=2
start local 0 start local 1 0: aconst_null
astore 2
start local 2 1: new org.springframework.http.server.reactive.UndertowServerHttpRequest
dup
aload 1
aload 0
invokevirtual org.springframework.http.server.reactive.UndertowHttpHandlerAdapter.getDataBufferFactory:()Lorg/springframework/core/io/buffer/DataBufferFactory;
invokespecial org.springframework.http.server.reactive.UndertowServerHttpRequest.<init>:(Lio/undertow/server/HttpServerExchange;Lorg/springframework/core/io/buffer/DataBufferFactory;)V
astore 2
2: goto 8
3: StackMap locals: org.springframework.http.server.reactive.UndertowHttpHandlerAdapter io.undertow.server.HttpServerExchange org.springframework.http.server.reactive.UndertowServerHttpRequest
StackMap stack: java.net.URISyntaxException
astore 3
start local 3 4: getstatic org.springframework.http.server.reactive.UndertowHttpHandlerAdapter.logger:Lorg/apache/commons/logging/Log;
invokeinterface org.apache.commons.logging.Log.isWarnEnabled:()Z
ifeq 6
5: getstatic org.springframework.http.server.reactive.UndertowHttpHandlerAdapter.logger:Lorg/apache/commons/logging/Log;
new java.lang.StringBuilder
dup
ldc "Failed to get request URI: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 3
invokevirtual java.net.URISyntaxException.getMessage:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokeinterface org.apache.commons.logging.Log.debug:(Ljava/lang/Object;)V
6: StackMap locals: java.net.URISyntaxException
StackMap stack:
aload 1
sipush 400
invokevirtual io.undertow.server.HttpServerExchange.setStatusCode:(I)Lio/undertow/server/HttpServerExchange;
pop
7: return
end local 3 8: StackMap locals:
StackMap stack:
new org.springframework.http.server.reactive.UndertowServerHttpResponse
dup
aload 1
aload 0
invokevirtual org.springframework.http.server.reactive.UndertowHttpHandlerAdapter.getDataBufferFactory:()Lorg/springframework/core/io/buffer/DataBufferFactory;
aload 2
invokespecial org.springframework.http.server.reactive.UndertowServerHttpResponse.<init>:(Lio/undertow/server/HttpServerExchange;Lorg/springframework/core/io/buffer/DataBufferFactory;Lorg/springframework/http/server/reactive/UndertowServerHttpRequest;)V
astore 3
start local 3 9: aload 2
invokevirtual org.springframework.http.server.reactive.UndertowServerHttpRequest.getMethod:()Lorg/springframework/http/HttpMethod;
getstatic org.springframework.http.HttpMethod.HEAD:Lorg/springframework/http/HttpMethod;
if_acmpne 11
10: new org.springframework.http.server.reactive.HttpHeadResponseDecorator
dup
aload 3
invokespecial org.springframework.http.server.reactive.HttpHeadResponseDecorator.<init>:(Lorg/springframework/http/server/reactive/ServerHttpResponse;)V
astore 3
11: StackMap locals: org.springframework.http.server.reactive.ServerHttpResponse
StackMap stack:
new org.springframework.http.server.reactive.UndertowHttpHandlerAdapter$HandlerResultSubscriber
dup
aload 0
aload 1
aload 2
invokespecial org.springframework.http.server.reactive.UndertowHttpHandlerAdapter$HandlerResultSubscriber.<init>:(Lorg/springframework/http/server/reactive/UndertowHttpHandlerAdapter;Lio/undertow/server/HttpServerExchange;Lorg/springframework/http/server/reactive/UndertowServerHttpRequest;)V
astore 4
start local 4 12: aload 0
getfield org.springframework.http.server.reactive.UndertowHttpHandlerAdapter.httpHandler:Lorg/springframework/http/server/reactive/HttpHandler;
aload 2
aload 3
invokeinterface org.springframework.http.server.reactive.HttpHandler.handle:(Lorg/springframework/http/server/reactive/ServerHttpRequest;Lorg/springframework/http/server/reactive/ServerHttpResponse;)Lreactor/core/publisher/Mono;
aload 4
invokevirtual reactor.core.publisher.Mono.subscribe:(Lorg/reactivestreams/Subscriber;)V
13: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lorg/springframework/http/server/reactive/UndertowHttpHandlerAdapter;
0 14 1 exchange Lio/undertow/server/HttpServerExchange;
1 14 2 request Lorg/springframework/http/server/reactive/UndertowServerHttpRequest;
4 8 3 ex Ljava/net/URISyntaxException;
9 14 3 response Lorg/springframework/http/server/reactive/ServerHttpResponse;
12 14 4 resultSubscriber Lorg/springframework/http/server/reactive/UndertowHttpHandlerAdapter$HandlerResultSubscriber;
Exception table:
from to target type
1 2 3 Class java.net.URISyntaxException
MethodParameters:
Name Flags
exchange
}
SourceFile: "UndertowHttpHandlerAdapter.java"
NestMembers:
org.springframework.http.server.reactive.UndertowHttpHandlerAdapter$HandlerResultSubscriber
InnerClasses:
private HandlerResultSubscriber = org.springframework.http.server.reactive.UndertowHttpHandlerAdapter$HandlerResultSubscriber of org.springframework.http.server.reactive.UndertowHttpHandlerAdapter