public class io.vertx.core.http.impl.Http1xServerRequestHandler implements io.vertx.core.Handler<io.vertx.core.http.HttpServerRequest>
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: io.vertx.core.http.impl.Http1xServerRequestHandler
super_class: java.lang.Object
{
private final io.vertx.core.http.impl.HttpServerConnectionHandler handlers;
descriptor: Lio/vertx/core/http/impl/HttpServerConnectionHandler;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
public void <init>(io.vertx.core.http.impl.HttpServerConnectionHandler);
descriptor: (Lio/vertx/core/http/impl/HttpServerConnectionHandler;)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 io.vertx.core.http.impl.Http1xServerRequestHandler.handlers:Lio/vertx/core/http/impl/HttpServerConnectionHandler;
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lio/vertx/core/http/impl/Http1xServerRequestHandler;
0 3 1 handlers Lio/vertx/core/http/impl/HttpServerConnectionHandler;
MethodParameters:
Name Flags
handlers
public void handle(io.vertx.core.http.HttpServerRequest);
descriptor: (Lio/vertx/core/http/HttpServerRequest;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=2
start local 0 start local 1 0: aload 0
getfield io.vertx.core.http.impl.Http1xServerRequestHandler.handlers:Lio/vertx/core/http/impl/HttpServerConnectionHandler;
getfield io.vertx.core.http.impl.HttpServerConnectionHandler.wsHandler:Lio/vertx/core/Handler;
astore 2
start local 2 1: aload 0
getfield io.vertx.core.http.impl.Http1xServerRequestHandler.handlers:Lio/vertx/core/http/impl/HttpServerConnectionHandler;
getfield io.vertx.core.http.impl.HttpServerConnectionHandler.requestHandler:Lio/vertx/core/Handler;
astore 3
start local 3 2: aload 2
ifnull 11
3: aload 1
invokeinterface io.vertx.core.http.HttpServerRequest.headers:()Lio/vertx/core/MultiMap;
getstatic io.vertx.core.http.HttpHeaders.UPGRADE:Ljava/lang/CharSequence;
getstatic io.vertx.core.http.HttpHeaders.WEBSOCKET:Ljava/lang/CharSequence;
iconst_1
invokeinterface io.vertx.core.MultiMap.contains:(Ljava/lang/CharSequence;Ljava/lang/CharSequence;Z)Z
ifeq 6
aload 0
getfield io.vertx.core.http.impl.Http1xServerRequestHandler.handlers:Lio/vertx/core/http/impl/HttpServerConnectionHandler;
getfield io.vertx.core.http.impl.HttpServerConnectionHandler.server:Lio/vertx/core/http/impl/HttpServerImpl;
invokevirtual io.vertx.core.http.impl.HttpServerImpl.wsAccept:()Z
ifeq 6
4: aload 1
checkcast io.vertx.core.http.impl.Http1xServerRequest
invokevirtual io.vertx.core.http.impl.Http1xServerRequest.webSocket:()Lio/vertx/core/Future;
aload 2
invokedynamic handle(Lio/vertx/core/Handler;)Lio/vertx/core/Handler;
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
io/vertx/core/http/impl/Http1xServerRequestHandler.lambda$0(Lio/vertx/core/Handler;Lio/vertx/core/AsyncResult;)V (6)
(Lio/vertx/core/AsyncResult;)V
invokeinterface io.vertx.core.Future.onComplete:(Lio/vertx/core/Handler;)Lio/vertx/core/Future;
pop
5: goto 16
6: StackMap locals: io.vertx.core.Handler io.vertx.core.Handler
StackMap stack:
aload 3
ifnull 9
7: aload 3
aload 1
invokeinterface io.vertx.core.Handler.handle:(Ljava/lang/Object;)V
8: goto 16
9: StackMap locals:
StackMap stack:
aload 1
invokeinterface io.vertx.core.http.HttpServerRequest.response:()Lio/vertx/core/http/HttpServerResponse;
sipush 400
invokeinterface io.vertx.core.http.HttpServerResponse.setStatusCode:(I)Lio/vertx/core/http/HttpServerResponse;
invokeinterface io.vertx.core.http.HttpServerResponse.end:()Lio/vertx/core/Future;
pop
10: goto 16
StackMap locals:
StackMap stack:
11: aload 1
invokeinterface io.vertx.core.http.HttpServerRequest.version:()Lio/vertx/core/http/HttpVersion;
ifnonnull 15
12: aload 1
invokeinterface io.vertx.core.http.HttpServerRequest.response:()Lio/vertx/core/http/HttpServerResponse;
sipush 501
invokeinterface io.vertx.core.http.HttpServerResponse.setStatusCode:(I)Lio/vertx/core/http/HttpServerResponse;
invokeinterface io.vertx.core.http.HttpServerResponse.end:()Lio/vertx/core/Future;
pop
13: aload 1
invokeinterface io.vertx.core.http.HttpServerRequest.response:()Lio/vertx/core/http/HttpServerResponse;
invokeinterface io.vertx.core.http.HttpServerResponse.close:()V
14: goto 16
15: StackMap locals:
StackMap stack:
aload 3
aload 1
invokeinterface io.vertx.core.Handler.handle:(Ljava/lang/Object;)V
16: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Lio/vertx/core/http/impl/Http1xServerRequestHandler;
0 17 1 req Lio/vertx/core/http/HttpServerRequest;
1 17 2 wsHandler Lio/vertx/core/Handler<Lio/vertx/core/http/ServerWebSocket;>;
2 17 3 reqHandler Lio/vertx/core/Handler<Lio/vertx/core/http/HttpServerRequest;>;
MethodParameters:
Name Flags
req
public void handle(java.lang.Object);
descriptor: (Ljava/lang/Object;)V
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: aload 0
aload 1
checkcast io.vertx.core.http.HttpServerRequest
invokevirtual io.vertx.core.http.impl.Http1xServerRequestHandler.handle:(Lio/vertx/core/http/HttpServerRequest;)V
return
LocalVariableTable:
Start End Slot Name Signature
private static void lambda$0(io.vertx.core.Handler, io.vertx.core.AsyncResult);
descriptor: (Lio/vertx/core/Handler;Lio/vertx/core/AsyncResult;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=3, args_size=2
start local 1 0: aload 1
invokeinterface io.vertx.core.AsyncResult.succeeded:()Z
ifeq 4
1: aload 1
invokeinterface io.vertx.core.AsyncResult.result:()Ljava/lang/Object;
checkcast io.vertx.core.http.impl.ServerWebSocketImpl
astore 2
start local 2 2: aload 0
aload 2
invokeinterface io.vertx.core.Handler.handle:(Ljava/lang/Object;)V
3: aload 2
bipush 101
invokevirtual io.vertx.core.http.impl.ServerWebSocketImpl.tryHandshake:(I)Ljava/lang/Boolean;
pop
end local 2 4: StackMap locals:
StackMap stack:
return
end local 1 LocalVariableTable:
Start End Slot Name Signature
0 5 1 ar Lio/vertx/core/AsyncResult<Lio/vertx/core/http/ServerWebSocket;>;
2 4 2 ws Lio/vertx/core/http/impl/ServerWebSocketImpl;
}
Signature: Ljava/lang/Object;Lio/vertx/core/Handler<Lio/vertx/core/http/HttpServerRequest;>;
SourceFile: "Http1xServerRequestHandler.java"
InnerClasses:
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles