class org.springframework.http.server.reactive.ReactorServerHttpRequest extends org.springframework.http.server.reactive.AbstractServerHttpRequest
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: org.springframework.http.server.reactive.ReactorServerHttpRequest
super_class: org.springframework.http.server.reactive.AbstractServerHttpRequest
{
private final reactor.netty.http.server.HttpServerRequest request;
descriptor: Lreactor/netty/http/server/HttpServerRequest;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final org.springframework.core.io.buffer.NettyDataBufferFactory bufferFactory;
descriptor: Lorg/springframework/core/io/buffer/NettyDataBufferFactory;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
public void <init>(reactor.netty.http.server.HttpServerRequest, org.springframework.core.io.buffer.NettyDataBufferFactory);
descriptor: (Lreactor/netty/http/server/HttpServerRequest;Lorg/springframework/core/io/buffer/NettyDataBufferFactory;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
invokestatic org.springframework.http.server.reactive.ReactorServerHttpRequest.initUri:(Lreactor/netty/http/server/HttpServerRequest;)Ljava/net/URI;
ldc ""
aload 1
invokestatic org.springframework.http.server.reactive.ReactorServerHttpRequest.initHeaders:(Lreactor/netty/http/server/HttpServerRequest;)Lorg/springframework/http/HttpHeaders;
invokespecial org.springframework.http.server.reactive.AbstractServerHttpRequest.<init>:(Ljava/net/URI;Ljava/lang/String;Lorg/springframework/http/HttpHeaders;)V
1: aload 2
ldc "DataBufferFactory 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.ReactorServerHttpRequest.request:Lreactor/netty/http/server/HttpServerRequest;
3: aload 0
aload 2
putfield org.springframework.http.server.reactive.ReactorServerHttpRequest.bufferFactory:Lorg/springframework/core/io/buffer/NettyDataBufferFactory;
4: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/springframework/http/server/reactive/ReactorServerHttpRequest;
0 5 1 request Lreactor/netty/http/server/HttpServerRequest;
0 5 2 bufferFactory Lorg/springframework/core/io/buffer/NettyDataBufferFactory;
Exceptions:
throws java.net.URISyntaxException
MethodParameters:
Name Flags
request
bufferFactory
private static java.net.URI initUri(reactor.netty.http.server.HttpServerRequest);
descriptor: (Lreactor/netty/http/server/HttpServerRequest;)Ljava/net/URI;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=5, locals=1, args_size=1
start local 0 0: aload 0
ldc "HttpServerRequest must not be null"
invokestatic org.springframework.util.Assert.notNull:(Ljava/lang/Object;Ljava/lang/String;)V
1: new java.net.URI
dup
new java.lang.StringBuilder
dup
aload 0
invokestatic org.springframework.http.server.reactive.ReactorServerHttpRequest.resolveBaseUrl:(Lreactor/netty/http/server/HttpServerRequest;)Ljava/net/URI;
invokevirtual java.net.URI.toString:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokestatic org.springframework.http.server.reactive.ReactorServerHttpRequest.resolveRequestUri:(Lreactor/netty/http/server/HttpServerRequest;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.net.URI.<init>:(Ljava/lang/String;)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 request Lreactor/netty/http/server/HttpServerRequest;
Exceptions:
throws java.net.URISyntaxException
MethodParameters:
Name Flags
request
private static java.net.URI resolveBaseUrl(reactor.netty.http.server.HttpServerRequest);
descriptor: (Lreactor/netty/http/server/HttpServerRequest;)Ljava/net/URI;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=9, locals=4, args_size=1
start local 0 0: aload 0
invokestatic org.springframework.http.server.reactive.ReactorServerHttpRequest.getScheme:(Lreactor/netty/http/server/HttpServerRequest;)Ljava/lang/String;
astore 1
start local 1 1: aload 0
invokeinterface reactor.netty.http.server.HttpServerRequest.requestHeaders:()Lio/netty/handler/codec/http/HttpHeaders;
getstatic io.netty.handler.codec.http.HttpHeaderNames.HOST:Lio/netty/util/AsciiString;
invokevirtual io.netty.handler.codec.http.HttpHeaders.get:(Ljava/lang/CharSequence;)Ljava/lang/String;
astore 2
start local 2 2: aload 2
ifnull 15
3: aload 2
ldc "["
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 6
4: aload 2
bipush 58
aload 2
bipush 93
invokevirtual java.lang.String.indexOf:(I)I
invokevirtual java.lang.String.indexOf:(II)I
istore 3
start local 3 5: goto 7
end local 3 6: StackMap locals: java.lang.String java.lang.String
StackMap stack:
aload 2
bipush 58
invokevirtual java.lang.String.indexOf:(I)I
istore 3
start local 3 7: StackMap locals: int
StackMap stack:
iload 3
iconst_m1
if_icmpeq 14
8: new java.net.URI
dup
aload 1
aconst_null
aload 2
iconst_0
iload 3
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
9: aload 2
iload 3
iconst_1
iadd
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;)I
aconst_null
aconst_null
aconst_null
10: invokespecial java.net.URI.<init>:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
11: areturn
12: StackMap locals:
StackMap stack: java.lang.NumberFormatException
pop
13: new java.net.URISyntaxException
dup
aload 2
ldc "Unable to parse port"
iload 3
invokespecial java.net.URISyntaxException.<init>:(Ljava/lang/String;Ljava/lang/String;I)V
athrow
14: StackMap locals:
StackMap stack:
new java.net.URI
dup
aload 1
aload 2
aconst_null
aconst_null
invokespecial java.net.URI.<init>:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
areturn
end local 3 15: StackMap locals:
StackMap stack:
aload 0
invokeinterface reactor.netty.http.server.HttpServerRequest.hostAddress:()Ljava/net/InetSocketAddress;
astore 3
start local 3 16: new java.net.URI
dup
aload 1
aconst_null
aload 3
invokevirtual java.net.InetSocketAddress.getHostString:()Ljava/lang/String;
17: aload 3
invokevirtual java.net.InetSocketAddress.getPort:()I
aconst_null
aconst_null
aconst_null
18: invokespecial java.net.URI.<init>:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 19 0 request Lreactor/netty/http/server/HttpServerRequest;
1 19 1 scheme Ljava/lang/String;
2 19 2 header Ljava/lang/String;
5 6 3 portIndex I
7 15 3 portIndex I
16 19 3 localAddress Ljava/net/InetSocketAddress;
Exception table:
from to target type
8 11 12 Class java.lang.NumberFormatException
Exceptions:
throws java.net.URISyntaxException
MethodParameters:
Name Flags
request
private static java.lang.String getScheme(reactor.netty.http.server.HttpServerRequest);
descriptor: (Lreactor/netty/http/server/HttpServerRequest;)Ljava/lang/String;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokeinterface reactor.netty.http.server.HttpServerRequest.scheme:()Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 request Lreactor/netty/http/server/HttpServerRequest;
MethodParameters:
Name Flags
request
private static java.lang.String resolveRequestUri(reactor.netty.http.server.HttpServerRequest);
descriptor: (Lreactor/netty/http/server/HttpServerRequest;)Ljava/lang/String;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=5, args_size=1
start local 0 0: aload 0
invokeinterface reactor.netty.http.server.HttpServerRequest.uri:()Ljava/lang/String;
astore 1
start local 1 1: iconst_0
istore 2
start local 2 2: goto 17
3: StackMap locals: java.lang.String int
StackMap stack:
aload 1
iload 2
invokevirtual java.lang.String.charAt:(I)C
istore 3
start local 3 4: iload 3
bipush 47
if_icmpeq 18
iload 3
bipush 63
if_icmpeq 18
iload 3
bipush 35
if_icmpne 6
5: goto 18
6: StackMap locals: int
StackMap stack:
iload 3
bipush 58
if_icmpne 16
iload 2
iconst_2
iadd
aload 1
invokevirtual java.lang.String.length:()I
if_icmpge 16
7: aload 1
iload 2
iconst_1
iadd
invokevirtual java.lang.String.charAt:(I)C
bipush 47
if_icmpne 16
aload 1
iload 2
iconst_2
iadd
invokevirtual java.lang.String.charAt:(I)C
bipush 47
if_icmpne 16
8: iload 2
iconst_3
iadd
istore 4
start local 4 9: goto 14
10: StackMap locals: int
StackMap stack:
aload 1
iload 4
invokevirtual java.lang.String.charAt:(I)C
istore 3
11: iload 3
bipush 47
if_icmpeq 12
iload 3
bipush 63
if_icmpeq 12
iload 3
bipush 35
if_icmpne 13
12: StackMap locals:
StackMap stack:
aload 1
iload 4
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
areturn
13: StackMap locals:
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
14: iload 4
aload 1
invokevirtual java.lang.String.length:()I
if_icmplt 10
end local 4 15: ldc ""
areturn
end local 3 16: StackMap locals:
StackMap stack:
iinc 2 1
StackMap locals:
StackMap stack:
17: iload 2
aload 1
invokevirtual java.lang.String.length:()I
if_icmplt 3
end local 2 18: StackMap locals:
StackMap stack:
aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 19 0 request Lreactor/netty/http/server/HttpServerRequest;
1 19 1 uri Ljava/lang/String;
2 18 2 i I
4 16 3 c C
9 15 4 j I
MethodParameters:
Name Flags
request
private static org.springframework.http.HttpHeaders (reactor.netty.http.server.HttpServerRequest);
descriptor: (Lreactor/netty/http/server/HttpServerRequest;)Lorg/springframework/http/HttpHeaders;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=2, args_size=1
start local 0 0: new org.springframework.http.server.reactive.NettyHeadersAdapter
dup
aload 0
invokeinterface reactor.netty.http.server.HttpServerRequest.requestHeaders:()Lio/netty/handler/codec/http/HttpHeaders;
invokespecial org.springframework.http.server.reactive.NettyHeadersAdapter.<init>:(Lio/netty/handler/codec/http/HttpHeaders;)V
astore 1
start local 1 1: new org.springframework.http.HttpHeaders
dup
aload 1
invokespecial org.springframework.http.HttpHeaders.<init>:(Lorg/springframework/util/MultiValueMap;)V
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 channel Lreactor/netty/http/server/HttpServerRequest;
1 2 1 headersMap Lorg/springframework/http/server/reactive/NettyHeadersAdapter;
MethodParameters:
Name Flags
channel
public java.lang.String getMethodValue();
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.http.server.reactive.ReactorServerHttpRequest.request:Lreactor/netty/http/server/HttpServerRequest;
invokeinterface reactor.netty.http.server.HttpServerRequest.method:()Lio/netty/handler/codec/http/HttpMethod;
invokevirtual io.netty.handler.codec.http.HttpMethod.name:()Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/http/server/reactive/ReactorServerHttpRequest;
protected org.springframework.util.MultiValueMap<java.lang.String, org.springframework.http.HttpCookie> initCookies();
descriptor: ()Lorg/springframework/util/MultiValueMap;
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=7, args_size=1
start local 0 0: new org.springframework.util.LinkedMultiValueMap
dup
invokespecial org.springframework.util.LinkedMultiValueMap.<init>:()V
astore 1
start local 1 1: aload 0
getfield org.springframework.http.server.reactive.ReactorServerHttpRequest.request:Lreactor/netty/http/server/HttpServerRequest;
invokeinterface reactor.netty.http.server.HttpServerRequest.cookies:()Ljava/util/Map;
invokeinterface java.util.Map.keySet:()Ljava/util/Set;
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 3
goto 8
StackMap locals: org.springframework.http.server.reactive.ReactorServerHttpRequest org.springframework.util.MultiValueMap top java.util.Iterator
StackMap stack:
2: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.CharSequence
astore 2
start local 2 3: aload 0
getfield org.springframework.http.server.reactive.ReactorServerHttpRequest.request:Lreactor/netty/http/server/HttpServerRequest;
invokeinterface reactor.netty.http.server.HttpServerRequest.cookies:()Ljava/util/Map;
aload 2
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.util.Set
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 5
goto 7
StackMap locals: org.springframework.http.server.reactive.ReactorServerHttpRequest org.springframework.util.MultiValueMap java.lang.CharSequence java.util.Iterator top java.util.Iterator
StackMap stack:
4: aload 5
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast io.netty.handler.codec.http.cookie.Cookie
astore 4
start local 4 5: new org.springframework.http.HttpCookie
dup
aload 2
invokeinterface java.lang.CharSequence.toString:()Ljava/lang/String;
aload 4
invokeinterface io.netty.handler.codec.http.cookie.Cookie.value:()Ljava/lang/String;
invokespecial org.springframework.http.HttpCookie.<init>:(Ljava/lang/String;Ljava/lang/String;)V
astore 6
start local 6 6: aload 1
aload 2
invokeinterface java.lang.CharSequence.toString:()Ljava/lang/String;
aload 6
invokeinterface org.springframework.util.MultiValueMap.add:(Ljava/lang/Object;Ljava/lang/Object;)V
end local 6 end local 4 7: StackMap locals:
StackMap stack:
aload 5
invokeinterface java.util.Iterator.hasNext:()Z
ifne 4
end local 2 8: StackMap locals: org.springframework.http.server.reactive.ReactorServerHttpRequest org.springframework.util.MultiValueMap top java.util.Iterator
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
9: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lorg/springframework/http/server/reactive/ReactorServerHttpRequest;
1 10 1 cookies Lorg/springframework/util/MultiValueMap<Ljava/lang/String;Lorg/springframework/http/HttpCookie;>;
3 8 2 name Ljava/lang/CharSequence;
5 7 4 cookie Lio/netty/handler/codec/http/cookie/Cookie;
6 7 6 httpCookie Lorg/springframework/http/HttpCookie;
Signature: ()Lorg/springframework/util/MultiValueMap<Ljava/lang/String;Lorg/springframework/http/HttpCookie;>;
public java.net.InetSocketAddress getRemoteAddress();
descriptor: ()Ljava/net/InetSocketAddress;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.springframework.http.server.reactive.ReactorServerHttpRequest.request:Lreactor/netty/http/server/HttpServerRequest;
invokeinterface reactor.netty.http.server.HttpServerRequest.remoteAddress:()Ljava/net/InetSocketAddress;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/http/server/reactive/ReactorServerHttpRequest;
protected org.springframework.http.server.reactive.SslInfo initSslInfo();
descriptor: ()Lorg/springframework/http/server/reactive/SslInfo;
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=3, args_size=1
start local 0 0: aload 0
getfield org.springframework.http.server.reactive.ReactorServerHttpRequest.request:Lreactor/netty/http/server/HttpServerRequest;
checkcast reactor.netty.Connection
invokeinterface reactor.netty.Connection.channel:()Lio/netty/channel/Channel;
invokeinterface io.netty.channel.Channel.pipeline:()Lio/netty/channel/ChannelPipeline;
ldc Lio/netty/handler/ssl/SslHandler;
invokeinterface io.netty.channel.ChannelPipeline.get:(Ljava/lang/Class;)Lio/netty/channel/ChannelHandler;
checkcast io.netty.handler.ssl.SslHandler
astore 1
start local 1 1: aload 1
ifnull 4
2: aload 1
invokevirtual io.netty.handler.ssl.SslHandler.engine:()Ljavax/net/ssl/SSLEngine;
invokevirtual javax.net.ssl.SSLEngine.getSession:()Ljavax/net/ssl/SSLSession;
astore 2
start local 2 3: new org.springframework.http.server.reactive.DefaultSslInfo
dup
aload 2
invokespecial org.springframework.http.server.reactive.DefaultSslInfo.<init>:(Ljavax/net/ssl/SSLSession;)V
areturn
end local 2 4: StackMap locals: io.netty.handler.ssl.SslHandler
StackMap stack:
aconst_null
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/springframework/http/server/reactive/ReactorServerHttpRequest;
1 5 1 sslHandler Lio/netty/handler/ssl/SslHandler;
3 4 2 session Ljavax/net/ssl/SSLSession;
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
public reactor.core.publisher.Flux<org.springframework.core.io.buffer.DataBuffer> getBody();
descriptor: ()Lreactor/core/publisher/Flux;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
getfield org.springframework.http.server.reactive.ReactorServerHttpRequest.request:Lreactor/netty/http/server/HttpServerRequest;
invokeinterface reactor.netty.http.server.HttpServerRequest.receive:()Lreactor/netty/ByteBufFlux;
invokevirtual reactor.netty.ByteBufFlux.retain:()Lreactor/netty/ByteBufFlux;
aload 0
getfield org.springframework.http.server.reactive.ReactorServerHttpRequest.bufferFactory:Lorg/springframework/core/io/buffer/NettyDataBufferFactory;
dup
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
pop
invokedynamic apply(Lorg/springframework/core/io/buffer/NettyDataBufferFactory;)Ljava/util/function/Function;
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;)Ljava/lang/Object;
org/springframework/core/io/buffer/NettyDataBufferFactory.wrap(Lio/netty/buffer/ByteBuf;)Lorg/springframework/core/io/buffer/NettyDataBuffer; (5)
(Lio/netty/buffer/ByteBuf;)Lorg/springframework/core/io/buffer/DataBuffer;
invokevirtual reactor.netty.ByteBufFlux.map:(Ljava/util/function/Function;)Lreactor/core/publisher/Flux;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/http/server/reactive/ReactorServerHttpRequest;
Signature: ()Lreactor/core/publisher/Flux<Lorg/springframework/core/io/buffer/DataBuffer;>;
public <T> T getNativeRequest();
descriptor: ()Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.springframework.http.server.reactive.ReactorServerHttpRequest.request:Lreactor/netty/http/server/HttpServerRequest;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/http/server/reactive/ReactorServerHttpRequest;
Signature: <T:Ljava/lang/Object;>()TT;
protected java.lang.String initId();
descriptor: ()Ljava/lang/String;
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.springframework.http.server.reactive.ReactorServerHttpRequest.request:Lreactor/netty/http/server/HttpServerRequest;
instanceof reactor.netty.Connection
ifeq 2
1: aload 0
getfield org.springframework.http.server.reactive.ReactorServerHttpRequest.request:Lreactor/netty/http/server/HttpServerRequest;
checkcast reactor.netty.Connection
invokeinterface reactor.netty.Connection.channel:()Lio/netty/channel/Channel;
invokeinterface io.netty.channel.Channel.id:()Lio/netty/channel/ChannelId;
invokeinterface io.netty.channel.ChannelId.asShortText:()Ljava/lang/String;
goto 3
StackMap locals:
StackMap stack:
2: aconst_null
3: StackMap locals:
StackMap stack: java.lang.String
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/springframework/http/server/reactive/ReactorServerHttpRequest;
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
}
SourceFile: "ReactorServerHttpRequest.java"
InnerClasses:
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles