public class org.springframework.http.server.reactive.ReactorHttpHandlerAdapter implements java.util.function.BiFunction<reactor.netty.http.server.HttpServerRequest, reactor.netty.http.server.HttpServerResponse, reactor.core.publisher.Mono<java.lang.Void>>
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.springframework.http.server.reactive.ReactorHttpHandlerAdapter
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
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: ldc Lorg/springframework/http/server/reactive/ReactorHttpHandlerAdapter;
invokestatic org.springframework.http.HttpLogging.forLogName:(Ljava/lang/Class;)Lorg/apache/commons/logging/Log;
putstatic org.springframework.http.server.reactive.ReactorHttpHandlerAdapter.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=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 1
ldc "HttpHandler must not be null"
invokestatic org.springframework.util.Assert.notNull:(Ljava/lang/Object;Ljava/lang/String;)V
2: aload 0
aload 1
putfield org.springframework.http.server.reactive.ReactorHttpHandlerAdapter.httpHandler:Lorg/springframework/http/server/reactive/HttpHandler;
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/springframework/http/server/reactive/ReactorHttpHandlerAdapter;
0 4 1 httpHandler Lorg/springframework/http/server/reactive/HttpHandler;
MethodParameters:
Name Flags
httpHandler
public reactor.core.publisher.Mono<java.lang.Void> apply(reactor.netty.http.server.HttpServerRequest, reactor.netty.http.server.HttpServerResponse);
descriptor: (Lreactor/netty/http/server/HttpServerRequest;Lreactor/netty/http/server/HttpServerResponse;)Lreactor/core/publisher/Mono;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=6, args_size=3
start local 0 start local 1 start local 2 0: new org.springframework.core.io.buffer.NettyDataBufferFactory
dup
aload 2
invokeinterface reactor.netty.http.server.HttpServerResponse.alloc:()Lio/netty/buffer/ByteBufAllocator;
invokespecial org.springframework.core.io.buffer.NettyDataBufferFactory.<init>:(Lio/netty/buffer/ByteBufAllocator;)V
astore 3
start local 3 1: new org.springframework.http.server.reactive.ReactorServerHttpRequest
dup
aload 1
aload 3
invokespecial org.springframework.http.server.reactive.ReactorServerHttpRequest.<init>:(Lreactor/netty/http/server/HttpServerRequest;Lorg/springframework/core/io/buffer/NettyDataBufferFactory;)V
astore 4
start local 4 2: new org.springframework.http.server.reactive.ReactorServerHttpResponse
dup
aload 2
aload 3
invokespecial org.springframework.http.server.reactive.ReactorServerHttpResponse.<init>:(Lreactor/netty/http/server/HttpServerResponse;Lorg/springframework/core/io/buffer/DataBufferFactory;)V
astore 5
start local 5 3: aload 4
invokevirtual org.springframework.http.server.reactive.ReactorServerHttpRequest.getMethod:()Lorg/springframework/http/HttpMethod;
getstatic org.springframework.http.HttpMethod.HEAD:Lorg/springframework/http/HttpMethod;
if_acmpne 5
4: new org.springframework.http.server.reactive.HttpHeadResponseDecorator
dup
aload 5
invokespecial org.springframework.http.server.reactive.HttpHeadResponseDecorator.<init>:(Lorg/springframework/http/server/reactive/ServerHttpResponse;)V
astore 5
5: StackMap locals: org.springframework.core.io.buffer.NettyDataBufferFactory org.springframework.http.server.reactive.ReactorServerHttpRequest org.springframework.http.server.reactive.ServerHttpResponse
StackMap stack:
aload 0
getfield org.springframework.http.server.reactive.ReactorHttpHandlerAdapter.httpHandler:Lorg/springframework/http/server/reactive/HttpHandler;
aload 4
aload 5
invokeinterface org.springframework.http.server.reactive.HttpHandler.handle:(Lorg/springframework/http/server/reactive/ServerHttpRequest;Lorg/springframework/http/server/reactive/ServerHttpResponse;)Lreactor/core/publisher/Mono;
6: aload 4
invokedynamic accept(Lorg/springframework/http/server/reactive/ReactorServerHttpRequest;)Ljava/util/function/Consumer;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)V
org/springframework/http/server/reactive/ReactorHttpHandlerAdapter.lambda$0(Lorg/springframework/http/server/reactive/ReactorServerHttpRequest;Ljava/lang/Throwable;)V (6)
(Ljava/lang/Throwable;)V
invokevirtual reactor.core.publisher.Mono.doOnError:(Ljava/util/function/Consumer;)Lreactor/core/publisher/Mono;
7: aload 4
invokedynamic accept(Lorg/springframework/http/server/reactive/ReactorServerHttpRequest;)Ljava/util/function/Consumer;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)V
org/springframework/http/server/reactive/ReactorHttpHandlerAdapter.lambda$1(Lorg/springframework/http/server/reactive/ReactorServerHttpRequest;Ljava/lang/Void;)V (6)
(Ljava/lang/Void;)V
invokevirtual reactor.core.publisher.Mono.doOnSuccess:(Ljava/util/function/Consumer;)Lreactor/core/publisher/Mono;
8: areturn
end local 5 end local 4 9: StackMap locals: org.springframework.http.server.reactive.ReactorHttpHandlerAdapter reactor.netty.http.server.HttpServerRequest reactor.netty.http.server.HttpServerResponse org.springframework.core.io.buffer.NettyDataBufferFactory
StackMap stack: java.net.URISyntaxException
astore 4
start local 4 10: getstatic org.springframework.http.server.reactive.ReactorHttpHandlerAdapter.logger:Lorg/apache/commons/logging/Log;
invokeinterface org.apache.commons.logging.Log.isDebugEnabled:()Z
ifeq 12
11: getstatic org.springframework.http.server.reactive.ReactorHttpHandlerAdapter.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 4
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
12: StackMap locals: java.net.URISyntaxException
StackMap stack:
aload 2
getstatic io.netty.handler.codec.http.HttpResponseStatus.BAD_REQUEST:Lio/netty/handler/codec/http/HttpResponseStatus;
invokeinterface reactor.netty.http.server.HttpServerResponse.status:(Lio/netty/handler/codec/http/HttpResponseStatus;)Lreactor/netty/http/server/HttpServerResponse;
pop
13: invokestatic reactor.core.publisher.Mono.empty:()Lreactor/core/publisher/Mono;
areturn
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/ReactorHttpHandlerAdapter;
0 14 1 reactorRequest Lreactor/netty/http/server/HttpServerRequest;
0 14 2 reactorResponse Lreactor/netty/http/server/HttpServerResponse;
1 14 3 bufferFactory Lorg/springframework/core/io/buffer/NettyDataBufferFactory;
2 9 4 request Lorg/springframework/http/server/reactive/ReactorServerHttpRequest;
3 9 5 response Lorg/springframework/http/server/reactive/ServerHttpResponse;
10 14 4 ex Ljava/net/URISyntaxException;
Exception table:
from to target type
1 8 9 Class java.net.URISyntaxException
Signature: (Lreactor/netty/http/server/HttpServerRequest;Lreactor/netty/http/server/HttpServerResponse;)Lreactor/core/publisher/Mono<Ljava/lang/Void;>;
MethodParameters:
Name Flags
reactorRequest
reactorResponse
public java.lang.Object apply(java.lang.Object, java.lang.Object);
descriptor: (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=3, locals=3, args_size=3
0: aload 0
aload 1
checkcast reactor.netty.http.server.HttpServerRequest
aload 2
checkcast reactor.netty.http.server.HttpServerResponse
invokevirtual org.springframework.http.server.reactive.ReactorHttpHandlerAdapter.apply:(Lreactor/netty/http/server/HttpServerRequest;Lreactor/netty/http/server/HttpServerResponse;)Lreactor/core/publisher/Mono;
areturn
LocalVariableTable:
Start End Slot Name Signature
private static void lambda$0(org.springframework.http.server.reactive.ReactorServerHttpRequest, java.lang.Throwable);
descriptor: (Lorg/springframework/http/server/reactive/ReactorServerHttpRequest;Ljava/lang/Throwable;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=4, locals=2, args_size=2
start local 1 0: getstatic org.springframework.http.server.reactive.ReactorHttpHandlerAdapter.logger:Lorg/apache/commons/logging/Log;
new java.lang.StringBuilder
dup
aload 0
invokevirtual org.springframework.http.server.reactive.ReactorServerHttpRequest.getLogPrefix:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "Failed to complete: "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 1
invokevirtual java.lang.Throwable.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.trace:(Ljava/lang/Object;)V
return
end local 1 LocalVariableTable:
Start End Slot Name Signature
0 1 1 ex Ljava/lang/Throwable;
private static void lambda$1(org.springframework.http.server.reactive.ReactorServerHttpRequest, java.lang.Void);
descriptor: (Lorg/springframework/http/server/reactive/ReactorServerHttpRequest;Ljava/lang/Void;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=4, locals=2, args_size=2
start local 1 0: getstatic org.springframework.http.server.reactive.ReactorHttpHandlerAdapter.logger:Lorg/apache/commons/logging/Log;
new java.lang.StringBuilder
dup
aload 0
invokevirtual org.springframework.http.server.reactive.ReactorServerHttpRequest.getLogPrefix:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "Handling completed"
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.trace:(Ljava/lang/Object;)V
return
end local 1 LocalVariableTable:
Start End Slot Name Signature
0 1 1 aVoid Ljava/lang/Void;
}
Signature: Ljava/lang/Object;Ljava/util/function/BiFunction<Lreactor/netty/http/server/HttpServerRequest;Lreactor/netty/http/server/HttpServerResponse;Lreactor/core/publisher/Mono<Ljava/lang/Void;>;>;
SourceFile: "ReactorHttpHandlerAdapter.java"
InnerClasses:
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles