public class io.vertx.core.http.impl.Http1xServerConnection extends io.vertx.core.http.impl.Http1xConnectionBase<io.vertx.core.http.impl.ServerWebSocketImpl> implements io.vertx.core.http.impl.HttpServerConnection
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: io.vertx.core.http.impl.Http1xServerConnection
super_class: io.vertx.core.http.impl.Http1xConnectionBase
{
private static final io.vertx.core.impl.logging.Logger log;
descriptor: Lio/vertx/core/impl/logging/Logger;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private final java.lang.String serverOrigin;
descriptor: Ljava/lang/String;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.util.function.Supplier<io.vertx.core.impl.ContextInternal> streamContextSupplier;
descriptor: Ljava/util/function/Supplier;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/function/Supplier<Lio/vertx/core/impl/ContextInternal;>;
private final io.vertx.core.net.impl.SSLHelper sslHelper;
descriptor: Lio/vertx/core/net/impl/SSLHelper;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final io.vertx.core.tracing.TracingPolicy tracingPolicy;
descriptor: Lio/vertx/core/tracing/TracingPolicy;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private boolean requestFailed;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private io.vertx.core.http.impl.Http1xServerRequest requestInProgress;
descriptor: Lio/vertx/core/http/impl/Http1xServerRequest;
flags: (0x0002) ACC_PRIVATE
private io.vertx.core.http.impl.Http1xServerRequest responseInProgress;
descriptor: Lio/vertx/core/http/impl/Http1xServerRequest;
flags: (0x0002) ACC_PRIVATE
private boolean channelPaused;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private io.vertx.core.Handler<io.vertx.core.http.HttpServerRequest> requestHandler;
descriptor: Lio/vertx/core/Handler;
flags: (0x0002) ACC_PRIVATE
Signature: Lio/vertx/core/Handler<Lio/vertx/core/http/HttpServerRequest;>;
final io.vertx.core.spi.metrics.HttpServerMetrics metrics;
descriptor: Lio/vertx/core/spi/metrics/HttpServerMetrics;
flags: (0x0010) ACC_FINAL
final boolean handle100ContinueAutomatically;
descriptor: Z
flags: (0x0010) ACC_FINAL
final io.vertx.core.http.HttpServerOptions options;
descriptor: Lio/vertx/core/http/HttpServerOptions;
flags: (0x0010) ACC_FINAL
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: ldc Lio/vertx/core/http/impl/Http1xServerConnection;
invokestatic io.vertx.core.impl.logging.LoggerFactory.getLogger:(Ljava/lang/Class;)Lio/vertx/core/impl/logging/Logger;
putstatic io.vertx.core.http.impl.Http1xServerConnection.log:Lio/vertx/core/impl/logging/Logger;
return
LocalVariableTable:
Start End Slot Name Signature
public void <init>(java.util.function.Supplier<io.vertx.core.impl.ContextInternal>, io.vertx.core.net.impl.SSLHelper, io.vertx.core.http.HttpServerOptions, io.netty.channel.ChannelHandlerContext, io.vertx.core.impl.ContextInternal, java.lang.String, io.vertx.core.spi.metrics.HttpServerMetrics);
descriptor: (Ljava/util/function/Supplier;Lio/vertx/core/net/impl/SSLHelper;Lio/vertx/core/http/HttpServerOptions;Lio/netty/channel/ChannelHandlerContext;Lio/vertx/core/impl/ContextInternal;Ljava/lang/String;Lio/vertx/core/spi/metrics/HttpServerMetrics;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=8, args_size=8
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 start local 7 0: aload 0
aload 5
aload 4
invokespecial io.vertx.core.http.impl.Http1xConnectionBase.<init>:(Lio/vertx/core/impl/ContextInternal;Lio/netty/channel/ChannelHandlerContext;)V
1: aload 0
aload 6
putfield io.vertx.core.http.impl.Http1xServerConnection.serverOrigin:Ljava/lang/String;
2: aload 0
aload 1
putfield io.vertx.core.http.impl.Http1xServerConnection.streamContextSupplier:Ljava/util/function/Supplier;
3: aload 0
aload 3
putfield io.vertx.core.http.impl.Http1xServerConnection.options:Lio/vertx/core/http/HttpServerOptions;
4: aload 0
aload 2
putfield io.vertx.core.http.impl.Http1xServerConnection.sslHelper:Lio/vertx/core/net/impl/SSLHelper;
5: aload 0
aload 7
putfield io.vertx.core.http.impl.Http1xServerConnection.metrics:Lio/vertx/core/spi/metrics/HttpServerMetrics;
6: aload 0
aload 3
invokevirtual io.vertx.core.http.HttpServerOptions.isHandle100ContinueAutomatically:()Z
putfield io.vertx.core.http.impl.Http1xServerConnection.handle100ContinueAutomatically:Z
7: aload 0
aload 3
invokevirtual io.vertx.core.http.HttpServerOptions.getTracingPolicy:()Lio/vertx/core/tracing/TracingPolicy;
putfield io.vertx.core.http.impl.Http1xServerConnection.tracingPolicy:Lio/vertx/core/tracing/TracingPolicy;
8: return
end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lio/vertx/core/http/impl/Http1xServerConnection;
0 9 1 streamContextSupplier Ljava/util/function/Supplier<Lio/vertx/core/impl/ContextInternal;>;
0 9 2 sslHelper Lio/vertx/core/net/impl/SSLHelper;
0 9 3 options Lio/vertx/core/http/HttpServerOptions;
0 9 4 chctx Lio/netty/channel/ChannelHandlerContext;
0 9 5 context Lio/vertx/core/impl/ContextInternal;
0 9 6 serverOrigin Ljava/lang/String;
0 9 7 metrics Lio/vertx/core/spi/metrics/HttpServerMetrics;
Signature: (Ljava/util/function/Supplier<Lio/vertx/core/impl/ContextInternal;>;Lio/vertx/core/net/impl/SSLHelper;Lio/vertx/core/http/HttpServerOptions;Lio/netty/channel/ChannelHandlerContext;Lio/vertx/core/impl/ContextInternal;Ljava/lang/String;Lio/vertx/core/spi/metrics/HttpServerMetrics;)V
MethodParameters:
Name Flags
streamContextSupplier
sslHelper
options
chctx
context
serverOrigin
metrics
public io.vertx.core.http.impl.HttpServerConnection handler(io.vertx.core.Handler<io.vertx.core.http.HttpServerRequest>);
descriptor: (Lio/vertx/core/Handler;)Lio/vertx/core/http/impl/HttpServerConnection;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield io.vertx.core.http.impl.Http1xServerConnection.requestHandler:Lio/vertx/core/Handler;
1: aload 0
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/vertx/core/http/impl/Http1xServerConnection;
0 2 1 handler Lio/vertx/core/Handler<Lio/vertx/core/http/HttpServerRequest;>;
Signature: (Lio/vertx/core/Handler<Lio/vertx/core/http/HttpServerRequest;>;)Lio/vertx/core/http/impl/HttpServerConnection;
MethodParameters:
Name Flags
handler
public io.vertx.core.spi.metrics.HttpServerMetrics metrics();
descriptor: ()Lio/vertx/core/spi/metrics/HttpServerMetrics;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield io.vertx.core.http.impl.Http1xServerConnection.metrics:Lio/vertx/core/spi/metrics/HttpServerMetrics;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/vertx/core/http/impl/Http1xServerConnection;
public void handleMessage(java.lang.Object);
descriptor: (Ljava/lang/Object;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=5, args_size=2
start local 0 start local 1 0: aload 1
instanceof io.netty.handler.codec.http.HttpRequest
ifeq 17
1: aload 1
checkcast io.netty.handler.codec.http.DefaultHttpRequest
astore 2
start local 2 2: aload 2
invokevirtual io.netty.handler.codec.http.DefaultHttpRequest.decoderResult:()Lio/netty/handler/codec/DecoderResult;
getstatic io.netty.handler.codec.DecoderResult.SUCCESS:Lio/netty/handler/codec/DecoderResult;
if_acmpeq 5
3: aload 0
aload 2
invokevirtual io.vertx.core.http.impl.Http1xServerConnection.handleError:(Lio/netty/handler/codec/http/HttpObject;)V
4: return
5: StackMap locals: io.netty.handler.codec.http.DefaultHttpRequest
StackMap stack:
aload 0
getfield io.vertx.core.http.impl.Http1xServerConnection.streamContextSupplier:Ljava/util/function/Supplier;
invokeinterface java.util.function.Supplier.get:()Ljava/lang/Object;
checkcast io.vertx.core.impl.ContextInternal
astore 3
start local 3 6: new io.vertx.core.http.impl.Http1xServerRequest
dup
aload 0
aload 2
aload 3
invokespecial io.vertx.core.http.impl.Http1xServerRequest.<init>:(Lio/vertx/core/http/impl/Http1xServerConnection;Lio/netty/handler/codec/http/HttpRequest;Lio/vertx/core/impl/ContextInternal;)V
astore 4
start local 4 7: aload 0
aload 4
putfield io.vertx.core.http.impl.Http1xServerConnection.requestInProgress:Lio/vertx/core/http/impl/Http1xServerRequest;
8: aload 0
getfield io.vertx.core.http.impl.Http1xServerConnection.responseInProgress:Lio/vertx/core/http/impl/Http1xServerRequest;
ifnull 11
9: aload 0
aload 4
invokevirtual io.vertx.core.http.impl.Http1xServerConnection.enqueueRequest:(Lio/vertx/core/http/impl/Http1xServerRequest;)V
10: return
11: StackMap locals: io.vertx.core.impl.ContextInternal io.vertx.core.http.impl.Http1xServerRequest
StackMap stack:
aload 0
aload 0
getfield io.vertx.core.http.impl.Http1xServerConnection.requestInProgress:Lio/vertx/core/http/impl/Http1xServerRequest;
putfield io.vertx.core.http.impl.Http1xServerConnection.responseInProgress:Lio/vertx/core/http/impl/Http1xServerRequest;
12: getstatic io.vertx.core.spi.metrics.Metrics.METRICS_ENABLED:Z
ifeq 14
13: aload 0
aload 4
invokevirtual io.vertx.core.http.impl.Http1xServerConnection.reportRequestBegin:(Lio/vertx/core/http/impl/Http1xServerRequest;)V
14: StackMap locals:
StackMap stack:
aload 4
invokevirtual io.vertx.core.http.impl.Http1xServerRequest.handleBegin:()V
15: aload 4
getfield io.vertx.core.http.impl.Http1xServerRequest.context:Lio/vertx/core/impl/ContextInternal;
aload 4
aload 0
getfield io.vertx.core.http.impl.Http1xServerConnection.requestHandler:Lio/vertx/core/Handler;
invokeinterface io.vertx.core.impl.ContextInternal.emit:(Ljava/lang/Object;Lio/vertx/core/Handler;)V
end local 4 end local 3 end local 2 16: goto 21
StackMap locals:
StackMap stack:
17: aload 1
getstatic io.netty.handler.codec.http.LastHttpContent.EMPTY_LAST_CONTENT:Lio/netty/handler/codec/http/LastHttpContent;
if_acmpne 20
18: aload 0
invokevirtual io.vertx.core.http.impl.Http1xServerConnection.onEnd:()V
19: goto 21
20: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual io.vertx.core.http.impl.Http1xServerConnection.handleOther:(Ljava/lang/Object;)V
21: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 22 0 this Lio/vertx/core/http/impl/Http1xServerConnection;
0 22 1 msg Ljava/lang/Object;
2 16 2 request Lio/netty/handler/codec/http/DefaultHttpRequest;
6 16 3 requestCtx Lio/vertx/core/impl/ContextInternal;
7 16 4 req Lio/vertx/core/http/impl/Http1xServerRequest;
MethodParameters:
Name Flags
msg
private void enqueueRequest(io.vertx.core.http.impl.Http1xServerRequest);
descriptor: (Lio/vertx/core/http/impl/Http1xServerRequest;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield io.vertx.core.http.impl.Http1xServerConnection.responseInProgress:Lio/vertx/core/http/impl/Http1xServerRequest;
aload 1
invokevirtual io.vertx.core.http.impl.Http1xServerRequest.enqueue:(Lio/vertx/core/http/impl/Http1xServerRequest;)V
1: aload 1
invokevirtual io.vertx.core.http.impl.Http1xServerRequest.pause:()Lio/vertx/core/http/HttpServerRequest;
pop
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lio/vertx/core/http/impl/Http1xServerConnection;
0 3 1 req Lio/vertx/core/http/impl/Http1xServerRequest;
MethodParameters:
Name Flags
req
private void handleOther(java.lang.Object);
descriptor: (Ljava/lang/Object;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
instanceof io.netty.handler.codec.http.HttpContent
ifeq 3
1: aload 0
aload 1
invokevirtual io.vertx.core.http.impl.Http1xServerConnection.onContent:(Ljava/lang/Object;)V
2: goto 5
StackMap locals:
StackMap stack:
3: aload 1
instanceof io.netty.handler.codec.http.websocketx.WebSocketFrame
ifeq 5
4: aload 0
aload 1
checkcast io.netty.handler.codec.http.websocketx.WebSocketFrame
invokevirtual io.vertx.core.http.impl.Http1xServerConnection.handleWsFrame:(Lio/netty/handler/codec/http/websocketx/WebSocketFrame;)V
5: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lio/vertx/core/http/impl/Http1xServerConnection;
0 6 1 msg Ljava/lang/Object;
MethodParameters:
Name Flags
msg
private void reportRequestBegin(io.vertx.core.http.impl.Http1xServerRequest);
descriptor: (Lio/vertx/core/http/impl/Http1xServerRequest;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=9, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield io.vertx.core.http.impl.Http1xServerConnection.metrics:Lio/vertx/core/spi/metrics/HttpServerMetrics;
ifnull 2
1: aload 1
aload 0
getfield io.vertx.core.http.impl.Http1xServerConnection.metrics:Lio/vertx/core/spi/metrics/HttpServerMetrics;
aload 0
invokevirtual io.vertx.core.http.impl.Http1xServerConnection.metric:()Ljava/lang/Object;
aload 1
invokeinterface io.vertx.core.spi.metrics.HttpServerMetrics.requestBegin:(Ljava/lang/Object;Lio/vertx/core/spi/observability/HttpRequest;)Ljava/lang/Object;
putfield io.vertx.core.http.impl.Http1xServerRequest.metric:Ljava/lang/Object;
2: StackMap locals:
StackMap stack:
aload 0
getfield io.vertx.core.http.impl.Http1xServerConnection.context:Lio/vertx/core/impl/ContextInternal;
invokeinterface io.vertx.core.impl.ContextInternal.tracer:()Lio/vertx/core/spi/tracing/VertxTracer;
astore 2
start local 2 3: aload 2
ifnull 5
4: aload 1
aload 2
aload 1
getfield io.vertx.core.http.impl.Http1xServerRequest.context:Lio/vertx/core/impl/ContextInternal;
getstatic io.vertx.core.spi.tracing.SpanKind.RPC:Lio/vertx/core/spi/tracing/SpanKind;
aload 0
getfield io.vertx.core.http.impl.Http1xServerConnection.tracingPolicy:Lio/vertx/core/tracing/TracingPolicy;
aload 1
aload 1
invokevirtual io.vertx.core.http.impl.Http1xServerRequest.method:()Lio/vertx/core/http/HttpMethod;
invokevirtual io.vertx.core.http.HttpMethod.name:()Ljava/lang/String;
aload 1
invokevirtual io.vertx.core.http.impl.Http1xServerRequest.headers:()Lio/vertx/core/MultiMap;
getstatic io.vertx.core.http.impl.HttpUtils.SERVER_REQUEST_TAG_EXTRACTOR:Lio/vertx/core/spi/tracing/TagExtractor;
invokeinterface io.vertx.core.spi.tracing.VertxTracer.receiveRequest:(Lio/vertx/core/Context;Lio/vertx/core/spi/tracing/SpanKind;Lio/vertx/core/tracing/TracingPolicy;Ljava/lang/Object;Ljava/lang/String;Ljava/lang/Iterable;Lio/vertx/core/spi/tracing/TagExtractor;)Ljava/lang/Object;
putfield io.vertx.core.http.impl.Http1xServerRequest.trace:Ljava/lang/Object;
5: StackMap locals: io.vertx.core.spi.tracing.VertxTracer
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lio/vertx/core/http/impl/Http1xServerConnection;
0 6 1 request Lio/vertx/core/http/impl/Http1xServerRequest;
3 6 2 tracer Lio/vertx/core/spi/tracing/VertxTracer;
MethodParameters:
Name Flags
request
private void onContent(java.lang.Object);
descriptor: (Ljava/lang/Object;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=6, args_size=2
start local 0 start local 1 0: aload 1
checkcast io.netty.handler.codec.http.HttpContent
astore 2
start local 2 1: aload 2
invokeinterface io.netty.handler.codec.http.HttpContent.decoderResult:()Lio/netty/handler/codec/DecoderResult;
getstatic io.netty.handler.codec.DecoderResult.SUCCESS:Lio/netty/handler/codec/DecoderResult;
if_acmpeq 4
2: aload 0
aload 2
invokevirtual io.vertx.core.http.impl.Http1xServerConnection.handleError:(Lio/netty/handler/codec/http/HttpObject;)V
3: return
4: StackMap locals: io.netty.handler.codec.http.HttpContent
StackMap stack:
aload 2
invokeinterface io.netty.handler.codec.http.HttpContent.content:()Lio/netty/buffer/ByteBuf;
aload 0
getfield io.vertx.core.http.impl.Http1xServerConnection.chctx:Lio/netty/channel/ChannelHandlerContext;
invokeinterface io.netty.channel.ChannelHandlerContext.alloc:()Lio/netty/buffer/ByteBufAllocator;
invokestatic io.vertx.core.net.impl.VertxHandler.safeBuffer:(Lio/netty/buffer/ByteBuf;Lio/netty/buffer/ByteBufAllocator;)Lio/netty/buffer/ByteBuf;
invokestatic io.vertx.core.buffer.Buffer.buffer:(Lio/netty/buffer/ByteBuf;)Lio/vertx/core/buffer/Buffer;
astore 3
start local 3 5: aload 0
dup
astore 5
monitorenter
6: aload 0
getfield io.vertx.core.http.impl.Http1xServerConnection.requestInProgress:Lio/vertx/core/http/impl/Http1xServerRequest;
astore 4
start local 4 7: aload 5
monitorexit
8: goto 11
end local 4 StackMap locals: io.vertx.core.http.impl.Http1xServerConnection java.lang.Object io.netty.handler.codec.http.HttpContent io.vertx.core.buffer.Buffer top io.vertx.core.http.impl.Http1xServerConnection
StackMap stack: java.lang.Throwable
9: aload 5
monitorexit
10: athrow
start local 4 11: StackMap locals: io.vertx.core.http.impl.Http1xServerConnection java.lang.Object io.netty.handler.codec.http.HttpContent io.vertx.core.buffer.Buffer io.vertx.core.http.impl.Http1xServerRequest
StackMap stack:
aload 4
getfield io.vertx.core.http.impl.Http1xServerRequest.context:Lio/vertx/core/impl/ContextInternal;
aload 3
aload 4
dup
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
pop
invokedynamic handle(Lio/vertx/core/http/impl/Http1xServerRequest;)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/Http1xServerRequest.handleContent(Lio/vertx/core/buffer/Buffer;)V (5)
(Lio/vertx/core/buffer/Buffer;)V
invokeinterface io.vertx.core.impl.ContextInternal.execute:(Ljava/lang/Object;Lio/vertx/core/Handler;)V
12: aload 2
instanceof io.netty.handler.codec.http.LastHttpContent
ifeq 14
13: aload 0
invokevirtual io.vertx.core.http.impl.Http1xServerConnection.onEnd:()V
14: StackMap locals:
StackMap stack:
return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Lio/vertx/core/http/impl/Http1xServerConnection;
0 15 1 msg Ljava/lang/Object;
1 15 2 content Lio/netty/handler/codec/http/HttpContent;
5 15 3 buffer Lio/vertx/core/buffer/Buffer;
7 9 4 request Lio/vertx/core/http/impl/Http1xServerRequest;
11 15 4 request Lio/vertx/core/http/impl/Http1xServerRequest;
Exception table:
from to target type
6 8 9 any
9 10 9 any
MethodParameters:
Name Flags
msg
private void onEnd();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=3, args_size=1
start local 0 0: aload 0
dup
astore 2
monitorenter
1: aload 0
getfield io.vertx.core.http.impl.Http1xServerConnection.requestInProgress:Lio/vertx/core/http/impl/Http1xServerRequest;
astore 1
start local 1 2: aload 0
aconst_null
putfield io.vertx.core.http.impl.Http1xServerConnection.requestInProgress:Lio/vertx/core/http/impl/Http1xServerRequest;
3: aload 2
monitorexit
4: goto 7
end local 1 StackMap locals: io.vertx.core.http.impl.Http1xServerConnection top io.vertx.core.http.impl.Http1xServerConnection
StackMap stack: java.lang.Throwable
5: aload 2
monitorexit
6: athrow
start local 1 7: StackMap locals: io.vertx.core.http.impl.Http1xServerConnection io.vertx.core.http.impl.Http1xServerRequest
StackMap stack:
getstatic io.vertx.core.spi.metrics.Metrics.METRICS_ENABLED:Z
ifeq 9
8: aload 0
aload 1
invokevirtual io.vertx.core.http.impl.Http1xServerConnection.reportRequestComplete:(Lio/vertx/core/http/impl/Http1xServerRequest;)V
9: StackMap locals:
StackMap stack:
aload 1
getfield io.vertx.core.http.impl.Http1xServerRequest.context:Lio/vertx/core/impl/ContextInternal;
aload 1
invokedynamic handle()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/Http1xServerRequest.handleEnd()V (5)
(Lio/vertx/core/http/impl/Http1xServerRequest;)V
invokeinterface io.vertx.core.impl.ContextInternal.execute:(Ljava/lang/Object;Lio/vertx/core/Handler;)V
10: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lio/vertx/core/http/impl/Http1xServerConnection;
2 5 1 request Lio/vertx/core/http/impl/Http1xServerRequest;
7 11 1 request Lio/vertx/core/http/impl/Http1xServerRequest;
Exception table:
from to target type
1 4 5 any
5 6 5 any
void responseComplete();
descriptor: ()V
flags: (0x0000)
Code:
stack=2, locals=4, args_size=1
start local 0 0: aload 0
getfield io.vertx.core.http.impl.Http1xServerConnection.context:Lio/vertx/core/impl/ContextInternal;
invokeinterface io.vertx.core.impl.ContextInternal.nettyEventLoop:()Lio/netty/channel/EventLoop;
astore 1
start local 1 1: aload 1
invokeinterface io.netty.channel.EventLoop.inEventLoop:()Z
ifeq 10
2: getstatic io.vertx.core.spi.metrics.Metrics.METRICS_ENABLED:Z
ifeq 4
3: aload 0
invokevirtual io.vertx.core.http.impl.Http1xServerConnection.reportResponseComplete:()V
4: StackMap locals: io.netty.channel.EventLoop
StackMap stack:
aload 0
getfield io.vertx.core.http.impl.Http1xServerConnection.responseInProgress:Lio/vertx/core/http/impl/Http1xServerRequest;
astore 2
start local 2 5: aload 0
aconst_null
putfield io.vertx.core.http.impl.Http1xServerConnection.responseInProgress:Lio/vertx/core/http/impl/Http1xServerRequest;
6: aload 2
invokevirtual io.vertx.core.http.impl.Http1xServerRequest.next:()Lio/vertx/core/http/impl/Http1xServerRequest;
astore 3
start local 3 7: aload 3
ifnull 11
8: aload 0
aload 3
invokevirtual io.vertx.core.http.impl.Http1xServerConnection.handleNext:(Lio/vertx/core/http/impl/Http1xServerRequest;)V
end local 3 end local 2 9: goto 11
10: StackMap locals:
StackMap stack:
aload 1
aload 0
invokedynamic run(Lio/vertx/core/http/impl/Http1xServerConnection;)Ljava/lang/Runnable;
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:
()V
io/vertx/core/http/impl/Http1xServerConnection.responseComplete()V (5)
()V
invokeinterface io.netty.channel.EventLoop.execute:(Ljava/lang/Runnable;)V
11: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lio/vertx/core/http/impl/Http1xServerConnection;
1 12 1 eventLoop Lio/netty/channel/EventLoop;
5 9 2 request Lio/vertx/core/http/impl/Http1xServerRequest;
7 9 3 next Lio/vertx/core/http/impl/Http1xServerRequest;
private void handleNext(io.vertx.core.http.impl.Http1xServerRequest);
descriptor: (Lio/vertx/core/http/impl/Http1xServerRequest;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield io.vertx.core.http.impl.Http1xServerConnection.responseInProgress:Lio/vertx/core/http/impl/Http1xServerRequest;
1: aload 1
invokevirtual io.vertx.core.http.impl.Http1xServerRequest.handleBegin:()V
2: aload 0
getfield io.vertx.core.http.impl.Http1xServerConnection.context:Lio/vertx/core/impl/ContextInternal;
aload 1
aload 0
invokedynamic handle(Lio/vertx/core/http/impl/Http1xServerConnection;)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/Http1xServerConnection.lambda$3(Lio/vertx/core/http/impl/Http1xServerRequest;)V (7)
(Lio/vertx/core/http/impl/Http1xServerRequest;)V
invokeinterface io.vertx.core.impl.ContextInternal.emit:(Ljava/lang/Object;Lio/vertx/core/Handler;)V
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lio/vertx/core/http/impl/Http1xServerConnection;
0 4 1 next Lio/vertx/core/http/impl/Http1xServerRequest;
MethodParameters:
Name Flags
next
public void doPause();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield io.vertx.core.http.impl.Http1xServerConnection.channelPaused:Z
ifne 3
1: aload 0
iconst_1
putfield io.vertx.core.http.impl.Http1xServerConnection.channelPaused:Z
2: aload 0
invokespecial io.vertx.core.http.impl.Http1xConnectionBase.doPause:()V
3: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lio/vertx/core/http/impl/Http1xServerConnection;
public void doResume();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield io.vertx.core.http.impl.Http1xServerConnection.channelPaused:Z
ifeq 3
1: aload 0
iconst_0
putfield io.vertx.core.http.impl.Http1xServerConnection.channelPaused:Z
2: aload 0
invokespecial io.vertx.core.http.impl.Http1xConnectionBase.doResume:()V
3: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lio/vertx/core/http/impl/Http1xServerConnection;
private void reportRequestComplete(io.vertx.core.http.impl.Http1xServerRequest);
descriptor: (Lio/vertx/core/http/impl/Http1xServerRequest;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield io.vertx.core.http.impl.Http1xServerConnection.metrics:Lio/vertx/core/spi/metrics/HttpServerMetrics;
ifnull 3
1: aload 0
getfield io.vertx.core.http.impl.Http1xServerConnection.metrics:Lio/vertx/core/spi/metrics/HttpServerMetrics;
aload 1
invokevirtual io.vertx.core.http.impl.Http1xServerRequest.metric:()Ljava/lang/Object;
aload 1
invokevirtual io.vertx.core.http.impl.Http1xServerRequest.bytesRead:()J
invokeinterface io.vertx.core.spi.metrics.HttpServerMetrics.requestEnd:(Ljava/lang/Object;J)V
2: aload 0
invokevirtual io.vertx.core.http.impl.Http1xServerConnection.flushBytesRead:()V
3: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lio/vertx/core/http/impl/Http1xServerConnection;
0 4 1 request Lio/vertx/core/http/impl/Http1xServerRequest;
MethodParameters:
Name Flags
request
private void reportResponseComplete();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=4, args_size=1
start local 0 0: aload 0
getfield io.vertx.core.http.impl.Http1xServerConnection.responseInProgress:Lio/vertx/core/http/impl/Http1xServerRequest;
astore 1
start local 1 1: aload 0
getfield io.vertx.core.http.impl.Http1xServerConnection.metrics:Lio/vertx/core/spi/metrics/HttpServerMetrics;
ifnull 8
2: aload 0
invokevirtual io.vertx.core.http.impl.Http1xServerConnection.flushBytesWritten:()V
3: aload 0
getfield io.vertx.core.http.impl.Http1xServerConnection.requestFailed:Z
ifeq 7
4: aload 0
getfield io.vertx.core.http.impl.Http1xServerConnection.metrics:Lio/vertx/core/spi/metrics/HttpServerMetrics;
aload 1
invokevirtual io.vertx.core.http.impl.Http1xServerRequest.metric:()Ljava/lang/Object;
invokeinterface io.vertx.core.spi.metrics.HttpServerMetrics.requestReset:(Ljava/lang/Object;)V
5: aload 0
iconst_0
putfield io.vertx.core.http.impl.Http1xServerConnection.requestFailed:Z
6: goto 8
7: StackMap locals: io.vertx.core.http.impl.Http1xServerRequest
StackMap stack:
aload 0
getfield io.vertx.core.http.impl.Http1xServerConnection.metrics:Lio/vertx/core/spi/metrics/HttpServerMetrics;
aload 1
invokevirtual io.vertx.core.http.impl.Http1xServerRequest.metric:()Ljava/lang/Object;
aload 1
invokevirtual io.vertx.core.http.impl.Http1xServerRequest.response:()Lio/vertx/core/http/impl/Http1xServerResponse;
invokevirtual io.vertx.core.http.impl.Http1xServerResponse.bytesWritten:()J
invokeinterface io.vertx.core.spi.metrics.HttpServerMetrics.responseEnd:(Ljava/lang/Object;J)V
8: StackMap locals:
StackMap stack:
aload 0
getfield io.vertx.core.http.impl.Http1xServerConnection.context:Lio/vertx/core/impl/ContextInternal;
invokeinterface io.vertx.core.impl.ContextInternal.tracer:()Lio/vertx/core/spi/tracing/VertxTracer;
astore 2
start local 2 9: aload 1
invokevirtual io.vertx.core.http.impl.Http1xServerRequest.trace:()Ljava/lang/Object;
astore 3
start local 3 10: aload 2
ifnull 12
aload 3
ifnull 12
11: aload 2
aload 1
getfield io.vertx.core.http.impl.Http1xServerRequest.context:Lio/vertx/core/impl/ContextInternal;
aload 1
invokevirtual io.vertx.core.http.impl.Http1xServerRequest.response:()Lio/vertx/core/http/impl/Http1xServerResponse;
aload 3
aconst_null
getstatic io.vertx.core.http.impl.HttpUtils.SERVER_RESPONSE_TAG_EXTRACTOR:Lio/vertx/core/spi/tracing/TagExtractor;
invokeinterface io.vertx.core.spi.tracing.VertxTracer.sendResponse:(Lio/vertx/core/Context;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Throwable;Lio/vertx/core/spi/tracing/TagExtractor;)V
12: StackMap locals: io.vertx.core.spi.tracing.VertxTracer java.lang.Object
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lio/vertx/core/http/impl/Http1xServerConnection;
1 13 1 request Lio/vertx/core/http/impl/Http1xServerRequest;
9 13 2 tracer Lio/vertx/core/spi/tracing/VertxTracer;
10 13 3 trace Ljava/lang/Object;
java.lang.String getServerOrigin();
descriptor: ()Ljava/lang/String;
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield io.vertx.core.http.impl.Http1xServerConnection.serverOrigin:Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/vertx/core/http/impl/Http1xServerConnection;
io.vertx.core.Vertx vertx();
descriptor: ()Lio/vertx/core/Vertx;
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield io.vertx.core.http.impl.Http1xServerConnection.vertx:Lio/vertx/core/impl/VertxInternal;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/vertx/core/http/impl/Http1xServerConnection;
void createWebSocket(io.vertx.core.http.impl.Http1xServerRequest, io.vertx.core.impl.future.PromiseInternal<io.vertx.core.http.ServerWebSocket>);
descriptor: (Lio/vertx/core/http/impl/Http1xServerRequest;Lio/vertx/core/impl/future/PromiseInternal;)V
flags: (0x0000)
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield io.vertx.core.http.impl.Http1xServerConnection.context:Lio/vertx/core/impl/ContextInternal;
aload 0
aload 1
aload 2
invokedynamic run(Lio/vertx/core/http/impl/Http1xServerConnection;Lio/vertx/core/http/impl/Http1xServerRequest;Lio/vertx/core/impl/future/PromiseInternal;)Ljava/lang/Runnable;
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:
()V
io/vertx/core/http/impl/Http1xServerConnection.lambda$4(Lio/vertx/core/http/impl/Http1xServerRequest;Lio/vertx/core/impl/future/PromiseInternal;)V (7)
()V
invokeinterface io.vertx.core.impl.ContextInternal.execute:(Ljava/lang/Runnable;)V
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/vertx/core/http/impl/Http1xServerConnection;
0 2 1 request Lio/vertx/core/http/impl/Http1xServerRequest;
0 2 2 promise Lio/vertx/core/impl/future/PromiseInternal<Lio/vertx/core/http/ServerWebSocket;>;
Signature: (Lio/vertx/core/http/impl/Http1xServerRequest;Lio/vertx/core/impl/future/PromiseInternal<Lio/vertx/core/http/ServerWebSocket;>;)V
MethodParameters:
Name Flags
request
promise
private io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker createHandshaker(io.vertx.core.http.impl.Http1xServerRequest);
descriptor: (Lio/vertx/core/http/impl/Http1xServerRequest;)Lio/netty/handler/codec/http/websocketx/WebSocketServerHandshaker;
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=8, args_size=2
start local 0 start local 1 0: aload 1
getstatic io.vertx.core.http.HttpHeaders.CONNECTION:Ljava/lang/CharSequence;
invokevirtual io.vertx.core.http.impl.Http1xServerRequest.getHeader:(Ljava/lang/CharSequence;)Ljava/lang/String;
astore 2
start local 2 1: aload 2
ifnull 2
aload 2
invokevirtual java.lang.String.toLowerCase:()Ljava/lang/String;
ldc "upgrade"
invokevirtual java.lang.String.contains:(Ljava/lang/CharSequence;)Z
ifne 6
2: StackMap locals: java.lang.String
StackMap stack:
aload 1
invokevirtual io.vertx.core.http.impl.Http1xServerRequest.response:()Lio/vertx/core/http/impl/Http1xServerResponse;
3: getstatic io.netty.handler.codec.http.HttpResponseStatus.BAD_REQUEST:Lio/netty/handler/codec/http/HttpResponseStatus;
invokevirtual io.netty.handler.codec.http.HttpResponseStatus.code:()I
invokevirtual io.vertx.core.http.impl.Http1xServerResponse.setStatusCode:(I)Lio/vertx/core/http/HttpServerResponse;
4: ldc "\"Connection\" header must be \"Upgrade\"."
invokeinterface io.vertx.core.http.HttpServerResponse.end:(Ljava/lang/String;)Lio/vertx/core/Future;
pop
5: new io.netty.handler.codec.http.websocketx.WebSocketHandshakeException
dup
ldc "Invalid connection header"
invokespecial io.netty.handler.codec.http.websocketx.WebSocketHandshakeException.<init>:(Ljava/lang/String;)V
athrow
6: StackMap locals:
StackMap stack:
aload 1
invokevirtual io.vertx.core.http.impl.Http1xServerRequest.method:()Lio/vertx/core/http/HttpMethod;
getstatic io.vertx.core.http.HttpMethod.GET:Lio/vertx/core/http/HttpMethod;
if_acmpeq 11
7: aload 1
invokevirtual io.vertx.core.http.impl.Http1xServerRequest.response:()Lio/vertx/core/http/impl/Http1xServerResponse;
8: getstatic io.netty.handler.codec.http.HttpResponseStatus.METHOD_NOT_ALLOWED:Lio/netty/handler/codec/http/HttpResponseStatus;
invokevirtual io.netty.handler.codec.http.HttpResponseStatus.code:()I
invokevirtual io.vertx.core.http.impl.Http1xServerResponse.setStatusCode:(I)Lio/vertx/core/http/HttpServerResponse;
9: invokeinterface io.vertx.core.http.HttpServerResponse.end:()Lio/vertx/core/Future;
pop
10: new io.netty.handler.codec.http.websocketx.WebSocketHandshakeException
dup
ldc "Invalid HTTP method"
invokespecial io.netty.handler.codec.http.websocketx.WebSocketHandshakeException.<init>:(Ljava/lang/String;)V
athrow
11: StackMap locals:
StackMap stack:
aload 1
aload 0
invokevirtual io.vertx.core.http.impl.Http1xServerConnection.isSsl:()Z
invokestatic io.vertx.core.http.impl.HttpUtils.getWebSocketLocation:(Lio/vertx/core/http/HttpServerRequest;Z)Ljava/lang/String;
astore 3
start local 3 12: goto 18
end local 3 StackMap locals:
StackMap stack: java.lang.Exception
13: astore 4
start local 4 14: aload 1
invokevirtual io.vertx.core.http.impl.Http1xServerRequest.response:()Lio/vertx/core/http/impl/Http1xServerResponse;
15: getstatic io.netty.handler.codec.http.HttpResponseStatus.BAD_REQUEST:Lio/netty/handler/codec/http/HttpResponseStatus;
invokevirtual io.netty.handler.codec.http.HttpResponseStatus.code:()I
invokevirtual io.vertx.core.http.impl.Http1xServerResponse.setStatusCode:(I)Lio/vertx/core/http/HttpServerResponse;
16: ldc "Invalid request URI"
invokeinterface io.vertx.core.http.HttpServerResponse.end:(Ljava/lang/String;)Lio/vertx/core/Future;
pop
17: new io.netty.handler.codec.http.websocketx.WebSocketHandshakeException
dup
ldc "Invalid WebSocket location"
aload 4
invokespecial io.netty.handler.codec.http.websocketx.WebSocketHandshakeException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 4 start local 3 18: StackMap locals: java.lang.String
StackMap stack:
aconst_null
astore 4
start local 4 19: aload 0
getfield io.vertx.core.http.impl.Http1xServerConnection.options:Lio/vertx/core/http/HttpServerOptions;
invokevirtual io.vertx.core.http.HttpServerOptions.getWebSocketSubProtocols:()Ljava/util/List;
ifnull 21
20: ldc ","
aload 0
getfield io.vertx.core.http.impl.Http1xServerConnection.options:Lio/vertx/core/http/HttpServerOptions;
invokevirtual io.vertx.core.http.HttpServerOptions.getWebSocketSubProtocols:()Ljava/util/List;
invokestatic java.lang.String.join:(Ljava/lang/CharSequence;Ljava/lang/Iterable;)Ljava/lang/String;
astore 4
21: StackMap locals: java.lang.String
StackMap stack:
invokestatic io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig.newBuilder:()Lio/netty/handler/codec/http/websocketx/WebSocketDecoderConfig$Builder;
22: aload 0
getfield io.vertx.core.http.impl.Http1xServerConnection.options:Lio/vertx/core/http/HttpServerOptions;
invokevirtual io.vertx.core.http.HttpServerOptions.getPerMessageWebSocketCompressionSupported:()Z
ifne 23
aload 0
getfield io.vertx.core.http.impl.Http1xServerConnection.options:Lio/vertx/core/http/HttpServerOptions;
invokevirtual io.vertx.core.http.HttpServerOptions.getPerFrameWebSocketCompressionSupported:()Z
ifne 23
iconst_0
goto 24
StackMap locals:
StackMap stack: io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder
23: iconst_1
StackMap locals: io.vertx.core.http.impl.Http1xServerConnection io.vertx.core.http.impl.Http1xServerRequest java.lang.String java.lang.String java.lang.String
StackMap stack: io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder int
24: invokevirtual io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder.allowExtensions:(Z)Lio/netty/handler/codec/http/websocketx/WebSocketDecoderConfig$Builder;
25: aload 0
getfield io.vertx.core.http.impl.Http1xServerConnection.options:Lio/vertx/core/http/HttpServerOptions;
invokevirtual io.vertx.core.http.HttpServerOptions.getMaxWebSocketFrameSize:()I
invokevirtual io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder.maxFramePayloadLength:(I)Lio/netty/handler/codec/http/websocketx/WebSocketDecoderConfig$Builder;
26: aload 0
getfield io.vertx.core.http.impl.Http1xServerConnection.options:Lio/vertx/core/http/HttpServerOptions;
invokevirtual io.vertx.core.http.HttpServerOptions.isAcceptUnmaskedFrames:()Z
invokevirtual io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder.allowMaskMismatch:(Z)Lio/netty/handler/codec/http/websocketx/WebSocketDecoderConfig$Builder;
27: iconst_0
invokevirtual io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder.closeOnProtocolViolation:(Z)Lio/netty/handler/codec/http/websocketx/WebSocketDecoderConfig$Builder;
28: invokevirtual io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder.build:()Lio/netty/handler/codec/http/websocketx/WebSocketDecoderConfig;
29: astore 5
start local 5 30: new io.netty.handler.codec.http.websocketx.WebSocketServerHandshakerFactory
dup
aload 3
aload 4
aload 5
invokespecial io.netty.handler.codec.http.websocketx.WebSocketServerHandshakerFactory.<init>:(Ljava/lang/String;Ljava/lang/String;Lio/netty/handler/codec/http/websocketx/WebSocketDecoderConfig;)V
astore 6
start local 6 31: aload 6
aload 1
invokevirtual io.vertx.core.http.impl.Http1xServerRequest.nettyRequest:()Lio/netty/handler/codec/http/HttpRequest;
invokevirtual io.netty.handler.codec.http.websocketx.WebSocketServerHandshakerFactory.newHandshaker:(Lio/netty/handler/codec/http/HttpRequest;)Lio/netty/handler/codec/http/websocketx/WebSocketServerHandshaker;
astore 7
start local 7 32: aload 7
ifnull 34
33: aload 7
areturn
34: StackMap locals: io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig io.netty.handler.codec.http.websocketx.WebSocketServerHandshakerFactory io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker
StackMap stack:
aload 1
invokevirtual io.vertx.core.http.impl.Http1xServerRequest.response:()Lio/vertx/core/http/impl/Http1xServerResponse;
35: getstatic io.netty.handler.codec.http.HttpHeaderNames.SEC_WEBSOCKET_VERSION:Lio/netty/util/AsciiString;
getstatic io.netty.handler.codec.http.websocketx.WebSocketVersion.V13:Lio/netty/handler/codec/http/websocketx/WebSocketVersion;
invokevirtual io.netty.handler.codec.http.websocketx.WebSocketVersion.toHttpHeaderValue:()Ljava/lang/String;
invokevirtual io.vertx.core.http.impl.Http1xServerResponse.putHeader:(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Lio/vertx/core/http/HttpServerResponse;
36: getstatic io.netty.handler.codec.http.HttpResponseStatus.UPGRADE_REQUIRED:Lio/netty/handler/codec/http/HttpResponseStatus;
invokevirtual io.netty.handler.codec.http.HttpResponseStatus.code:()I
invokeinterface io.vertx.core.http.HttpServerResponse.setStatusCode:(I)Lio/vertx/core/http/HttpServerResponse;
37: invokeinterface io.vertx.core.http.HttpServerResponse.end:()Lio/vertx/core/Future;
pop
38: new io.netty.handler.codec.http.websocketx.WebSocketHandshakeException
dup
ldc "Invalid WebSocket version"
invokespecial io.netty.handler.codec.http.websocketx.WebSocketHandshakeException.<init>:(Ljava/lang/String;)V
athrow
end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 39 0 this Lio/vertx/core/http/impl/Http1xServerConnection;
0 39 1 request Lio/vertx/core/http/impl/Http1xServerRequest;
1 39 2 connectionHeader Ljava/lang/String;
12 13 3 wsURL Ljava/lang/String;
18 39 3 wsURL Ljava/lang/String;
14 18 4 e Ljava/lang/Exception;
19 39 4 subProtocols Ljava/lang/String;
30 39 5 config Lio/netty/handler/codec/http/websocketx/WebSocketDecoderConfig;
31 39 6 factory Lio/netty/handler/codec/http/websocketx/WebSocketServerHandshakerFactory;
32 39 7 shake Lio/netty/handler/codec/http/websocketx/WebSocketServerHandshaker;
Exception table:
from to target type
11 12 13 Class java.lang.Exception
Exceptions:
throws io.netty.handler.codec.http.websocketx.WebSocketHandshakeException
MethodParameters:
Name Flags
request
public void netSocket(io.vertx.core.Handler<io.vertx.core.AsyncResult<io.vertx.core.net.NetSocket>>);
descriptor: (Lio/vertx/core/Handler;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual io.vertx.core.http.impl.Http1xServerConnection.netSocket:()Lio/vertx/core/Future;
astore 2
start local 2 1: aload 1
ifnull 3
2: aload 2
aload 1
invokeinterface io.vertx.core.Future.onComplete:(Lio/vertx/core/Handler;)Lio/vertx/core/Future;
pop
3: StackMap locals: io.vertx.core.Future
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lio/vertx/core/http/impl/Http1xServerConnection;
0 4 1 handler Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Lio/vertx/core/net/NetSocket;>;>;
1 4 2 fut Lio/vertx/core/Future<Lio/vertx/core/net/NetSocket;>;
Signature: (Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Lio/vertx/core/net/NetSocket;>;>;)V
MethodParameters:
Name Flags
handler
public io.vertx.core.Future<io.vertx.core.net.NetSocket> netSocket();
descriptor: ()Lio/vertx/core/Future;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
getfield io.vertx.core.http.impl.Http1xServerConnection.context:Lio/vertx/core/impl/ContextInternal;
invokeinterface io.vertx.core.impl.ContextInternal.promise:()Lio/vertx/core/impl/future/PromiseInternal;
astore 1
start local 1 1: aload 0
aload 1
invokevirtual io.vertx.core.http.impl.Http1xServerConnection.netSocket:(Lio/vertx/core/Promise;)V
2: aload 1
invokeinterface io.vertx.core.Promise.future:()Lio/vertx/core/Future;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lio/vertx/core/http/impl/Http1xServerConnection;
1 3 1 promise Lio/vertx/core/Promise<Lio/vertx/core/net/NetSocket;>;
Signature: ()Lio/vertx/core/Future<Lio/vertx/core/net/NetSocket;>;
void netSocket(io.vertx.core.Promise<io.vertx.core.net.NetSocket>);
descriptor: (Lio/vertx/core/Promise;)V
flags: (0x0000)
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield io.vertx.core.http.impl.Http1xServerConnection.context:Lio/vertx/core/impl/ContextInternal;
aload 0
aload 1
invokedynamic run(Lio/vertx/core/http/impl/Http1xServerConnection;Lio/vertx/core/Promise;)Ljava/lang/Runnable;
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:
()V
io/vertx/core/http/impl/Http1xServerConnection.lambda$5(Lio/vertx/core/Promise;)V (7)
()V
invokeinterface io.vertx.core.impl.ContextInternal.execute:(Ljava/lang/Runnable;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/vertx/core/http/impl/Http1xServerConnection;
0 2 1 promise Lio/vertx/core/Promise<Lio/vertx/core/net/NetSocket;>;
Signature: (Lio/vertx/core/Promise<Lio/vertx/core/net/NetSocket;>;)V
MethodParameters:
Name Flags
promise
public void handleInterestedOpsChanged();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=1
start local 0 0: aload 0
dup
astore 3
monitorenter
1: aload 0
getfield io.vertx.core.http.impl.Http1xServerConnection.responseInProgress:Lio/vertx/core/http/impl/Http1xServerRequest;
ifnull 5
2: aload 0
getfield io.vertx.core.http.impl.Http1xServerConnection.responseInProgress:Lio/vertx/core/http/impl/Http1xServerRequest;
getfield io.vertx.core.http.impl.Http1xServerRequest.context:Lio/vertx/core/impl/ContextInternal;
astore 1
start local 1 3: aload 0
getfield io.vertx.core.http.impl.Http1xServerConnection.responseInProgress:Lio/vertx/core/http/impl/Http1xServerRequest;
invokevirtual io.vertx.core.http.impl.Http1xServerRequest.response:()Lio/vertx/core/http/impl/Http1xServerResponse;
dup
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
pop
invokedynamic handle(Lio/vertx/core/http/impl/Http1xServerResponse;)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/Http1xServerResponse.handleWritabilityChanged(Z)V (5)
(Ljava/lang/Boolean;)V
astore 2
start local 2 4: goto 11
end local 2 end local 1 StackMap locals: io.vertx.core.http.impl.Http1xServerConnection top top io.vertx.core.http.impl.Http1xServerConnection
StackMap stack:
5: aload 0
getfield io.vertx.core.http.impl.Http1xServerConnection.webSocket:Lio/vertx/core/http/impl/WebSocketImplBase;
ifnull 9
6: aload 0
getfield io.vertx.core.http.impl.Http1xServerConnection.webSocket:Lio/vertx/core/http/impl/WebSocketImplBase;
checkcast io.vertx.core.http.impl.ServerWebSocketImpl
getfield io.vertx.core.http.impl.ServerWebSocketImpl.context:Lio/vertx/core/impl/ContextInternal;
astore 1
start local 1 7: aload 0
getfield io.vertx.core.http.impl.Http1xServerConnection.webSocket:Lio/vertx/core/http/impl/WebSocketImplBase;
checkcast io.vertx.core.http.impl.ServerWebSocketImpl
dup
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
pop
invokedynamic handle(Lio/vertx/core/http/impl/ServerWebSocketImpl;)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/WebSocketImplBase.handleWritabilityChanged(Z)V (5)
(Ljava/lang/Boolean;)V
astore 2
start local 2 8: goto 11
end local 2 end local 1 9: StackMap locals:
StackMap stack:
aload 3
monitorexit
10: return
start local 1 start local 2 11: StackMap locals: io.vertx.core.http.impl.Http1xServerConnection io.vertx.core.impl.ContextInternal io.vertx.core.Handler io.vertx.core.http.impl.Http1xServerConnection
StackMap stack:
aload 3
monitorexit
12: goto 15
end local 2 end local 1 StackMap locals: io.vertx.core.http.impl.Http1xServerConnection top top io.vertx.core.http.impl.Http1xServerConnection
StackMap stack: java.lang.Throwable
13: aload 3
monitorexit
14: athrow
start local 1 start local 2 15: StackMap locals: io.vertx.core.http.impl.Http1xServerConnection io.vertx.core.impl.ContextInternal io.vertx.core.Handler
StackMap stack:
aload 0
invokevirtual io.vertx.core.http.impl.Http1xServerConnection.isNotWritable:()Z
ifeq 16
iconst_0
goto 17
StackMap locals:
StackMap stack:
16: iconst_1
StackMap locals:
StackMap stack: int
17: istore 3
start local 3 18: aload 1
iload 3
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
aload 2
invokeinterface io.vertx.core.impl.ContextInternal.execute:(Ljava/lang/Object;Lio/vertx/core/Handler;)V
19: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 20 0 this Lio/vertx/core/http/impl/Http1xServerConnection;
3 5 1 context Lio/vertx/core/impl/ContextInternal;
7 9 1 context Lio/vertx/core/impl/ContextInternal;
11 13 1 context Lio/vertx/core/impl/ContextInternal;
15 20 1 context Lio/vertx/core/impl/ContextInternal;
4 5 2 handler Lio/vertx/core/Handler<Ljava/lang/Boolean;>;
8 9 2 handler Lio/vertx/core/Handler<Ljava/lang/Boolean;>;
11 13 2 handler Lio/vertx/core/Handler<Ljava/lang/Boolean;>;
15 20 2 handler Lio/vertx/core/Handler<Ljava/lang/Boolean;>;
18 20 3 writable Z
Exception table:
from to target type
1 10 13 any
11 12 13 any
13 14 13 any
void write100Continue();
descriptor: ()V
flags: (0x0000)
Code:
stack=5, locals=1, args_size=1
start local 0 0: aload 0
getfield io.vertx.core.http.impl.Http1xServerConnection.chctx:Lio/netty/channel/ChannelHandlerContext;
new io.netty.handler.codec.http.DefaultFullHttpResponse
dup
getstatic io.netty.handler.codec.http.HttpVersion.HTTP_1_1:Lio/netty/handler/codec/http/HttpVersion;
getstatic io.netty.handler.codec.http.HttpResponseStatus.CONTINUE:Lio/netty/handler/codec/http/HttpResponseStatus;
invokespecial io.netty.handler.codec.http.DefaultFullHttpResponse.<init>:(Lio/netty/handler/codec/http/HttpVersion;Lio/netty/handler/codec/http/HttpResponseStatus;)V
invokeinterface io.netty.channel.ChannelHandlerContext.writeAndFlush:(Ljava/lang/Object;)Lio/netty/channel/ChannelFuture;
pop
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/vertx/core/http/impl/Http1xServerConnection;
protected void handleClosed();
descriptor: ()V
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=5, args_size=1
start local 0 0: aload 0
dup
astore 4
monitorenter
1: aload 0
getfield io.vertx.core.http.impl.Http1xServerConnection.webSocket:Lio/vertx/core/http/impl/WebSocketImplBase;
checkcast io.vertx.core.http.impl.ServerWebSocketImpl
astore 3
start local 3 2: aload 0
getfield io.vertx.core.http.impl.Http1xServerConnection.requestInProgress:Lio/vertx/core/http/impl/Http1xServerRequest;
astore 2
start local 2 3: aload 0
getfield io.vertx.core.http.impl.Http1xServerConnection.responseInProgress:Lio/vertx/core/http/impl/Http1xServerRequest;
astore 1
start local 1 4: aload 4
monitorexit
5: goto 8
end local 3 end local 2 end local 1 StackMap locals: io.vertx.core.http.impl.Http1xServerConnection top top top io.vertx.core.http.impl.Http1xServerConnection
StackMap stack: java.lang.Throwable
6: aload 4
monitorexit
7: athrow
start local 1 start local 2 start local 3 8: StackMap locals: io.vertx.core.http.impl.Http1xServerConnection io.vertx.core.http.impl.Http1xServerRequest io.vertx.core.http.impl.Http1xServerRequest io.vertx.core.http.impl.ServerWebSocketImpl
StackMap stack:
aload 2
ifnull 10
9: aload 2
getfield io.vertx.core.http.impl.Http1xServerRequest.context:Lio/vertx/core/impl/ContextInternal;
aload 2
invokedynamic handle(Lio/vertx/core/http/impl/Http1xServerRequest;)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/Http1xServerConnection.lambda$9(Lio/vertx/core/http/impl/Http1xServerRequest;Ljava/lang/Void;)V (6)
(Ljava/lang/Void;)V
invokeinterface io.vertx.core.impl.ContextInternal.execute:(Lio/vertx/core/Handler;)V
10: StackMap locals:
StackMap stack:
aload 1
ifnull 12
aload 1
aload 2
if_acmpeq 12
11: aload 1
getfield io.vertx.core.http.impl.Http1xServerRequest.context:Lio/vertx/core/impl/ContextInternal;
aload 1
invokedynamic handle(Lio/vertx/core/http/impl/Http1xServerRequest;)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/Http1xServerConnection.lambda$10(Lio/vertx/core/http/impl/Http1xServerRequest;Ljava/lang/Void;)V (6)
(Ljava/lang/Void;)V
invokeinterface io.vertx.core.impl.ContextInternal.execute:(Lio/vertx/core/Handler;)V
12: StackMap locals:
StackMap stack:
aload 3
ifnull 14
13: aload 3
getfield io.vertx.core.http.impl.ServerWebSocketImpl.context:Lio/vertx/core/impl/ContextInternal;
aload 3
invokedynamic handle(Lio/vertx/core/http/impl/ServerWebSocketImpl;)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/Http1xServerConnection.lambda$11(Lio/vertx/core/http/impl/ServerWebSocketImpl;Ljava/lang/Void;)V (6)
(Ljava/lang/Void;)V
invokeinterface io.vertx.core.impl.ContextInternal.execute:(Lio/vertx/core/Handler;)V
14: StackMap locals:
StackMap stack:
aload 0
invokespecial io.vertx.core.http.impl.Http1xConnectionBase.handleClosed:()V
15: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 this Lio/vertx/core/http/impl/Http1xServerConnection;
4 6 1 responseInProgress Lio/vertx/core/http/impl/Http1xServerRequest;
8 16 1 responseInProgress Lio/vertx/core/http/impl/Http1xServerRequest;
3 6 2 requestInProgress Lio/vertx/core/http/impl/Http1xServerRequest;
8 16 2 requestInProgress Lio/vertx/core/http/impl/Http1xServerRequest;
2 6 3 ws Lio/vertx/core/http/impl/ServerWebSocketImpl;
8 16 3 ws Lio/vertx/core/http/impl/ServerWebSocketImpl;
Exception table:
from to target type
1 5 6 any
6 7 6 any
protected void handleException(java.lang.Throwable);
descriptor: (Ljava/lang/Throwable;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=6, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokespecial io.vertx.core.http.impl.Http1xConnectionBase.handleException:(Ljava/lang/Throwable;)V
1: aload 0
dup
astore 5
monitorenter
2: aload 0
getfield io.vertx.core.http.impl.Http1xServerConnection.webSocket:Lio/vertx/core/http/impl/WebSocketImplBase;
checkcast io.vertx.core.http.impl.ServerWebSocketImpl
astore 4
start local 4 3: aload 0
getfield io.vertx.core.http.impl.Http1xServerConnection.requestInProgress:Lio/vertx/core/http/impl/Http1xServerRequest;
astore 3
start local 3 4: aload 0
getfield io.vertx.core.http.impl.Http1xServerConnection.responseInProgress:Lio/vertx/core/http/impl/Http1xServerRequest;
astore 2
start local 2 5: getstatic io.vertx.core.spi.metrics.Metrics.METRICS_ENABLED:Z
ifeq 7
aload 0
getfield io.vertx.core.http.impl.Http1xServerConnection.metrics:Lio/vertx/core/spi/metrics/HttpServerMetrics;
ifnull 7
6: aload 0
iconst_1
putfield io.vertx.core.http.impl.Http1xServerConnection.requestFailed:Z
7: StackMap locals: io.vertx.core.http.impl.Http1xServerConnection java.lang.Throwable io.vertx.core.http.impl.Http1xServerRequest io.vertx.core.http.impl.Http1xServerRequest io.vertx.core.http.impl.ServerWebSocketImpl io.vertx.core.http.impl.Http1xServerConnection
StackMap stack:
aload 5
monitorexit
8: goto 11
end local 4 end local 3 end local 2 StackMap locals: io.vertx.core.http.impl.Http1xServerConnection java.lang.Throwable top top top io.vertx.core.http.impl.Http1xServerConnection
StackMap stack: java.lang.Throwable
9: aload 5
monitorexit
10: athrow
start local 2 start local 3 start local 4 11: StackMap locals: io.vertx.core.http.impl.Http1xServerConnection java.lang.Throwable io.vertx.core.http.impl.Http1xServerRequest io.vertx.core.http.impl.Http1xServerRequest io.vertx.core.http.impl.ServerWebSocketImpl
StackMap stack:
aload 3
ifnull 13
12: aload 3
aload 1
invokevirtual io.vertx.core.http.impl.Http1xServerRequest.handleException:(Ljava/lang/Throwable;)V
13: StackMap locals:
StackMap stack:
aload 2
ifnull 15
aload 2
aload 3
if_acmpeq 15
14: aload 2
aload 1
invokevirtual io.vertx.core.http.impl.Http1xServerRequest.handleException:(Ljava/lang/Throwable;)V
15: StackMap locals:
StackMap stack:
aload 4
ifnull 17
16: aload 4
getfield io.vertx.core.http.impl.ServerWebSocketImpl.context:Lio/vertx/core/impl/ContextInternal;
aload 4
aload 1
invokedynamic handle(Lio/vertx/core/http/impl/ServerWebSocketImpl;Ljava/lang/Throwable;)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/Http1xServerConnection.lambda$12(Lio/vertx/core/http/impl/ServerWebSocketImpl;Ljava/lang/Throwable;Ljava/lang/Void;)V (6)
(Ljava/lang/Void;)V
invokeinterface io.vertx.core.impl.ContextInternal.execute:(Lio/vertx/core/Handler;)V
17: StackMap locals:
StackMap stack:
return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 this Lio/vertx/core/http/impl/Http1xServerConnection;
0 18 1 t Ljava/lang/Throwable;
5 9 2 responseInProgress Lio/vertx/core/http/impl/Http1xServerRequest;
11 18 2 responseInProgress Lio/vertx/core/http/impl/Http1xServerRequest;
4 9 3 requestInProgress Lio/vertx/core/http/impl/Http1xServerRequest;
11 18 3 requestInProgress Lio/vertx/core/http/impl/Http1xServerRequest;
3 9 4 ws Lio/vertx/core/http/impl/ServerWebSocketImpl;
11 18 4 ws Lio/vertx/core/http/impl/ServerWebSocketImpl;
Exception table:
from to target type
2 8 9 any
9 10 9 any
MethodParameters:
Name Flags
t
protected boolean supportsFileRegion();
descriptor: ()Z
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokespecial io.vertx.core.http.impl.Http1xConnectionBase.supportsFileRegion:()Z
ifeq 1
aload 0
getfield io.vertx.core.http.impl.Http1xServerConnection.chctx:Lio/netty/channel/ChannelHandlerContext;
invokeinterface io.netty.channel.ChannelHandlerContext.pipeline:()Lio/netty/channel/ChannelPipeline;
ldc Lio/vertx/core/http/impl/HttpChunkContentCompressor;
invokeinterface io.netty.channel.ChannelPipeline.get:(Ljava/lang/Class;)Lio/netty/channel/ChannelHandler;
ifnonnull 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/vertx/core/http/impl/Http1xServerConnection;
private void handleError(io.netty.handler.codec.http.HttpObject);
descriptor: (Lio/netty/handler/codec/http/HttpObject;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=9, args_size=2
start local 0 start local 1 0: aload 1
invokeinterface io.netty.handler.codec.http.HttpObject.decoderResult:()Lio/netty/handler/codec/DecoderResult;
astore 2
start local 2 1: aload 2
invokevirtual io.netty.handler.codec.DecoderResult.cause:()Ljava/lang/Throwable;
astore 3
start local 3 2: aload 3
instanceof io.netty.handler.codec.TooLongFrameException
ifeq 25
3: aload 3
invokevirtual java.lang.Throwable.getMessage:()Ljava/lang/String;
astore 4
start local 4 4: aload 1
instanceof io.netty.handler.codec.http.HttpRequest
ifeq 7
5: aload 1
checkcast io.netty.handler.codec.http.HttpRequest
invokeinterface io.netty.handler.codec.http.HttpRequest.protocolVersion:()Lio/netty/handler/codec/http/HttpVersion;
astore 5
start local 5 6: goto 13
end local 5 StackMap locals: io.netty.handler.codec.DecoderResult java.lang.Throwable java.lang.String
StackMap stack:
7: aload 0
getfield io.vertx.core.http.impl.Http1xServerConnection.requestInProgress:Lio/vertx/core/http/impl/Http1xServerRequest;
ifnull 12
8: aload 0
getfield io.vertx.core.http.impl.Http1xServerConnection.requestInProgress:Lio/vertx/core/http/impl/Http1xServerRequest;
invokevirtual io.vertx.core.http.impl.Http1xServerRequest.version:()Lio/vertx/core/http/HttpVersion;
getstatic io.vertx.core.http.HttpVersion.HTTP_1_0:Lio/vertx/core/http/HttpVersion;
if_acmpne 9
getstatic io.netty.handler.codec.http.HttpVersion.HTTP_1_0:Lio/netty/handler/codec/http/HttpVersion;
goto 10
StackMap locals:
StackMap stack:
9: getstatic io.netty.handler.codec.http.HttpVersion.HTTP_1_1:Lio/netty/handler/codec/http/HttpVersion;
StackMap locals:
StackMap stack: io.netty.handler.codec.http.HttpVersion
10: astore 5
start local 5 11: goto 13
end local 5 12: StackMap locals:
StackMap stack:
getstatic io.netty.handler.codec.http.HttpVersion.HTTP_1_1:Lio/netty/handler/codec/http/HttpVersion;
astore 5
start local 5 13: StackMap locals: io.netty.handler.codec.http.HttpVersion
StackMap stack:
aload 4
ldc "An HTTP line is larger than"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 16
14: getstatic io.netty.handler.codec.http.HttpResponseStatus.REQUEST_URI_TOO_LONG:Lio/netty/handler/codec/http/HttpResponseStatus;
astore 6
start local 6 15: goto 20
end local 6 StackMap locals:
StackMap stack:
16: aload 4
ldc "HTTP header is larger than"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 19
17: getstatic io.netty.handler.codec.http.HttpResponseStatus.REQUEST_HEADER_FIELDS_TOO_LARGE:Lio/netty/handler/codec/http/HttpResponseStatus;
astore 6
start local 6 18: goto 20
end local 6 19: StackMap locals:
StackMap stack:
getstatic io.netty.handler.codec.http.HttpResponseStatus.BAD_REQUEST:Lio/netty/handler/codec/http/HttpResponseStatus;
astore 6
start local 6 20: StackMap locals: io.netty.handler.codec.http.HttpResponseStatus
StackMap stack:
new io.netty.handler.codec.http.DefaultFullHttpResponse
dup
aload 5
aload 6
invokespecial io.netty.handler.codec.http.DefaultFullHttpResponse.<init>:(Lio/netty/handler/codec/http/HttpVersion;Lio/netty/handler/codec/http/HttpResponseStatus;)V
astore 7
start local 7 21: aload 0
getfield io.vertx.core.http.impl.Http1xServerConnection.chctx:Lio/netty/channel/ChannelHandlerContext;
invokeinterface io.netty.channel.ChannelHandlerContext.newPromise:()Lio/netty/channel/ChannelPromise;
astore 8
start local 8 22: aload 0
aload 7
aload 8
invokevirtual io.vertx.core.http.impl.Http1xServerConnection.writeToChannel:(Ljava/lang/Object;Lio/netty/channel/ChannelPromise;)V
23: aload 8
aload 0
aload 2
invokedynamic operationComplete(Lio/vertx/core/http/impl/Http1xServerConnection;Lio/netty/handler/codec/DecoderResult;)Lio/netty/util/concurrent/GenericFutureListener;
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:
(Lio/netty/util/concurrent/Future;)V
io/vertx/core/http/impl/Http1xServerConnection.lambda$13(Lio/netty/handler/codec/DecoderResult;Lio/netty/util/concurrent/Future;)V (7)
(Lio/netty/util/concurrent/Future;)V
invokeinterface io.netty.channel.ChannelPromise.addListener:(Lio/netty/util/concurrent/GenericFutureListener;)Lio/netty/channel/ChannelPromise;
pop
end local 8 end local 7 end local 6 end local 5 end local 4 24: goto 26
25: StackMap locals:
StackMap stack:
aload 0
aload 2
invokevirtual io.netty.handler.codec.DecoderResult.cause:()Ljava/lang/Throwable;
invokevirtual io.vertx.core.http.impl.Http1xServerConnection.fail:(Ljava/lang/Throwable;)V
26: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 27 0 this Lio/vertx/core/http/impl/Http1xServerConnection;
0 27 1 obj Lio/netty/handler/codec/http/HttpObject;
1 27 2 result Lio/netty/handler/codec/DecoderResult;
2 27 3 cause Ljava/lang/Throwable;
4 24 4 causeMsg Ljava/lang/String;
6 7 5 version Lio/netty/handler/codec/http/HttpVersion;
11 12 5 version Lio/netty/handler/codec/http/HttpVersion;
13 24 5 version Lio/netty/handler/codec/http/HttpVersion;
15 16 6 status Lio/netty/handler/codec/http/HttpResponseStatus;
18 19 6 status Lio/netty/handler/codec/http/HttpResponseStatus;
20 24 6 status Lio/netty/handler/codec/http/HttpResponseStatus;
21 24 7 resp Lio/netty/handler/codec/http/DefaultFullHttpResponse;
22 24 8 fut Lio/netty/channel/ChannelPromise;
MethodParameters:
Name Flags
obj
public io.vertx.core.Future shutdown(long);
descriptor: (J)Lio/vertx/core/Future;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=3, locals=3, args_size=2
0: aload 0
lload 1
invokespecial io.vertx.core.http.impl.Http1xConnectionBase.shutdown:(J)Lio/vertx/core/Future;
areturn
LocalVariableTable:
Start End Slot Name Signature
public void shutdown(long, io.vertx.core.Handler);
descriptor: (JLio/vertx/core/Handler;)V
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=4, locals=4, args_size=3
0: aload 0
lload 1
aload 3
invokespecial io.vertx.core.http.impl.Http1xConnectionBase.shutdown:(JLio/vertx/core/Handler;)V
return
LocalVariableTable:
Start End Slot Name Signature
public io.vertx.core.http.HttpConnection shutdownHandler(io.vertx.core.Handler);
descriptor: (Lio/vertx/core/Handler;)Lio/vertx/core/http/HttpConnection;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: aload 0
aload 1
invokespecial io.vertx.core.http.impl.Http1xConnectionBase.shutdownHandler:(Lio/vertx/core/Handler;)Lio/vertx/core/http/HttpConnection;
areturn
LocalVariableTable:
Start End Slot Name Signature
public io.vertx.core.Future ping(io.vertx.core.buffer.Buffer);
descriptor: (Lio/vertx/core/buffer/Buffer;)Lio/vertx/core/Future;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: aload 0
aload 1
invokespecial io.vertx.core.http.impl.Http1xConnectionBase.ping:(Lio/vertx/core/buffer/Buffer;)Lio/vertx/core/Future;
areturn
LocalVariableTable:
Start End Slot Name Signature
public io.vertx.core.http.HttpConnection ping(io.vertx.core.buffer.Buffer, io.vertx.core.Handler);
descriptor: (Lio/vertx/core/buffer/Buffer;Lio/vertx/core/Handler;)Lio/vertx/core/http/HttpConnection;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=3, locals=3, args_size=3
0: aload 0
aload 1
aload 2
invokespecial io.vertx.core.http.impl.Http1xConnectionBase.ping:(Lio/vertx/core/buffer/Buffer;Lio/vertx/core/Handler;)Lio/vertx/core/http/HttpConnection;
areturn
LocalVariableTable:
Start End Slot Name Signature
public io.vertx.core.http.HttpConnection updateSettings(io.vertx.core.http.Http2Settings, io.vertx.core.Handler);
descriptor: (Lio/vertx/core/http/Http2Settings;Lio/vertx/core/Handler;)Lio/vertx/core/http/HttpConnection;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=3, locals=3, args_size=3
0: aload 0
aload 1
aload 2
invokespecial io.vertx.core.http.impl.Http1xConnectionBase.updateSettings:(Lio/vertx/core/http/Http2Settings;Lio/vertx/core/Handler;)Lio/vertx/core/http/HttpConnection;
areturn
LocalVariableTable:
Start End Slot Name Signature
public io.vertx.core.Future updateSettings(io.vertx.core.http.Http2Settings);
descriptor: (Lio/vertx/core/http/Http2Settings;)Lio/vertx/core/Future;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: aload 0
aload 1
invokespecial io.vertx.core.http.impl.Http1xConnectionBase.updateSettings:(Lio/vertx/core/http/Http2Settings;)Lio/vertx/core/Future;
areturn
LocalVariableTable:
Start End Slot Name Signature
public io.vertx.core.http.HttpConnection pingHandler(io.vertx.core.Handler);
descriptor: (Lio/vertx/core/Handler;)Lio/vertx/core/http/HttpConnection;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: aload 0
aload 1
invokespecial io.vertx.core.http.impl.Http1xConnectionBase.pingHandler:(Lio/vertx/core/Handler;)Lio/vertx/core/http/HttpConnection;
areturn
LocalVariableTable:
Start End Slot Name Signature
public io.vertx.core.http.impl.Http1xConnectionBase exceptionHandler(io.vertx.core.Handler);
descriptor: (Lio/vertx/core/Handler;)Lio/vertx/core/http/impl/Http1xConnectionBase;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: aload 0
aload 1
invokespecial io.vertx.core.http.impl.Http1xConnectionBase.exceptionHandler:(Lio/vertx/core/Handler;)Lio/vertx/core/http/impl/Http1xConnectionBase;
areturn
LocalVariableTable:
Start End Slot Name Signature
public io.vertx.core.http.impl.Http1xConnectionBase closeHandler(io.vertx.core.Handler);
descriptor: (Lio/vertx/core/Handler;)Lio/vertx/core/http/impl/Http1xConnectionBase;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: aload 0
aload 1
invokespecial io.vertx.core.http.impl.Http1xConnectionBase.closeHandler:(Lio/vertx/core/Handler;)Lio/vertx/core/http/impl/Http1xConnectionBase;
areturn
LocalVariableTable:
Start End Slot Name Signature
public io.vertx.core.http.Http2Settings remoteSettings();
descriptor: ()Lio/vertx/core/http/Http2Settings;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
0: aload 0
invokespecial io.vertx.core.http.impl.Http1xConnectionBase.remoteSettings:()Lio/vertx/core/http/Http2Settings;
areturn
LocalVariableTable:
Start End Slot Name Signature
public io.vertx.core.spi.metrics.NetworkMetrics metrics();
descriptor: ()Lio/vertx/core/spi/metrics/NetworkMetrics;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
0: aload 0
invokevirtual io.vertx.core.http.impl.Http1xServerConnection.metrics:()Lio/vertx/core/spi/metrics/HttpServerMetrics;
areturn
LocalVariableTable:
Start End Slot Name Signature
public io.vertx.core.http.HttpConnection goAway(long, int, io.vertx.core.buffer.Buffer);
descriptor: (JILio/vertx/core/buffer/Buffer;)Lio/vertx/core/http/HttpConnection;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=5, locals=5, args_size=4
0: aload 0
lload 1
iload 3
aload 4
invokespecial io.vertx.core.http.impl.Http1xConnectionBase.goAway:(JILio/vertx/core/buffer/Buffer;)Lio/vertx/core/http/HttpConnection;
areturn
LocalVariableTable:
Start End Slot Name Signature
public io.vertx.core.http.HttpConnection goAwayHandler(io.vertx.core.Handler);
descriptor: (Lio/vertx/core/Handler;)Lio/vertx/core/http/HttpConnection;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: aload 0
aload 1
invokespecial io.vertx.core.http.impl.Http1xConnectionBase.goAwayHandler:(Lio/vertx/core/Handler;)Lio/vertx/core/http/HttpConnection;
areturn
LocalVariableTable:
Start End Slot Name Signature
public io.vertx.core.http.HttpConnection remoteSettingsHandler(io.vertx.core.Handler);
descriptor: (Lio/vertx/core/Handler;)Lio/vertx/core/http/HttpConnection;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: aload 0
aload 1
invokespecial io.vertx.core.http.impl.Http1xConnectionBase.remoteSettingsHandler:(Lio/vertx/core/Handler;)Lio/vertx/core/http/HttpConnection;
areturn
LocalVariableTable:
Start End Slot Name Signature
public io.vertx.core.Future close();
descriptor: ()Lio/vertx/core/Future;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
0: aload 0
invokespecial io.vertx.core.http.impl.Http1xConnectionBase.close:()Lio/vertx/core/Future;
areturn
LocalVariableTable:
Start End Slot Name Signature
public io.vertx.core.http.Http2Settings settings();
descriptor: ()Lio/vertx/core/http/Http2Settings;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
0: aload 0
invokespecial io.vertx.core.http.impl.Http1xConnectionBase.settings:()Lio/vertx/core/http/Http2Settings;
areturn
LocalVariableTable:
Start End Slot Name Signature
private void lambda$3(io.vertx.core.http.impl.Http1xServerRequest);
descriptor: (Lio/vertx/core/http/impl/Http1xServerRequest;)V
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual io.vertx.core.http.impl.Http1xServerRequest.resume:()Lio/vertx/core/http/HttpServerRequest;
pop
1: aload 0
getfield io.vertx.core.http.impl.Http1xServerConnection.requestHandler:Lio/vertx/core/Handler;
aload 1
invokeinterface io.vertx.core.Handler.handle:(Ljava/lang/Object;)V
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lio/vertx/core/http/impl/Http1xServerConnection;
0 3 1 next_ Lio/vertx/core/http/impl/Http1xServerRequest;
private void lambda$4(io.vertx.core.http.impl.Http1xServerRequest, io.vertx.core.impl.future.PromiseInternal);
descriptor: (Lio/vertx/core/http/impl/Http1xServerRequest;Lio/vertx/core/impl/future/PromiseInternal;)V
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=10, locals=5, args_size=3
start local 0 0: aload 1
aload 0
getfield io.vertx.core.http.impl.Http1xServerConnection.responseInProgress:Lio/vertx/core/http/impl/Http1xServerRequest;
if_acmpeq 3
1: aload 2
ldc "Invalid request"
invokeinterface io.vertx.core.impl.future.PromiseInternal.fail:(Ljava/lang/String;)V
2: goto 22
StackMap locals:
StackMap stack:
3: aload 0
getfield io.vertx.core.http.impl.Http1xServerConnection.webSocket:Lio/vertx/core/http/impl/WebSocketImplBase;
ifnull 6
4: aload 2
aload 0
getfield io.vertx.core.http.impl.Http1xServerConnection.webSocket:Lio/vertx/core/http/impl/WebSocketImplBase;
checkcast io.vertx.core.http.ServerWebSocket
invokeinterface io.vertx.core.impl.future.PromiseInternal.complete:(Ljava/lang/Object;)V
5: goto 22
StackMap locals:
StackMap stack:
6: aload 1
invokevirtual io.vertx.core.http.impl.Http1xServerRequest.nettyRequest:()Lio/netty/handler/codec/http/HttpRequest;
instanceof io.netty.handler.codec.http.FullHttpRequest
ifne 9
7: aload 2
new java.lang.IllegalStateException
dup
invokespecial java.lang.IllegalStateException.<init>:()V
invokeinterface io.vertx.core.impl.future.PromiseInternal.fail:(Ljava/lang/Throwable;)V
8: goto 22
9: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual io.vertx.core.http.impl.Http1xServerConnection.createHandshaker:(Lio/vertx/core/http/impl/Http1xServerRequest;)Lio/netty/handler/codec/http/websocketx/WebSocketServerHandshaker;
astore 3
start local 3 10: goto 14
end local 3 StackMap locals:
StackMap stack: io.netty.handler.codec.http.websocketx.WebSocketHandshakeException
11: astore 4
start local 4 12: aload 2
aload 4
invokeinterface io.vertx.core.impl.future.PromiseInternal.fail:(Ljava/lang/Throwable;)V
13: return
end local 4 start local 3 14: StackMap locals: io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker
StackMap stack:
aload 0
15: new io.vertx.core.http.impl.ServerWebSocketImpl
dup
aload 2
invokeinterface io.vertx.core.impl.future.PromiseInternal.context:()Lio/vertx/core/impl/ContextInternal;
aload 0
aload 3
invokevirtual io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker.version:()Lio/netty/handler/codec/http/websocketx/WebSocketVersion;
getstatic io.netty.handler.codec.http.websocketx.WebSocketVersion.V00:Lio/netty/handler/codec/http/websocketx/WebSocketVersion;
if_acmpeq 16
iconst_1
goto 17
StackMap locals: io.vertx.core.http.impl.Http1xServerConnection io.vertx.core.http.impl.Http1xServerRequest io.vertx.core.impl.future.PromiseInternal io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker
StackMap stack: io.vertx.core.http.impl.Http1xServerConnection new 15 new 15 io.vertx.core.impl.ContextInternal io.vertx.core.http.impl.Http1xServerConnection
16: iconst_0
17: StackMap locals: io.vertx.core.http.impl.Http1xServerConnection io.vertx.core.http.impl.Http1xServerRequest io.vertx.core.impl.future.PromiseInternal io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker
StackMap stack: io.vertx.core.http.impl.Http1xServerConnection new 15 new 15 io.vertx.core.impl.ContextInternal io.vertx.core.http.impl.Http1xServerConnection int
aload 1
aload 3
aload 0
getfield io.vertx.core.http.impl.Http1xServerConnection.options:Lio/vertx/core/http/HttpServerOptions;
invokevirtual io.vertx.core.http.HttpServerOptions.getMaxWebSocketFrameSize:()I
aload 0
getfield io.vertx.core.http.impl.Http1xServerConnection.options:Lio/vertx/core/http/HttpServerOptions;
invokevirtual io.vertx.core.http.HttpServerOptions.getMaxWebSocketMessageSize:()I
invokespecial io.vertx.core.http.impl.ServerWebSocketImpl.<init>:(Lio/vertx/core/impl/ContextInternal;Lio/vertx/core/http/impl/Http1xServerConnection;ZLio/vertx/core/http/impl/Http1xServerRequest;Lio/netty/handler/codec/http/websocketx/WebSocketServerHandshaker;II)V
18: putfield io.vertx.core.http.impl.Http1xServerConnection.webSocket:Lio/vertx/core/http/impl/WebSocketImplBase;
19: getstatic io.vertx.core.spi.metrics.Metrics.METRICS_ENABLED:Z
ifeq 21
aload 0
getfield io.vertx.core.http.impl.Http1xServerConnection.metrics:Lio/vertx/core/spi/metrics/HttpServerMetrics;
ifnull 21
20: aload 0
getfield io.vertx.core.http.impl.Http1xServerConnection.webSocket:Lio/vertx/core/http/impl/WebSocketImplBase;
checkcast io.vertx.core.http.impl.ServerWebSocketImpl
aload 0
getfield io.vertx.core.http.impl.Http1xServerConnection.metrics:Lio/vertx/core/spi/metrics/HttpServerMetrics;
aload 0
invokevirtual io.vertx.core.http.impl.Http1xServerConnection.metric:()Ljava/lang/Object;
aload 1
invokevirtual io.vertx.core.http.impl.Http1xServerRequest.metric:()Ljava/lang/Object;
aload 0
getfield io.vertx.core.http.impl.Http1xServerConnection.webSocket:Lio/vertx/core/http/impl/WebSocketImplBase;
checkcast io.vertx.core.http.ServerWebSocket
invokeinterface io.vertx.core.spi.metrics.HttpServerMetrics.connected:(Ljava/lang/Object;Ljava/lang/Object;Lio/vertx/core/http/ServerWebSocket;)Ljava/lang/Object;
invokevirtual io.vertx.core.http.impl.ServerWebSocketImpl.setMetric:(Ljava/lang/Object;)V
21: StackMap locals:
StackMap stack:
aload 2
aload 0
getfield io.vertx.core.http.impl.Http1xServerConnection.webSocket:Lio/vertx/core/http/impl/WebSocketImplBase;
checkcast io.vertx.core.http.ServerWebSocket
invokeinterface io.vertx.core.impl.future.PromiseInternal.complete:(Ljava/lang/Object;)V
end local 3 22: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 23 0 this Lio/vertx/core/http/impl/Http1xServerConnection;
10 11 3 handshaker Lio/netty/handler/codec/http/websocketx/WebSocketServerHandshaker;
14 22 3 handshaker Lio/netty/handler/codec/http/websocketx/WebSocketServerHandshaker;
12 14 4 e Lio/netty/handler/codec/http/websocketx/WebSocketHandshakeException;
Exception table:
from to target type
9 10 11 Class io.netty.handler.codec.http.websocketx.WebSocketHandshakeException
private void lambda$5(io.vertx.core.Promise);
descriptor: (Lio/vertx/core/Promise;)V
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=4, locals=5, args_size=2
start local 0 0: aload 0
invokevirtual io.vertx.core.http.impl.Http1xServerConnection.flush:()V
1: aload 0
getfield io.vertx.core.http.impl.Http1xServerConnection.chctx:Lio/netty/channel/ChannelHandlerContext;
invokeinterface io.netty.channel.ChannelHandlerContext.pipeline:()Lio/netty/channel/ChannelPipeline;
astore 2
start local 2 2: aload 2
ldc Lio/vertx/core/http/impl/HttpChunkContentCompressor;
invokeinterface io.netty.channel.ChannelPipeline.get:(Ljava/lang/Class;)Lio/netty/channel/ChannelHandler;
astore 3
start local 3 3: aload 3
ifnull 5
4: aload 2
aload 3
invokeinterface io.netty.channel.ChannelPipeline.remove:(Lio/netty/channel/ChannelHandler;)Lio/netty/channel/ChannelPipeline;
pop
5: StackMap locals: io.netty.channel.ChannelPipeline io.netty.channel.ChannelHandler
StackMap stack:
aload 2
ldc "httpDecoder"
invokeinterface io.netty.channel.ChannelPipeline.remove:(Ljava/lang/String;)Lio/netty/channel/ChannelHandler;
pop
6: aload 2
ldc "chunkedWriter"
invokeinterface io.netty.channel.ChannelPipeline.get:(Ljava/lang/String;)Lio/netty/channel/ChannelHandler;
ifnull 8
7: aload 2
ldc "chunkedWriter"
invokeinterface io.netty.channel.ChannelPipeline.remove:(Ljava/lang/String;)Lio/netty/channel/ChannelHandler;
pop
8: StackMap locals:
StackMap stack:
aload 2
ldc "handler"
ldc "handler"
aload 0
invokedynamic apply(Lio/vertx/core/http/impl/Http1xServerConnection;)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;
io/vertx/core/http/impl/Http1xServerConnection.lambda$6(Lio/netty/channel/ChannelHandlerContext;)Lio/vertx/core/net/impl/NetSocketImpl; (7)
(Lio/netty/channel/ChannelHandlerContext;)Lio/vertx/core/net/impl/NetSocketImpl;
invokestatic io.vertx.core.net.impl.VertxHandler.create:(Ljava/util/function/Function;)Lio/vertx/core/net/impl/VertxHandler;
invokeinterface io.netty.channel.ChannelPipeline.replace:(Ljava/lang/String;Ljava/lang/String;Lio/netty/channel/ChannelHandler;)Lio/netty/channel/ChannelHandler;
pop
9: aload 2
ldc "httpEncoder"
invokeinterface io.netty.channel.ChannelPipeline.remove:(Ljava/lang/String;)Lio/netty/channel/ChannelHandler;
pop
10: aload 2
ldc "handler"
invokeinterface io.netty.channel.ChannelPipeline.get:(Ljava/lang/String;)Lio/netty/channel/ChannelHandler;
checkcast io.vertx.core.net.impl.VertxHandler
astore 4
start local 4 11: aload 1
aload 4
invokevirtual io.vertx.core.net.impl.VertxHandler.getConnection:()Lio/vertx/core/net/impl/ConnectionBase;
checkcast io.vertx.core.net.NetSocket
invokeinterface io.vertx.core.Promise.complete:(Ljava/lang/Object;)V
end local 4 end local 3 end local 2 12: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lio/vertx/core/http/impl/Http1xServerConnection;
2 12 2 pipeline Lio/netty/channel/ChannelPipeline;
3 12 3 compressor Lio/netty/channel/ChannelHandler;
11 12 4 handler Lio/vertx/core/net/impl/VertxHandler<Lio/vertx/core/net/impl/NetSocketImpl;>;
private static void lambda$9(io.vertx.core.http.impl.Http1xServerRequest, java.lang.Void);
descriptor: (Lio/vertx/core/http/impl/Http1xServerRequest;Ljava/lang/Void;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
start local 1 0: aload 0
getstatic io.vertx.core.http.impl.Http1xServerConnection.CLOSED_EXCEPTION:Lio/vertx/core/VertxException;
invokevirtual io.vertx.core.http.impl.Http1xServerRequest.handleException:(Ljava/lang/Throwable;)V
1: return
end local 1 LocalVariableTable:
Start End Slot Name Signature
0 2 1 v Ljava/lang/Void;
private static void lambda$10(io.vertx.core.http.impl.Http1xServerRequest, java.lang.Void);
descriptor: (Lio/vertx/core/http/impl/Http1xServerRequest;Ljava/lang/Void;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
start local 1 0: aload 0
getstatic io.vertx.core.http.impl.Http1xServerConnection.CLOSED_EXCEPTION:Lio/vertx/core/VertxException;
invokevirtual io.vertx.core.http.impl.Http1xServerRequest.handleException:(Ljava/lang/Throwable;)V
1: return
end local 1 LocalVariableTable:
Start End Slot Name Signature
0 2 1 v Ljava/lang/Void;
private static void lambda$11(io.vertx.core.http.impl.ServerWebSocketImpl, java.lang.Void);
descriptor: (Lio/vertx/core/http/impl/ServerWebSocketImpl;Ljava/lang/Void;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=1, locals=2, args_size=2
start local 1 0: aload 0
invokevirtual io.vertx.core.http.impl.ServerWebSocketImpl.handleConnectionClosed:()V
return
end local 1 LocalVariableTable:
Start End Slot Name Signature
0 1 1 v Ljava/lang/Void;
private static void lambda$12(io.vertx.core.http.impl.ServerWebSocketImpl, java.lang.Throwable, java.lang.Void);
descriptor: (Lio/vertx/core/http/impl/ServerWebSocketImpl;Ljava/lang/Throwable;Ljava/lang/Void;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=3, args_size=3
start local 2 0: aload 0
aload 1
invokevirtual io.vertx.core.http.impl.ServerWebSocketImpl.handleException:(Ljava/lang/Throwable;)V
return
end local 2 LocalVariableTable:
Start End Slot Name Signature
0 1 2 v Ljava/lang/Void;
private void lambda$13(io.netty.handler.codec.DecoderResult, io.netty.util.concurrent.Future);
descriptor: (Lio/netty/handler/codec/DecoderResult;Lio/netty/util/concurrent/Future;)V
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=2, locals=3, args_size=3
start local 0 start local 2 0: aload 0
aload 1
invokevirtual io.netty.handler.codec.DecoderResult.cause:()Ljava/lang/Throwable;
invokevirtual io.vertx.core.http.impl.Http1xServerConnection.fail:(Ljava/lang/Throwable;)V
1: return
end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/vertx/core/http/impl/Http1xServerConnection;
0 2 2 res Lio/netty/util/concurrent/Future<-Ljava/lang/Void;>;
Exceptions:
throws java.lang.Exception
private io.vertx.core.net.impl.NetSocketImpl lambda$6(io.netty.channel.ChannelHandlerContext);
descriptor: (Lio/netty/channel/ChannelHandlerContext;)Lio/vertx/core/net/impl/NetSocketImpl;
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=7, locals=3, args_size=2
start local 0 start local 1 0: new io.vertx.core.http.impl.Http1xServerConnection$3
dup
aload 0
aload 0
getfield io.vertx.core.http.impl.Http1xServerConnection.context:Lio/vertx/core/impl/ContextInternal;
aload 1
aload 0
getfield io.vertx.core.http.impl.Http1xServerConnection.sslHelper:Lio/vertx/core/net/impl/SSLHelper;
aload 0
getfield io.vertx.core.http.impl.Http1xServerConnection.metrics:Lio/vertx/core/spi/metrics/HttpServerMetrics;
invokespecial io.vertx.core.http.impl.Http1xServerConnection$3.<init>:(Lio/vertx/core/http/impl/Http1xServerConnection;Lio/vertx/core/impl/ContextInternal;Lio/netty/channel/ChannelHandlerContext;Lio/vertx/core/net/impl/SSLHelper;Lio/vertx/core/spi/metrics/TCPMetrics;)V
astore 2
start local 2 1: aload 2
aload 0
invokevirtual io.vertx.core.http.impl.Http1xServerConnection.metric:()Ljava/lang/Object;
invokevirtual io.vertx.core.net.impl.NetSocketImpl.metric:(Ljava/lang/Object;)V
2: aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lio/vertx/core/http/impl/Http1xServerConnection;
0 3 1 ctx Lio/netty/channel/ChannelHandlerContext;
1 3 2 socket Lio/vertx/core/net/impl/NetSocketImpl;
}
Signature: Lio/vertx/core/http/impl/Http1xConnectionBase<Lio/vertx/core/http/impl/ServerWebSocketImpl;>;Lio/vertx/core/http/impl/HttpServerConnection;
SourceFile: "Http1xServerConnection.java"
NestMembers:
io.vertx.core.http.impl.Http1xServerConnection$1 io.vertx.core.http.impl.Http1xServerConnection$2 io.vertx.core.http.impl.Http1xServerConnection$3 io.vertx.core.http.impl.Http1xServerConnection$4
InnerClasses:
public final Builder = io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder of io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig
io.vertx.core.http.impl.Http1xServerConnection$3
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
public abstract Entry = java.util.Map$Entry of java.util.Map