public abstract class io.vertx.core.net.impl.ConnectionBase
minor version: 0
major version: 59
flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
this_class: io.vertx.core.net.impl.ConnectionBase
super_class: java.lang.Object
{
private static final long METRICS_REPORTED_BYTES_LOW_MASK;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 4095
private static final long METRICS_REPORTED_BYTES_HIGH_MASK;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: -4096
public static final io.vertx.core.VertxException CLOSED_EXCEPTION;
descriptor: Lio/vertx/core/VertxException;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final io.netty.util.AttributeKey<io.vertx.core.net.SocketAddress> REMOTE_ADDRESS_OVERRIDE;
descriptor: Lio/netty/util/AttributeKey;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
Signature: Lio/netty/util/AttributeKey<Lio/vertx/core/net/SocketAddress;>;
public static final io.netty.util.AttributeKey<io.vertx.core.net.SocketAddress> LOCAL_ADDRESS_OVERRIDE;
descriptor: Lio/netty/util/AttributeKey;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
Signature: Lio/netty/util/AttributeKey<Lio/vertx/core/net/SocketAddress;>;
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 static final int MAX_REGION_SIZE;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 1048576
public final io.netty.channel.VoidChannelPromise voidPromise;
descriptor: Lio/netty/channel/VoidChannelPromise;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
protected final io.vertx.core.impl.VertxInternal vertx;
descriptor: Lio/vertx/core/impl/VertxInternal;
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
protected final io.netty.channel.ChannelHandlerContext chctx;
descriptor: Lio/netty/channel/ChannelHandlerContext;
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
protected final io.vertx.core.impl.ContextInternal context;
descriptor: Lio/vertx/core/impl/ContextInternal;
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
private io.vertx.core.Handler<java.lang.Throwable> exceptionHandler;
descriptor: Lio/vertx/core/Handler;
flags: (0x0002) ACC_PRIVATE
Signature: Lio/vertx/core/Handler<Ljava/lang/Throwable;>;
private io.vertx.core.Handler<java.lang.Void> closeHandler;
descriptor: Lio/vertx/core/Handler;
flags: (0x0002) ACC_PRIVATE
Signature: Lio/vertx/core/Handler<Ljava/lang/Void;>;
private int writeInProgress;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private java.lang.Object metric;
descriptor: Ljava/lang/Object;
flags: (0x0002) ACC_PRIVATE
private io.vertx.core.net.SocketAddress remoteAddress;
descriptor: Lio/vertx/core/net/SocketAddress;
flags: (0x0002) ACC_PRIVATE
private io.vertx.core.net.SocketAddress localAddress;
descriptor: Lio/vertx/core/net/SocketAddress;
flags: (0x0002) ACC_PRIVATE
private io.netty.channel.ChannelPromise closePromise;
descriptor: Lio/netty/channel/ChannelPromise;
flags: (0x0002) ACC_PRIVATE
private io.vertx.core.Future<java.lang.Void> closeFuture;
descriptor: Lio/vertx/core/Future;
flags: (0x0002) ACC_PRIVATE
Signature: Lio/vertx/core/Future<Ljava/lang/Void;>;
private long remainingBytesRead;
descriptor: J
flags: (0x0002) ACC_PRIVATE
private long remainingBytesWritten;
descriptor: J
flags: (0x0002) ACC_PRIVATE
private boolean read;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private boolean needsFlush;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private boolean closed;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=0, args_size=0
0: new io.vertx.core.VertxException
dup
ldc "Connection was closed"
iconst_1
invokespecial io.vertx.core.VertxException.<init>:(Ljava/lang/String;Z)V
putstatic io.vertx.core.net.impl.ConnectionBase.CLOSED_EXCEPTION:Lio/vertx/core/VertxException;
1: ldc "RemoteAddressOverride"
invokestatic io.netty.util.AttributeKey.valueOf:(Ljava/lang/String;)Lio/netty/util/AttributeKey;
putstatic io.vertx.core.net.impl.ConnectionBase.REMOTE_ADDRESS_OVERRIDE:Lio/netty/util/AttributeKey;
2: ldc "LocalAddressOverride"
invokestatic io.netty.util.AttributeKey.valueOf:(Ljava/lang/String;)Lio/netty/util/AttributeKey;
putstatic io.vertx.core.net.impl.ConnectionBase.LOCAL_ADDRESS_OVERRIDE:Lio/netty/util/AttributeKey;
3: ldc Lio/vertx/core/net/impl/ConnectionBase;
invokestatic io.vertx.core.impl.logging.LoggerFactory.getLogger:(Ljava/lang/Class;)Lio/vertx/core/impl/logging/Logger;
putstatic io.vertx.core.net.impl.ConnectionBase.log:Lio/vertx/core/impl/logging/Logger;
4: return
LocalVariableTable:
Start End Slot Name Signature
protected void <init>(io.vertx.core.impl.ContextInternal, io.netty.channel.ChannelHandlerContext);
descriptor: (Lio/vertx/core/impl/ContextInternal;Lio/netty/channel/ChannelHandlerContext;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=5, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 1
invokeinterface io.vertx.core.impl.ContextInternal.owner:()Lio/vertx/core/impl/VertxInternal;
putfield io.vertx.core.net.impl.ConnectionBase.vertx:Lio/vertx/core/impl/VertxInternal;
2: aload 0
aload 2
putfield io.vertx.core.net.impl.ConnectionBase.chctx:Lio/netty/channel/ChannelHandlerContext;
3: aload 0
aload 1
putfield io.vertx.core.net.impl.ConnectionBase.context:Lio/vertx/core/impl/ContextInternal;
4: aload 0
new io.netty.channel.VoidChannelPromise
dup
aload 2
invokeinterface io.netty.channel.ChannelHandlerContext.channel:()Lio/netty/channel/Channel;
iconst_0
invokespecial io.netty.channel.VoidChannelPromise.<init>:(Lio/netty/channel/Channel;Z)V
putfield io.vertx.core.net.impl.ConnectionBase.voidPromise:Lio/netty/channel/VoidChannelPromise;
5: aload 0
aload 2
invokeinterface io.netty.channel.ChannelHandlerContext.newPromise:()Lio/netty/channel/ChannelPromise;
putfield io.vertx.core.net.impl.ConnectionBase.closePromise:Lio/netty/channel/ChannelPromise;
6: aload 1
invokeinterface io.vertx.core.impl.ContextInternal.promise:()Lio/vertx/core/impl/future/PromiseInternal;
astore 3
start local 3 7: aload 0
getfield io.vertx.core.net.impl.ConnectionBase.closePromise:Lio/netty/channel/ChannelPromise;
aload 3
invokeinterface io.netty.channel.ChannelPromise.addListener:(Lio/netty/util/concurrent/GenericFutureListener;)Lio/netty/channel/ChannelPromise;
pop
8: aload 0
aload 3
invokeinterface io.vertx.core.impl.future.PromiseInternal.future:()Lio/vertx/core/Future;
putfield io.vertx.core.net.impl.ConnectionBase.closeFuture:Lio/vertx/core/Future;
9: aload 0
getfield io.vertx.core.net.impl.ConnectionBase.closeFuture:Lio/vertx/core/Future;
aload 0
invokedynamic handle(Lio/vertx/core/net/impl/ConnectionBase;)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/net/impl/ConnectionBase.checkCloseHandler(Lio/vertx/core/AsyncResult;)V (7)
(Lio/vertx/core/AsyncResult;)V
invokeinterface io.vertx.core.Future.onComplete:(Lio/vertx/core/Handler;)Lio/vertx/core/Future;
pop
10: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lio/vertx/core/net/impl/ConnectionBase;
0 11 1 context Lio/vertx/core/impl/ContextInternal;
0 11 2 chctx Lio/netty/channel/ChannelHandlerContext;
7 11 3 p Lio/vertx/core/impl/future/PromiseInternal<Ljava/lang/Void;>;
MethodParameters:
Name Flags
context
chctx
public io.vertx.core.Future<java.lang.Void> closeFuture();
descriptor: ()Lio/vertx/core/Future;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield io.vertx.core.net.impl.ConnectionBase.closeFuture:Lio/vertx/core/Future;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/vertx/core/net/impl/ConnectionBase;
Signature: ()Lio/vertx/core/Future<Ljava/lang/Void;>;
public void fail(java.lang.Throwable);
descriptor: (Ljava/lang/Throwable;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield io.vertx.core.net.impl.ConnectionBase.chctx:Lio/netty/channel/ChannelHandlerContext;
invokeinterface io.netty.channel.ChannelHandlerContext.pipeline:()Lio/netty/channel/ChannelPipeline;
aload 1
invokeinterface io.netty.channel.ChannelPipeline.fireExceptionCaught:(Ljava/lang/Throwable;)Lio/netty/channel/ChannelPipeline;
pop
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/vertx/core/net/impl/ConnectionBase;
0 2 1 error Ljava/lang/Throwable;
MethodParameters:
Name Flags
error
void close(io.netty.channel.ChannelPromise);
descriptor: (Lio/netty/channel/ChannelPromise;)V
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield io.vertx.core.net.impl.ConnectionBase.closePromise:Lio/netty/channel/ChannelPromise;
aload 1
invokedynamic operationComplete(Lio/netty/channel/ChannelPromise;)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/net/impl/ConnectionBase.lambda$1(Lio/netty/channel/ChannelPromise;Lio/netty/util/concurrent/Future;)V (6)
(Lio/netty/util/concurrent/Future;)V
invokeinterface io.netty.channel.ChannelPromise.addListener:(Lio/netty/util/concurrent/GenericFutureListener;)Lio/netty/channel/ChannelPromise;
pop
1: aload 0
invokevirtual io.vertx.core.net.impl.ConnectionBase.close:()Lio/vertx/core/Future;
pop
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lio/vertx/core/net/impl/ConnectionBase;
0 3 1 promise Lio/netty/channel/ChannelPromise;
MethodParameters:
Name Flags
promise
final void endReadAndFlush();
descriptor: ()V
flags: (0x0010) ACC_FINAL
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield io.vertx.core.net.impl.ConnectionBase.read:Z
ifeq 5
1: aload 0
iconst_0
putfield io.vertx.core.net.impl.ConnectionBase.read:Z
2: aload 0
getfield io.vertx.core.net.impl.ConnectionBase.needsFlush:Z
ifeq 5
3: aload 0
iconst_0
putfield io.vertx.core.net.impl.ConnectionBase.needsFlush:Z
4: aload 0
getfield io.vertx.core.net.impl.ConnectionBase.chctx:Lio/netty/channel/ChannelHandlerContext;
invokeinterface io.netty.channel.ChannelHandlerContext.flush:()Lio/netty/channel/ChannelHandlerContext;
pop
5: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lio/vertx/core/net/impl/ConnectionBase;
final void read(java.lang.Object);
descriptor: (Ljava/lang/Object;)V
flags: (0x0010) ACC_FINAL
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iconst_1
putfield io.vertx.core.net.impl.ConnectionBase.read:Z
1: aload 0
getfield io.vertx.core.net.impl.ConnectionBase.closed:Z
ifne 5
2: getstatic io.vertx.core.spi.metrics.Metrics.METRICS_ENABLED:Z
ifeq 4
3: aload 0
aload 1
invokevirtual io.vertx.core.net.impl.ConnectionBase.reportBytesRead:(Ljava/lang/Object;)V
4: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual io.vertx.core.net.impl.ConnectionBase.handleMessage:(Ljava/lang/Object;)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/net/impl/ConnectionBase;
0 6 1 msg Ljava/lang/Object;
MethodParameters:
Name Flags
msg
private void write(java.lang.Object, java.lang.Boolean, io.netty.channel.ChannelPromise);
descriptor: (Ljava/lang/Object;Ljava/lang/Boolean;Lio/netty/channel/ChannelPromise;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: getstatic io.vertx.core.spi.metrics.Metrics.METRICS_ENABLED:Z
ifeq 2
1: aload 0
aload 1
invokevirtual io.vertx.core.net.impl.ConnectionBase.reportsBytesWritten:(Ljava/lang/Object;)V
2: StackMap locals:
StackMap stack:
aload 2
ifnonnull 7
3: aload 0
getfield io.vertx.core.net.impl.ConnectionBase.read:Z
ifeq 4
iconst_0
goto 5
StackMap locals:
StackMap stack:
4: iconst_1
StackMap locals:
StackMap stack: int
5: istore 4
start local 4 6: goto 8
end local 4 7: StackMap locals:
StackMap stack:
aload 2
invokevirtual java.lang.Boolean.booleanValue:()Z
istore 4
start local 4 8: StackMap locals: int
StackMap stack:
aload 0
iload 4
ifeq 9
iconst_0
goto 10
StackMap locals:
StackMap stack: io.vertx.core.net.impl.ConnectionBase
9: iconst_1
StackMap locals: io.vertx.core.net.impl.ConnectionBase java.lang.Object java.lang.Boolean io.netty.channel.ChannelPromise int
StackMap stack: io.vertx.core.net.impl.ConnectionBase int
10: putfield io.vertx.core.net.impl.ConnectionBase.needsFlush:Z
11: iload 4
ifeq 14
12: aload 0
getfield io.vertx.core.net.impl.ConnectionBase.chctx:Lio/netty/channel/ChannelHandlerContext;
aload 1
aload 3
invokeinterface io.netty.channel.ChannelHandlerContext.writeAndFlush:(Ljava/lang/Object;Lio/netty/channel/ChannelPromise;)Lio/netty/channel/ChannelFuture;
pop
13: goto 15
14: StackMap locals:
StackMap stack:
aload 0
getfield io.vertx.core.net.impl.ConnectionBase.chctx:Lio/netty/channel/ChannelHandlerContext;
aload 1
aload 3
invokeinterface io.netty.channel.ChannelHandlerContext.write:(Ljava/lang/Object;Lio/netty/channel/ChannelPromise;)Lio/netty/channel/ChannelFuture;
pop
15: 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 16 0 this Lio/vertx/core/net/impl/ConnectionBase;
0 16 1 msg Ljava/lang/Object;
0 16 2 flush Ljava/lang/Boolean;
0 16 3 promise Lio/netty/channel/ChannelPromise;
6 7 4 writeAndFlush Z
8 16 4 writeAndFlush Z
MethodParameters:
Name Flags
msg
flush
promise
private void writeClose(io.vertx.core.impl.future.PromiseInternal<java.lang.Void>);
descriptor: (Lio/vertx/core/impl/future/PromiseInternal;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield io.vertx.core.net.impl.ConnectionBase.closed:Z
ifeq 3
1: aload 1
invokeinterface io.vertx.core.impl.future.PromiseInternal.complete:()V
2: return
3: StackMap locals:
StackMap stack:
aload 0
iconst_1
putfield io.vertx.core.net.impl.ConnectionBase.closed:Z
4: aload 0
getfield io.vertx.core.net.impl.ConnectionBase.chctx:Lio/netty/channel/ChannelHandlerContext;
5: invokeinterface io.netty.channel.ChannelHandlerContext.newPromise:()Lio/netty/channel/ChannelPromise;
6: aload 0
aload 1
invokedynamic operationComplete(Lio/vertx/core/net/impl/ConnectionBase;Lio/vertx/core/impl/future/PromiseInternal;)Lio/netty/channel/ChannelFutureListener;
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/net/impl/ConnectionBase.lambda$2(Lio/vertx/core/impl/future/PromiseInternal;Lio/netty/channel/ChannelFuture;)V (7)
(Lio/netty/channel/ChannelFuture;)V
invokeinterface io.netty.channel.ChannelPromise.addListener:(Lio/netty/util/concurrent/GenericFutureListener;)Lio/netty/channel/ChannelPromise;
7: astore 2
start local 2 8: aload 0
getstatic io.netty.buffer.Unpooled.EMPTY_BUFFER:Lio/netty/buffer/ByteBuf;
iconst_1
aload 2
invokevirtual io.vertx.core.net.impl.ConnectionBase.writeToChannel:(Ljava/lang/Object;ZLio/netty/channel/ChannelPromise;)V
9: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lio/vertx/core/net/impl/ConnectionBase;
0 10 1 promise Lio/vertx/core/impl/future/PromiseInternal<Ljava/lang/Void;>;
8 10 2 channelPromise Lio/netty/channel/ChannelPromise;
Signature: (Lio/vertx/core/impl/future/PromiseInternal<Ljava/lang/Void;>;)V
MethodParameters:
Name Flags
promise
private io.netty.channel.ChannelPromise wrap(io.netty.util.concurrent.FutureListener<java.lang.Void>);
descriptor: (Lio/netty/util/concurrent/FutureListener;)Lio/netty/channel/ChannelPromise;
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield io.vertx.core.net.impl.ConnectionBase.chctx:Lio/netty/channel/ChannelHandlerContext;
invokeinterface io.netty.channel.ChannelHandlerContext.newPromise:()Lio/netty/channel/ChannelPromise;
astore 2
start local 2 1: aload 2
aload 1
invokeinterface io.netty.channel.ChannelPromise.addListener:(Lio/netty/util/concurrent/GenericFutureListener;)Lio/netty/channel/ChannelPromise;
pop
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/net/impl/ConnectionBase;
0 3 1 handler Lio/netty/util/concurrent/FutureListener<Ljava/lang/Void;>;
1 3 2 promise Lio/netty/channel/ChannelPromise;
Signature: (Lio/netty/util/concurrent/FutureListener<Ljava/lang/Void;>;)Lio/netty/channel/ChannelPromise;
MethodParameters:
Name Flags
handler
public final void writeToChannel(, io.netty.util.concurrent.FutureListener<java.lang.Void>);
descriptor: (Ljava/lang/Object;Lio/netty/util/concurrent/FutureListener;)V
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
ifnonnull 1
aload 0
getfield io.vertx.core.net.impl.ConnectionBase.voidPromise:Lio/netty/channel/VoidChannelPromise;
goto 2
StackMap locals: io.vertx.core.net.impl.ConnectionBase java.lang.Object io.netty.util.concurrent.FutureListener
StackMap stack: io.vertx.core.net.impl.ConnectionBase java.lang.Object
1: aload 0
aload 2
invokevirtual io.vertx.core.net.impl.ConnectionBase.wrap:(Lio/netty/util/concurrent/FutureListener;)Lio/netty/channel/ChannelPromise;
StackMap locals: io.vertx.core.net.impl.ConnectionBase java.lang.Object io.netty.util.concurrent.FutureListener
StackMap stack: io.vertx.core.net.impl.ConnectionBase java.lang.Object io.netty.channel.ChannelPromise
2: invokevirtual io.vertx.core.net.impl.ConnectionBase.writeToChannel:(Ljava/lang/Object;Lio/netty/channel/ChannelPromise;)V
3: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lio/vertx/core/net/impl/ConnectionBase;
0 4 1 msg Ljava/lang/Object;
0 4 2 listener Lio/netty/util/concurrent/FutureListener<Ljava/lang/Void;>;
Signature: (Ljava/lang/Object;Lio/netty/util/concurrent/FutureListener<Ljava/lang/Void;>;)V
MethodParameters:
Name Flags
msg
listener
public final void writeToChannel(java.lang.Object, io.netty.channel.ChannelPromise);
descriptor: (Ljava/lang/Object;Lio/netty/channel/ChannelPromise;)V
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
iconst_0
aload 2
invokevirtual io.vertx.core.net.impl.ConnectionBase.writeToChannel:(Ljava/lang/Object;ZLio/netty/channel/ChannelPromise;)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/net/impl/ConnectionBase;
0 2 1 msg Ljava/lang/Object;
0 2 2 promise Lio/netty/channel/ChannelPromise;
MethodParameters:
Name Flags
msg
promise
public final void writeToChannel(java.lang.Object, boolean, io.netty.channel.ChannelPromise);
descriptor: (Ljava/lang/Object;ZLio/netty/channel/ChannelPromise;)V
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=4, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
dup
astore 4
monitorenter
1: aload 0
getfield io.vertx.core.net.impl.ConnectionBase.chctx:Lio/netty/channel/ChannelHandlerContext;
invokeinterface io.netty.channel.ChannelHandlerContext.executor:()Lio/netty/util/concurrent/EventExecutor;
invokeinterface io.netty.util.concurrent.EventExecutor.inEventLoop:()Z
ifeq 2
aload 0
getfield io.vertx.core.net.impl.ConnectionBase.writeInProgress:I
ifle 5
2: StackMap locals: io.vertx.core.net.impl.ConnectionBase
StackMap stack:
aload 0
aload 1
iload 2
aload 3
invokevirtual io.vertx.core.net.impl.ConnectionBase.queueForWrite:(Ljava/lang/Object;ZLio/netty/channel/ChannelPromise;)V
3: aload 4
monitorexit
4: return
5: StackMap locals:
StackMap stack:
aload 4
monitorexit
6: goto 9
StackMap locals:
StackMap stack: java.lang.Throwable
7: aload 4
monitorexit
8: athrow
9: StackMap locals:
StackMap stack:
aload 0
aload 1
iload 2
ifeq 10
iconst_1
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
goto 11
StackMap locals: io.vertx.core.net.impl.ConnectionBase java.lang.Object int io.netty.channel.ChannelPromise
StackMap stack: io.vertx.core.net.impl.ConnectionBase java.lang.Object
10: aconst_null
StackMap locals: io.vertx.core.net.impl.ConnectionBase java.lang.Object int io.netty.channel.ChannelPromise
StackMap stack: io.vertx.core.net.impl.ConnectionBase java.lang.Object java.lang.Boolean
11: aload 3
invokevirtual io.vertx.core.net.impl.ConnectionBase.write:(Ljava/lang/Object;Ljava/lang/Boolean;Lio/netty/channel/ChannelPromise;)V
12: 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/net/impl/ConnectionBase;
0 13 1 msg Ljava/lang/Object;
0 13 2 forceFlush Z
0 13 3 promise Lio/netty/channel/ChannelPromise;
Exception table:
from to target type
1 4 7 any
5 6 7 any
7 8 7 any
MethodParameters:
Name Flags
msg
forceFlush
promise
private void queueForWrite(java.lang.Object, boolean, io.netty.channel.ChannelPromise);
descriptor: (Ljava/lang/Object;ZLio/netty/channel/ChannelPromise;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
dup
getfield io.vertx.core.net.impl.ConnectionBase.writeInProgress:I
iconst_1
iadd
putfield io.vertx.core.net.impl.ConnectionBase.writeInProgress:I
1: aload 0
getfield io.vertx.core.net.impl.ConnectionBase.chctx:Lio/netty/channel/ChannelHandlerContext;
invokeinterface io.netty.channel.ChannelHandlerContext.executor:()Lio/netty/util/concurrent/EventExecutor;
aload 0
iload 2
aload 1
aload 3
invokedynamic run(Lio/vertx/core/net/impl/ConnectionBase;ZLjava/lang/Object;Lio/netty/channel/ChannelPromise;)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/net/impl/ConnectionBase.lambda$3(ZLjava/lang/Object;Lio/netty/channel/ChannelPromise;)V (7)
()V
invokeinterface io.netty.util.concurrent.EventExecutor.execute:(Ljava/lang/Runnable;)V
2: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lio/vertx/core/net/impl/ConnectionBase;
0 3 1 msg Ljava/lang/Object;
0 3 2 forceFlush Z
0 3 3 promise Lio/netty/channel/ChannelPromise;
MethodParameters:
Name Flags
msg
forceFlush
promise
public void writeToChannel(java.lang.Object);
descriptor: (Ljava/lang/Object;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
aload 0
getfield io.vertx.core.net.impl.ConnectionBase.voidPromise:Lio/netty/channel/VoidChannelPromise;
invokevirtual io.vertx.core.net.impl.ConnectionBase.writeToChannel:(Ljava/lang/Object;Lio/netty/channel/ChannelPromise;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/vertx/core/net/impl/ConnectionBase;
0 2 1 obj Ljava/lang/Object;
MethodParameters:
Name Flags
obj
public final void flush();
descriptor: ()V
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
aload 0
getfield io.vertx.core.net.impl.ConnectionBase.voidPromise:Lio/netty/channel/VoidChannelPromise;
invokevirtual io.vertx.core.net.impl.ConnectionBase.flush:(Lio/netty/channel/ChannelPromise;)V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/vertx/core/net/impl/ConnectionBase;
public final void flush(io.netty.channel.ChannelPromise);
descriptor: (Lio/netty/channel/ChannelPromise;)V
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getstatic io.netty.buffer.Unpooled.EMPTY_BUFFER:Lio/netty/buffer/ByteBuf;
iconst_1
aload 1
invokevirtual io.vertx.core.net.impl.ConnectionBase.writeToChannel:(Ljava/lang/Object;ZLio/netty/channel/ChannelPromise;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/vertx/core/net/impl/ConnectionBase;
0 2 1 promise Lio/netty/channel/ChannelPromise;
MethodParameters:
Name Flags
promise
public boolean isNotWritable();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield io.vertx.core.net.impl.ConnectionBase.chctx:Lio/netty/channel/ChannelHandlerContext;
invokeinterface io.netty.channel.ChannelHandlerContext.channel:()Lio/netty/channel/Channel;
invokeinterface io.netty.channel.Channel.isWritable:()Z
ifeq 1
iconst_0
goto 2
StackMap locals:
StackMap stack:
1: iconst_1
StackMap locals:
StackMap stack: int
2: ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lio/vertx/core/net/impl/ConnectionBase;
public io.vertx.core.Future<java.lang.Void> close();
descriptor: ()Lio/vertx/core/Future;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=1
start local 0 0: aload 0
getfield io.vertx.core.net.impl.ConnectionBase.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
getfield io.vertx.core.net.impl.ConnectionBase.chctx:Lio/netty/channel/ChannelHandlerContext;
invokeinterface io.netty.channel.ChannelHandlerContext.executor:()Lio/netty/util/concurrent/EventExecutor;
astore 2
start local 2 2: aload 2
invokeinterface io.netty.util.concurrent.EventExecutor.inEventLoop:()Z
ifeq 5
3: aload 0
aload 1
invokevirtual io.vertx.core.net.impl.ConnectionBase.writeClose:(Lio/vertx/core/impl/future/PromiseInternal;)V
4: goto 6
5: StackMap locals: io.vertx.core.impl.future.PromiseInternal io.netty.util.concurrent.EventExecutor
StackMap stack:
aload 2
aload 0
aload 1
invokedynamic run(Lio/vertx/core/net/impl/ConnectionBase;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/net/impl/ConnectionBase.lambda$4(Lio/vertx/core/impl/future/PromiseInternal;)V (7)
()V
invokeinterface io.netty.util.concurrent.EventExecutor.execute:(Ljava/lang/Runnable;)V
6: StackMap locals:
StackMap stack:
aload 1
invokeinterface io.vertx.core.impl.future.PromiseInternal.future:()Lio/vertx/core/Future;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lio/vertx/core/net/impl/ConnectionBase;
1 7 1 promise Lio/vertx/core/impl/future/PromiseInternal<Ljava/lang/Void;>;
2 7 2 exec Lio/netty/util/concurrent/EventExecutor;
Signature: ()Lio/vertx/core/Future<Ljava/lang/Void;>;
public final void close(io.vertx.core.Handler<io.vertx.core.AsyncResult<java.lang.Void>>);
descriptor: (Lio/vertx/core/Handler;)V
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual io.vertx.core.net.impl.ConnectionBase.close:()Lio/vertx/core/Future;
aload 1
invokeinterface io.vertx.core.Future.onComplete:(Lio/vertx/core/Handler;)Lio/vertx/core/Future;
pop
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/vertx/core/net/impl/ConnectionBase;
0 2 1 handler Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Ljava/lang/Void;>;>;
Signature: (Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Ljava/lang/Void;>;>;)V
MethodParameters:
Name Flags
handler
public synchronized io.vertx.core.net.impl.ConnectionBase closeHandler(io.vertx.core.Handler<java.lang.Void>);
descriptor: (Lio/vertx/core/Handler;)Lio/vertx/core/net/impl/ConnectionBase;
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield io.vertx.core.net.impl.ConnectionBase.closeHandler: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/net/impl/ConnectionBase;
0 2 1 handler Lio/vertx/core/Handler<Ljava/lang/Void;>;
Signature: (Lio/vertx/core/Handler<Ljava/lang/Void;>;)Lio/vertx/core/net/impl/ConnectionBase;
MethodParameters:
Name Flags
handler
public synchronized io.vertx.core.net.impl.ConnectionBase exceptionHandler(io.vertx.core.Handler<java.lang.Throwable>);
descriptor: (Lio/vertx/core/Handler;)Lio/vertx/core/net/impl/ConnectionBase;
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield io.vertx.core.net.impl.ConnectionBase.exceptionHandler: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/net/impl/ConnectionBase;
0 2 1 handler Lio/vertx/core/Handler<Ljava/lang/Throwable;>;
Signature: (Lio/vertx/core/Handler<Ljava/lang/Throwable;>;)Lio/vertx/core/net/impl/ConnectionBase;
MethodParameters:
Name Flags
handler
protected synchronized io.vertx.core.Handler<java.lang.Throwable> exceptionHandler();
descriptor: ()Lio/vertx/core/Handler;
flags: (0x0024) ACC_PROTECTED, ACC_SYNCHRONIZED
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield io.vertx.core.net.impl.ConnectionBase.exceptionHandler:Lio/vertx/core/Handler;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/vertx/core/net/impl/ConnectionBase;
Signature: ()Lio/vertx/core/Handler<Ljava/lang/Throwable;>;
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.net.impl.ConnectionBase.chctx:Lio/netty/channel/ChannelHandlerContext;
invokeinterface io.netty.channel.ChannelHandlerContext.channel:()Lio/netty/channel/Channel;
invokeinterface io.netty.channel.Channel.config:()Lio/netty/channel/ChannelConfig;
iconst_0
invokeinterface io.netty.channel.ChannelConfig.setAutoRead:(Z)Lio/netty/channel/ChannelConfig;
pop
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/vertx/core/net/impl/ConnectionBase;
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.net.impl.ConnectionBase.chctx:Lio/netty/channel/ChannelHandlerContext;
invokeinterface io.netty.channel.ChannelHandlerContext.channel:()Lio/netty/channel/Channel;
invokeinterface io.netty.channel.Channel.config:()Lio/netty/channel/ChannelConfig;
iconst_1
invokeinterface io.netty.channel.ChannelConfig.setAutoRead:(Z)Lio/netty/channel/ChannelConfig;
pop
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/vertx/core/net/impl/ConnectionBase;
public void doSetWriteQueueMaxSize(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield io.vertx.core.net.impl.ConnectionBase.chctx:Lio/netty/channel/ChannelHandlerContext;
invokeinterface io.netty.channel.ChannelHandlerContext.channel:()Lio/netty/channel/Channel;
invokeinterface io.netty.channel.Channel.config:()Lio/netty/channel/ChannelConfig;
astore 2
start local 2 1: aload 2
new io.netty.channel.WriteBufferWaterMark
dup
iload 1
iconst_2
idiv
iload 1
invokespecial io.netty.channel.WriteBufferWaterMark.<init>:(II)V
invokeinterface io.netty.channel.ChannelConfig.setWriteBufferWaterMark:(Lio/netty/channel/WriteBufferWaterMark;)Lio/netty/channel/ChannelConfig;
pop
2: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lio/vertx/core/net/impl/ConnectionBase;
0 3 1 size I
1 3 2 config Lio/netty/channel/ChannelConfig;
MethodParameters:
Name Flags
size
public final io.netty.channel.Channel channel();
descriptor: ()Lio/netty/channel/Channel;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield io.vertx.core.net.impl.ConnectionBase.chctx:Lio/netty/channel/ChannelHandlerContext;
invokeinterface io.netty.channel.ChannelHandlerContext.channel:()Lio/netty/channel/Channel;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/vertx/core/net/impl/ConnectionBase;
public final io.netty.channel.ChannelHandlerContext channelHandlerContext();
descriptor: ()Lio/netty/channel/ChannelHandlerContext;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield io.vertx.core.net.impl.ConnectionBase.chctx:Lio/netty/channel/ChannelHandlerContext;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/vertx/core/net/impl/ConnectionBase;
public final io.vertx.core.impl.ContextInternal getContext();
descriptor: ()Lio/vertx/core/impl/ContextInternal;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield io.vertx.core.net.impl.ConnectionBase.context:Lio/vertx/core/impl/ContextInternal;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/vertx/core/net/impl/ConnectionBase;
public final synchronized void metric(java.lang.Object);
descriptor: (Ljava/lang/Object;)V
flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SYNCHRONIZED
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield io.vertx.core.net.impl.ConnectionBase.metric:Ljava/lang/Object;
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/vertx/core/net/impl/ConnectionBase;
0 2 1 metric Ljava/lang/Object;
MethodParameters:
Name Flags
metric
public final synchronized java.lang.Object metric();
descriptor: ()Ljava/lang/Object;
flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SYNCHRONIZED
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield io.vertx.core.net.impl.ConnectionBase.metric:Ljava/lang/Object;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/vertx/core/net/impl/ConnectionBase;
public abstract io.vertx.core.spi.metrics.NetworkMetrics metrics();
descriptor: ()Lio/vertx/core/spi/metrics/NetworkMetrics;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
protected void handleException(java.lang.Throwable);
descriptor: (Ljava/lang/Throwable;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual io.vertx.core.net.impl.ConnectionBase.metrics:()Lio/vertx/core/spi/metrics/NetworkMetrics;
astore 2
start local 2 1: aload 2
ifnull 3
2: aload 2
aload 0
getfield io.vertx.core.net.impl.ConnectionBase.metric:Ljava/lang/Object;
aload 0
invokevirtual io.vertx.core.net.impl.ConnectionBase.remoteAddress:()Lio/vertx/core/net/SocketAddress;
aload 1
invokeinterface io.vertx.core.spi.metrics.NetworkMetrics.exceptionOccurred:(Ljava/lang/Object;Lio/vertx/core/net/SocketAddress;Ljava/lang/Throwable;)V
3: StackMap locals: io.vertx.core.spi.metrics.NetworkMetrics
StackMap stack:
aload 0
getfield io.vertx.core.net.impl.ConnectionBase.context:Lio/vertx/core/impl/ContextInternal;
aload 1
aload 0
aload 1
invokedynamic handle(Lio/vertx/core/net/impl/ConnectionBase;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/net/impl/ConnectionBase.lambda$5(Ljava/lang/Throwable;Ljava/lang/Throwable;)V (7)
(Ljava/lang/Throwable;)V
invokeinterface io.vertx.core.impl.ContextInternal.emit:(Ljava/lang/Object;Lio/vertx/core/Handler;)V
4: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lio/vertx/core/net/impl/ConnectionBase;
0 5 1 t Ljava/lang/Throwable;
1 5 2 metrics Lio/vertx/core/spi/metrics/NetworkMetrics;
MethodParameters:
Name Flags
t
protected void handleClosed();
descriptor: ()V
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=2, args_size=1
start local 0 0: aload 0
iconst_1
putfield io.vertx.core.net.impl.ConnectionBase.closed:Z
1: aload 0
invokevirtual io.vertx.core.net.impl.ConnectionBase.metrics:()Lio/vertx/core/spi/metrics/NetworkMetrics;
astore 1
start local 1 2: aload 1
ifnull 7
3: aload 0
invokevirtual io.vertx.core.net.impl.ConnectionBase.flushBytesRead:()V
4: aload 0
invokevirtual io.vertx.core.net.impl.ConnectionBase.flushBytesWritten:()V
5: aload 1
instanceof io.vertx.core.spi.metrics.TCPMetrics
ifeq 7
6: aload 1
checkcast io.vertx.core.spi.metrics.TCPMetrics
aload 0
invokevirtual io.vertx.core.net.impl.ConnectionBase.metric:()Ljava/lang/Object;
aload 0
invokevirtual io.vertx.core.net.impl.ConnectionBase.remoteAddress:()Lio/vertx/core/net/SocketAddress;
invokeinterface io.vertx.core.spi.metrics.TCPMetrics.disconnected:(Ljava/lang/Object;Lio/vertx/core/net/SocketAddress;)V
7: StackMap locals: io.vertx.core.spi.metrics.NetworkMetrics
StackMap stack:
aload 0
getfield io.vertx.core.net.impl.ConnectionBase.closePromise:Lio/netty/channel/ChannelPromise;
invokeinterface io.netty.channel.ChannelPromise.setSuccess:()Lio/netty/channel/ChannelPromise;
pop
8: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lio/vertx/core/net/impl/ConnectionBase;
2 9 1 metrics Lio/vertx/core/spi/metrics/NetworkMetrics;
private void checkCloseHandler(io.vertx.core.AsyncResult<java.lang.Void>);
descriptor: (Lio/vertx/core/AsyncResult;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=4, args_size=2
start local 0 start local 1 0: aload 0
dup
astore 3
monitorenter
1: aload 0
getfield io.vertx.core.net.impl.ConnectionBase.closeHandler:Lio/vertx/core/Handler;
astore 2
start local 2 2: aload 3
monitorexit
3: goto 6
end local 2 StackMap locals: io.vertx.core.net.impl.ConnectionBase io.vertx.core.AsyncResult top io.vertx.core.net.impl.ConnectionBase
StackMap stack: java.lang.Throwable
4: aload 3
monitorexit
5: athrow
start local 2 6: StackMap locals: io.vertx.core.net.impl.ConnectionBase io.vertx.core.AsyncResult io.vertx.core.Handler
StackMap stack:
aload 2
ifnull 8
7: aload 2
aconst_null
invokeinterface io.vertx.core.Handler.handle:(Ljava/lang/Object;)V
8: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lio/vertx/core/net/impl/ConnectionBase;
0 9 1 ar Lio/vertx/core/AsyncResult<Ljava/lang/Void;>;
2 4 2 handler Lio/vertx/core/Handler<Ljava/lang/Void;>;
6 9 2 handler Lio/vertx/core/Handler<Ljava/lang/Void;>;
Exception table:
from to target type
1 3 4 any
4 5 4 any
Signature: (Lio/vertx/core/AsyncResult<Ljava/lang/Void;>;)V
MethodParameters:
Name Flags
ar
protected void handleIdle();
descriptor: ()V
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield io.vertx.core.net.impl.ConnectionBase.chctx:Lio/netty/channel/ChannelHandlerContext;
invokeinterface io.netty.channel.ChannelHandlerContext.close:()Lio/netty/channel/ChannelFuture;
pop
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/vertx/core/net/impl/ConnectionBase;
protected abstract void handleInterestedOpsChanged();
descriptor: ()V
flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
protected boolean supportsFileRegion();
descriptor: ()Z
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual io.vertx.core.net.impl.ConnectionBase.isSsl:()Z
ifeq 1
iconst_0
goto 2
StackMap locals:
StackMap stack:
1: iconst_1
StackMap locals:
StackMap stack: int
2: ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lio/vertx/core/net/impl/ConnectionBase;
protected void reportBytesRead(java.lang.Object);
descriptor: (Ljava/lang/Object;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=0, locals=2, args_size=2
start local 0 start local 1 0: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/vertx/core/net/impl/ConnectionBase;
0 1 1 msg Ljava/lang/Object;
MethodParameters:
Name Flags
msg
public void reportBytesRead(long);
descriptor: (J)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=8, args_size=2
start local 0 start local 1 0: lload 1
lconst_0
lcmp
ifge 2
1: new java.lang.IllegalArgumentException
dup
invokespecial java.lang.IllegalArgumentException.<init>:()V
athrow
2: StackMap locals:
StackMap stack:
aload 0
getfield io.vertx.core.net.impl.ConnectionBase.remainingBytesRead:J
lstore 3
start local 3 3: lload 3
lload 1
ladd
lstore 3
4: aload 0
invokevirtual io.vertx.core.net.impl.ConnectionBase.metrics:()Lio/vertx/core/spi/metrics/NetworkMetrics;
astore 5
start local 5 5: lload 3
ldc -4096
land
lstore 6
start local 6 6: aload 5
ifnull 9
lload 6
lconst_0
lcmp
ifle 9
7: lload 3
ldc 4095
land
lstore 3
8: aload 5
aload 0
invokevirtual io.vertx.core.net.impl.ConnectionBase.metric:()Ljava/lang/Object;
aload 0
invokevirtual io.vertx.core.net.impl.ConnectionBase.remoteAddress:()Lio/vertx/core/net/SocketAddress;
lload 6
invokeinterface io.vertx.core.spi.metrics.NetworkMetrics.bytesRead:(Ljava/lang/Object;Lio/vertx/core/net/SocketAddress;J)V
9: StackMap locals: long io.vertx.core.spi.metrics.NetworkMetrics long
StackMap stack:
aload 0
lload 3
putfield io.vertx.core.net.impl.ConnectionBase.remainingBytesRead:J
10: return
end local 6 end local 5 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lio/vertx/core/net/impl/ConnectionBase;
0 11 1 numberOfBytes J
3 11 3 bytes J
5 11 5 metrics Lio/vertx/core/spi/metrics/NetworkMetrics;
6 11 6 val J
MethodParameters:
Name Flags
numberOfBytes
protected void reportsBytesWritten(java.lang.Object);
descriptor: (Ljava/lang/Object;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=0, locals=2, args_size=2
start local 0 start local 1 0: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/vertx/core/net/impl/ConnectionBase;
0 1 1 msg Ljava/lang/Object;
MethodParameters:
Name Flags
msg
public void reportBytesWritten(long);
descriptor: (J)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=8, args_size=2
start local 0 start local 1 0: lload 1
lconst_0
lcmp
ifge 2
1: new java.lang.IllegalArgumentException
dup
invokespecial java.lang.IllegalArgumentException.<init>:()V
athrow
2: StackMap locals:
StackMap stack:
aload 0
getfield io.vertx.core.net.impl.ConnectionBase.remainingBytesWritten:J
lstore 3
start local 3 3: lload 3
lload 1
ladd
lstore 3
4: aload 0
invokevirtual io.vertx.core.net.impl.ConnectionBase.metrics:()Lio/vertx/core/spi/metrics/NetworkMetrics;
astore 5
start local 5 5: lload 3
ldc -4096
land
lstore 6
start local 6 6: aload 5
ifnull 9
lload 6
lconst_0
lcmp
ifle 9
7: lload 3
ldc 4095
land
lstore 3
8: aload 5
aload 0
getfield io.vertx.core.net.impl.ConnectionBase.metric:Ljava/lang/Object;
aload 0
invokevirtual io.vertx.core.net.impl.ConnectionBase.remoteAddress:()Lio/vertx/core/net/SocketAddress;
lload 6
invokeinterface io.vertx.core.spi.metrics.NetworkMetrics.bytesWritten:(Ljava/lang/Object;Lio/vertx/core/net/SocketAddress;J)V
9: StackMap locals: long io.vertx.core.spi.metrics.NetworkMetrics long
StackMap stack:
aload 0
lload 3
putfield io.vertx.core.net.impl.ConnectionBase.remainingBytesWritten:J
10: return
end local 6 end local 5 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lio/vertx/core/net/impl/ConnectionBase;
0 11 1 numberOfBytes J
3 11 3 bytes J
5 11 5 metrics Lio/vertx/core/spi/metrics/NetworkMetrics;
6 11 6 val J
MethodParameters:
Name Flags
numberOfBytes
public void flushBytesRead();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=4, args_size=1
start local 0 0: aload 0
getfield io.vertx.core.net.impl.ConnectionBase.remainingBytesRead:J
lstore 1
start local 1 1: lload 1
lconst_0
lcmp
ifle 6
2: aload 0
invokevirtual io.vertx.core.net.impl.ConnectionBase.metrics:()Lio/vertx/core/spi/metrics/NetworkMetrics;
astore 3
start local 3 3: aload 0
lconst_0
putfield io.vertx.core.net.impl.ConnectionBase.remainingBytesRead:J
4: aload 3
ifnull 6
5: aload 3
aload 0
invokevirtual io.vertx.core.net.impl.ConnectionBase.metric:()Ljava/lang/Object;
aload 0
invokevirtual io.vertx.core.net.impl.ConnectionBase.remoteAddress:()Lio/vertx/core/net/SocketAddress;
lload 1
invokeinterface io.vertx.core.spi.metrics.NetworkMetrics.bytesRead:(Ljava/lang/Object;Lio/vertx/core/net/SocketAddress;J)V
end local 3 6: StackMap locals: long
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lio/vertx/core/net/impl/ConnectionBase;
1 7 1 val J
3 6 3 metrics Lio/vertx/core/spi/metrics/NetworkMetrics;
public void flushBytesWritten();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=4, args_size=1
start local 0 0: aload 0
getfield io.vertx.core.net.impl.ConnectionBase.remainingBytesWritten:J
lstore 1
start local 1 1: lload 1
lconst_0
lcmp
ifle 6
2: aload 0
invokevirtual io.vertx.core.net.impl.ConnectionBase.metrics:()Lio/vertx/core/spi/metrics/NetworkMetrics;
astore 3
start local 3 3: aload 0
lconst_0
putfield io.vertx.core.net.impl.ConnectionBase.remainingBytesWritten:J
4: aload 3
ifnull 6
5: aload 3
aload 0
invokevirtual io.vertx.core.net.impl.ConnectionBase.metric:()Ljava/lang/Object;
aload 0
invokevirtual io.vertx.core.net.impl.ConnectionBase.remoteAddress:()Lio/vertx/core/net/SocketAddress;
lload 1
invokeinterface io.vertx.core.spi.metrics.NetworkMetrics.bytesWritten:(Ljava/lang/Object;Lio/vertx/core/net/SocketAddress;J)V
end local 3 6: StackMap locals: long
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lio/vertx/core/net/impl/ConnectionBase;
1 7 1 val J
3 6 3 metrics Lio/vertx/core/spi/metrics/NetworkMetrics;
private void sendFileRegion(java.io.RandomAccessFile, long, long, io.netty.channel.ChannelPromise);
descriptor: (Ljava/io/RandomAccessFile;JJLio/netty/channel/ChannelPromise;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=8, locals=9, args_size=5
start local 0 start local 1 start local 2 start local 4 start local 6 0: lload 4
ldc 1048576
lcmp
ifge 3
1: aload 0
new io.netty.channel.DefaultFileRegion
dup
aload 1
invokevirtual java.io.RandomAccessFile.getChannel:()Ljava/nio/channels/FileChannel;
lload 2
lload 4
invokespecial io.netty.channel.DefaultFileRegion.<init>:(Ljava/nio/channels/FileChannel;JJ)V
aload 6
invokevirtual io.vertx.core.net.impl.ConnectionBase.writeToChannel:(Ljava/lang/Object;Lio/netty/channel/ChannelPromise;)V
2: goto 8
3: StackMap locals:
StackMap stack:
aload 0
getfield io.vertx.core.net.impl.ConnectionBase.chctx:Lio/netty/channel/ChannelHandlerContext;
invokeinterface io.netty.channel.ChannelHandlerContext.newPromise:()Lio/netty/channel/ChannelPromise;
astore 7
start local 7 4: new io.netty.channel.DefaultFileRegion
dup
aload 1
invokevirtual java.io.RandomAccessFile.getChannel:()Ljava/nio/channels/FileChannel;
lload 2
ldc 1048576
invokespecial io.netty.channel.DefaultFileRegion.<init>:(Ljava/nio/channels/FileChannel;JJ)V
astore 8
start local 8 5: aload 8
invokeinterface io.netty.channel.FileRegion.retain:()Lio/netty/channel/FileRegion;
pop
6: aload 0
aload 8
aload 7
invokevirtual io.vertx.core.net.impl.ConnectionBase.writeToChannel:(Ljava/lang/Object;Lio/netty/channel/ChannelPromise;)V
7: aload 7
aload 0
aload 1
lload 2
lload 4
aload 6
invokedynamic operationComplete(Lio/vertx/core/net/impl/ConnectionBase;Ljava/io/RandomAccessFile;JJLio/netty/channel/ChannelPromise;)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/net/impl/ConnectionBase.lambda$6(Ljava/io/RandomAccessFile;JJLio/netty/channel/ChannelPromise;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 8: StackMap locals:
StackMap stack:
return
end local 6 end local 4 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lio/vertx/core/net/impl/ConnectionBase;
0 9 1 file Ljava/io/RandomAccessFile;
0 9 2 offset J
0 9 4 length J
0 9 6 writeFuture Lio/netty/channel/ChannelPromise;
4 8 7 promise Lio/netty/channel/ChannelPromise;
5 8 8 region Lio/netty/channel/FileRegion;
MethodParameters:
Name Flags
file
offset
length
writeFuture
public final io.netty.channel.ChannelFuture sendFile(java.io.RandomAccessFile, long, long);
descriptor: (Ljava/io/RandomAccessFile;JJ)Lio/netty/channel/ChannelFuture;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=9, locals=7, args_size=4
start local 0 start local 1 start local 2 start local 4 0: aload 0
getfield io.vertx.core.net.impl.ConnectionBase.chctx:Lio/netty/channel/ChannelHandlerContext;
invokeinterface io.netty.channel.ChannelHandlerContext.newPromise:()Lio/netty/channel/ChannelPromise;
astore 6
start local 6 1: aload 0
invokevirtual io.vertx.core.net.impl.ConnectionBase.supportsFileRegion:()Z
ifne 4
2: aload 0
new io.netty.handler.stream.ChunkedFile
dup
aload 1
lload 2
lload 4
sipush 8192
invokespecial io.netty.handler.stream.ChunkedFile.<init>:(Ljava/io/RandomAccessFile;JJI)V
aload 6
invokevirtual io.vertx.core.net.impl.ConnectionBase.writeToChannel:(Ljava/lang/Object;Lio/netty/channel/ChannelPromise;)V
3: goto 5
4: StackMap locals: io.netty.channel.ChannelPromise
StackMap stack:
aload 0
aload 1
lload 2
lload 4
aload 6
invokevirtual io.vertx.core.net.impl.ConnectionBase.sendFileRegion:(Ljava/io/RandomAccessFile;JJLio/netty/channel/ChannelPromise;)V
5: StackMap locals:
StackMap stack:
aload 6
ifnull 8
6: aload 6
aload 1
invokedynamic operationComplete(Ljava/io/RandomAccessFile;)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/net/impl/ConnectionBase.lambda$7(Ljava/io/RandomAccessFile;Lio/netty/util/concurrent/Future;)V (6)
(Lio/netty/util/concurrent/Future;)V
invokeinterface io.netty.channel.ChannelPromise.addListener:(Lio/netty/util/concurrent/GenericFutureListener;)Lio/netty/channel/ChannelPromise;
pop
7: goto 9
8: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.io.RandomAccessFile.close:()V
9: StackMap locals:
StackMap stack:
aload 6
areturn
end local 6 end local 4 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lio/vertx/core/net/impl/ConnectionBase;
0 10 1 raf Ljava/io/RandomAccessFile;
0 10 2 offset J
0 10 4 length J
1 10 6 writeFuture Lio/netty/channel/ChannelPromise;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
raf
offset
length
public boolean isSsl();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield io.vertx.core.net.impl.ConnectionBase.chctx:Lio/netty/channel/ChannelHandlerContext;
invokeinterface io.netty.channel.ChannelHandlerContext.pipeline:()Lio/netty/channel/ChannelPipeline;
ldc Lio/netty/handler/ssl/SslHandler;
invokeinterface io.netty.channel.ChannelPipeline.get:(Ljava/lang/Class;)Lio/netty/channel/ChannelHandler;
ifnull 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/net/impl/ConnectionBase;
public javax.net.ssl.SSLSession sslSession();
descriptor: ()Ljavax/net/ssl/SSLSession;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=1
start local 0 0: aload 0
getfield io.vertx.core.net.impl.ConnectionBase.chctx:Lio/netty/channel/ChannelHandlerContext;
invokeinterface io.netty.channel.ChannelHandlerContext.pipeline:()Lio/netty/channel/ChannelPipeline;
ldc Lio/netty/handler/ssl/SslHandler;
invokeinterface io.netty.channel.ChannelPipeline.context:(Ljava/lang/Class;)Lio/netty/channel/ChannelHandlerContext;
astore 1
start local 1 1: aload 1
ifnull 4
2: aload 1
invokeinterface io.netty.channel.ChannelHandlerContext.handler:()Lio/netty/channel/ChannelHandler;
checkcast io.netty.handler.ssl.SslHandler
astore 2
start local 2 3: aload 2
invokevirtual io.netty.handler.ssl.SslHandler.engine:()Ljavax/net/ssl/SSLEngine;
invokevirtual javax.net.ssl.SSLEngine.getSession:()Ljavax/net/ssl/SSLSession;
areturn
end local 2 4: StackMap locals: io.netty.channel.ChannelHandlerContext
StackMap stack:
aconst_null
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lio/vertx/core/net/impl/ConnectionBase;
1 5 1 sslHandlerContext Lio/netty/channel/ChannelHandlerContext;
3 4 2 sslHandler Lio/netty/handler/ssl/SslHandler;
public javax.security.cert.X509Certificate[] peerCertificateChain();
descriptor: ()[Ljavax/security/cert/X509Certificate;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=1
start local 0 0: aload 0
invokevirtual io.vertx.core.net.impl.ConnectionBase.sslSession:()Ljavax/net/ssl/SSLSession;
astore 1
start local 1 1: aload 1
ifnull 3
2: aload 1
invokeinterface javax.net.ssl.SSLSession.getPeerCertificateChain:()[Ljavax/security/cert/X509Certificate;
areturn
3: StackMap locals: javax.net.ssl.SSLSession
StackMap stack:
aconst_null
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lio/vertx/core/net/impl/ConnectionBase;
1 4 1 session Ljavax/net/ssl/SSLSession;
Exceptions:
throws javax.net.ssl.SSLPeerUnverifiedException
public java.lang.String indicatedServerName();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield io.vertx.core.net.impl.ConnectionBase.chctx:Lio/netty/channel/ChannelHandlerContext;
invokeinterface io.netty.channel.ChannelHandlerContext.channel:()Lio/netty/channel/Channel;
getstatic io.vertx.core.net.impl.SslHandshakeCompletionHandler.SERVER_NAME_ATTR:Lio/netty/util/AttributeKey;
invokeinterface io.netty.channel.Channel.hasAttr:(Lio/netty/util/AttributeKey;)Z
ifeq 2
1: aload 0
getfield io.vertx.core.net.impl.ConnectionBase.chctx:Lio/netty/channel/ChannelHandlerContext;
invokeinterface io.netty.channel.ChannelHandlerContext.channel:()Lio/netty/channel/Channel;
getstatic io.vertx.core.net.impl.SslHandshakeCompletionHandler.SERVER_NAME_ATTR:Lio/netty/util/AttributeKey;
invokeinterface io.netty.channel.Channel.attr:(Lio/netty/util/AttributeKey;)Lio/netty/util/Attribute;
invokeinterface io.netty.util.Attribute.get:()Ljava/lang/Object;
checkcast java.lang.String
areturn
2: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lio/vertx/core/net/impl/ConnectionBase;
public io.netty.channel.ChannelPromise channelFuture();
descriptor: ()Lio/netty/channel/ChannelPromise;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield io.vertx.core.net.impl.ConnectionBase.chctx:Lio/netty/channel/ChannelHandlerContext;
invokeinterface io.netty.channel.ChannelHandlerContext.newPromise:()Lio/netty/channel/ChannelPromise;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/vertx/core/net/impl/ConnectionBase;
public java.lang.String remoteName();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=1
start local 0 0: aload 0
getfield io.vertx.core.net.impl.ConnectionBase.chctx:Lio/netty/channel/ChannelHandlerContext;
invokeinterface io.netty.channel.ChannelHandlerContext.channel:()Lio/netty/channel/Channel;
invokeinterface io.netty.channel.Channel.remoteAddress:()Ljava/net/SocketAddress;
astore 1
start local 1 1: aload 1
instanceof java.net.InetSocketAddress
ifeq 3
2: aload 1
checkcast java.net.InetSocketAddress
invokevirtual java.net.InetSocketAddress.getHostString:()Ljava/lang/String;
areturn
3: StackMap locals: java.net.SocketAddress
StackMap stack:
aconst_null
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lio/vertx/core/net/impl/ConnectionBase;
1 4 1 addr Ljava/net/SocketAddress;
public io.vertx.core.net.SocketAddress remoteAddress();
descriptor: ()Lio/vertx/core/net/SocketAddress;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=1
start local 0 0: aload 0
getfield io.vertx.core.net.impl.ConnectionBase.remoteAddress:Lio/vertx/core/net/SocketAddress;
astore 1
start local 1 1: aload 1
ifnonnull 10
2: aload 0
getfield io.vertx.core.net.impl.ConnectionBase.chctx:Lio/netty/channel/ChannelHandlerContext;
invokeinterface io.netty.channel.ChannelHandlerContext.channel:()Lio/netty/channel/Channel;
getstatic io.vertx.core.net.impl.ConnectionBase.REMOTE_ADDRESS_OVERRIDE:Lio/netty/util/AttributeKey;
invokeinterface io.netty.channel.Channel.hasAttr:(Lio/netty/util/AttributeKey;)Z
ifeq 5
3: aload 0
getfield io.vertx.core.net.impl.ConnectionBase.chctx:Lio/netty/channel/ChannelHandlerContext;
invokeinterface io.netty.channel.ChannelHandlerContext.channel:()Lio/netty/channel/Channel;
getstatic io.vertx.core.net.impl.ConnectionBase.REMOTE_ADDRESS_OVERRIDE:Lio/netty/util/AttributeKey;
invokeinterface io.netty.channel.Channel.attr:(Lio/netty/util/AttributeKey;)Lio/netty/util/Attribute;
aconst_null
invokeinterface io.netty.util.Attribute.getAndSet:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast io.vertx.core.net.SocketAddress
astore 1
4: goto 8
5: StackMap locals: io.vertx.core.net.SocketAddress
StackMap stack:
aload 0
getfield io.vertx.core.net.impl.ConnectionBase.chctx:Lio/netty/channel/ChannelHandlerContext;
invokeinterface io.netty.channel.ChannelHandlerContext.channel:()Lio/netty/channel/Channel;
invokeinterface io.netty.channel.Channel.remoteAddress:()Ljava/net/SocketAddress;
astore 2
start local 2 6: aload 2
ifnull 8
7: aload 0
getfield io.vertx.core.net.impl.ConnectionBase.vertx:Lio/vertx/core/impl/VertxInternal;
invokeinterface io.vertx.core.impl.VertxInternal.transport:()Lio/vertx/core/net/impl/transport/Transport;
aload 2
invokevirtual io.vertx.core.net.impl.transport.Transport.convert:(Ljava/net/SocketAddress;)Lio/vertx/core/net/SocketAddress;
astore 1
end local 2 8: StackMap locals:
StackMap stack:
aload 1
ifnull 10
9: aload 0
aload 1
putfield io.vertx.core.net.impl.ConnectionBase.remoteAddress:Lio/vertx/core/net/SocketAddress;
10: StackMap locals:
StackMap stack:
aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lio/vertx/core/net/impl/ConnectionBase;
1 11 1 address Lio/vertx/core/net/SocketAddress;
6 8 2 addr Ljava/net/SocketAddress;
public io.vertx.core.net.SocketAddress localAddress();
descriptor: ()Lio/vertx/core/net/SocketAddress;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=1
start local 0 0: aload 0
getfield io.vertx.core.net.impl.ConnectionBase.localAddress:Lio/vertx/core/net/SocketAddress;
astore 1
start local 1 1: aload 1
ifnonnull 10
2: aload 0
getfield io.vertx.core.net.impl.ConnectionBase.chctx:Lio/netty/channel/ChannelHandlerContext;
invokeinterface io.netty.channel.ChannelHandlerContext.channel:()Lio/netty/channel/Channel;
getstatic io.vertx.core.net.impl.ConnectionBase.LOCAL_ADDRESS_OVERRIDE:Lio/netty/util/AttributeKey;
invokeinterface io.netty.channel.Channel.hasAttr:(Lio/netty/util/AttributeKey;)Z
ifeq 5
3: aload 0
getfield io.vertx.core.net.impl.ConnectionBase.chctx:Lio/netty/channel/ChannelHandlerContext;
invokeinterface io.netty.channel.ChannelHandlerContext.channel:()Lio/netty/channel/Channel;
getstatic io.vertx.core.net.impl.ConnectionBase.LOCAL_ADDRESS_OVERRIDE:Lio/netty/util/AttributeKey;
invokeinterface io.netty.channel.Channel.attr:(Lio/netty/util/AttributeKey;)Lio/netty/util/Attribute;
aconst_null
invokeinterface io.netty.util.Attribute.getAndSet:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast io.vertx.core.net.SocketAddress
astore 1
4: goto 8
5: StackMap locals: io.vertx.core.net.SocketAddress
StackMap stack:
aload 0
getfield io.vertx.core.net.impl.ConnectionBase.chctx:Lio/netty/channel/ChannelHandlerContext;
invokeinterface io.netty.channel.ChannelHandlerContext.channel:()Lio/netty/channel/Channel;
invokeinterface io.netty.channel.Channel.localAddress:()Ljava/net/SocketAddress;
astore 2
start local 2 6: aload 2
ifnull 8
7: aload 0
getfield io.vertx.core.net.impl.ConnectionBase.vertx:Lio/vertx/core/impl/VertxInternal;
invokeinterface io.vertx.core.impl.VertxInternal.transport:()Lio/vertx/core/net/impl/transport/Transport;
aload 2
invokevirtual io.vertx.core.net.impl.transport.Transport.convert:(Ljava/net/SocketAddress;)Lio/vertx/core/net/SocketAddress;
astore 1
end local 2 8: StackMap locals:
StackMap stack:
aload 1
ifnull 10
9: aload 0
aload 1
putfield io.vertx.core.net.impl.ConnectionBase.localAddress:Lio/vertx/core/net/SocketAddress;
10: StackMap locals:
StackMap stack:
aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lio/vertx/core/net/impl/ConnectionBase;
1 11 1 address Lio/vertx/core/net/SocketAddress;
6 8 2 addr Ljava/net/SocketAddress;
protected void handleMessage(java.lang.Object);
descriptor: (Ljava/lang/Object;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=0, locals=2, args_size=2
start local 0 start local 1 0: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/vertx/core/net/impl/ConnectionBase;
0 1 1 msg Ljava/lang/Object;
MethodParameters:
Name Flags
msg
private static void lambda$1(io.netty.channel.ChannelPromise, io.netty.util.concurrent.Future);
descriptor: (Lio/netty/channel/ChannelPromise;Lio/netty/util/concurrent/Future;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
start local 1 0: aload 1
invokeinterface io.netty.util.concurrent.Future.isSuccess:()Z
ifeq 3
1: aload 0
invokeinterface io.netty.channel.ChannelPromise.setSuccess:()Lio/netty/channel/ChannelPromise;
pop
2: goto 4
3: StackMap locals:
StackMap stack:
aload 0
aload 1
invokeinterface io.netty.util.concurrent.Future.cause:()Ljava/lang/Throwable;
invokeinterface io.netty.channel.ChannelPromise.setFailure:(Ljava/lang/Throwable;)Lio/netty/channel/ChannelPromise;
pop
4: StackMap locals:
StackMap stack:
return
end local 1 LocalVariableTable:
Start End Slot Name Signature
0 5 1 l Lio/netty/util/concurrent/Future<-Ljava/lang/Void;>;
Exceptions:
throws java.lang.Exception
private void lambda$2(io.vertx.core.impl.future.PromiseInternal, io.netty.channel.ChannelFuture);
descriptor: (Lio/vertx/core/impl/future/PromiseInternal;Lio/netty/channel/ChannelFuture;)V
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=2, locals=3, args_size=3
start local 0 start local 2 0: aload 0
getfield io.vertx.core.net.impl.ConnectionBase.chctx:Lio/netty/channel/ChannelHandlerContext;
invokeinterface io.netty.channel.ChannelHandlerContext.close:()Lio/netty/channel/ChannelFuture;
aload 1
invokeinterface io.netty.channel.ChannelFuture.addListener:(Lio/netty/util/concurrent/GenericFutureListener;)Lio/netty/channel/ChannelFuture;
pop
1: return
end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/vertx/core/net/impl/ConnectionBase;
0 2 2 f Lio/netty/channel/ChannelFuture;
Exceptions:
throws java.lang.Exception
private void lambda$3(boolean, java.lang.Object, io.netty.channel.ChannelPromise);
descriptor: (ZLjava/lang/Object;Lio/netty/channel/ChannelPromise;)V
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=4, locals=6, args_size=4
start local 0 0: iload 1
ifeq 3
1: iconst_1
istore 4
start local 4 2: goto 11
end local 4 3: StackMap locals:
StackMap stack:
aload 0
dup
astore 5
monitorenter
4: aload 0
dup
getfield io.vertx.core.net.impl.ConnectionBase.writeInProgress:I
iconst_1
isub
dup_x1
putfield io.vertx.core.net.impl.ConnectionBase.writeInProgress:I
ifne 5
iconst_1
goto 6
StackMap locals: io.vertx.core.net.impl.ConnectionBase int java.lang.Object io.netty.channel.ChannelPromise top io.vertx.core.net.impl.ConnectionBase
StackMap stack:
5: iconst_0
StackMap locals:
StackMap stack: int
6: istore 4
start local 4 7: aload 5
monitorexit
8: goto 11
end local 4 StackMap locals:
StackMap stack: java.lang.Throwable
9: aload 5
monitorexit
10: athrow
start local 4 11: StackMap locals: io.vertx.core.net.impl.ConnectionBase int java.lang.Object io.netty.channel.ChannelPromise int
StackMap stack:
aload 0
aload 2
iload 4
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
aload 3
invokevirtual io.vertx.core.net.impl.ConnectionBase.write:(Ljava/lang/Object;Ljava/lang/Boolean;Lio/netty/channel/ChannelPromise;)V
end local 4 12: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lio/vertx/core/net/impl/ConnectionBase;
2 3 4 flush Z
7 9 4 flush Z
11 12 4 flush Z
Exception table:
from to target type
4 8 9 any
9 10 9 any
private void lambda$4(io.vertx.core.impl.future.PromiseInternal);
descriptor: (Lio/vertx/core/impl/future/PromiseInternal;)V
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
start local 0 0: aload 0
aload 1
invokevirtual io.vertx.core.net.impl.ConnectionBase.writeClose:(Lio/vertx/core/impl/future/PromiseInternal;)V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/vertx/core/net/impl/ConnectionBase;
private void lambda$5(java.lang.Throwable, java.lang.Throwable);
descriptor: (Ljava/lang/Throwable;Ljava/lang/Throwable;)V
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=3, locals=5, args_size=3
start local 0 start local 2 0: aload 0
dup
astore 4
monitorenter
1: aload 0
getfield io.vertx.core.net.impl.ConnectionBase.exceptionHandler:Lio/vertx/core/Handler;
astore 3
start local 3 2: aload 4
monitorexit
3: goto 6
end local 3 StackMap locals: io.vertx.core.net.impl.ConnectionBase java.lang.Throwable java.lang.Throwable top io.vertx.core.net.impl.ConnectionBase
StackMap stack: java.lang.Throwable
4: aload 4
monitorexit
5: athrow
start local 3 6: StackMap locals: io.vertx.core.net.impl.ConnectionBase java.lang.Throwable java.lang.Throwable io.vertx.core.Handler
StackMap stack:
aload 3
ifnull 9
7: aload 3
aload 2
invokeinterface io.vertx.core.Handler.handle:(Ljava/lang/Object;)V
8: goto 13
9: StackMap locals:
StackMap stack:
getstatic io.vertx.core.net.impl.ConnectionBase.log:Lio/vertx/core/impl/logging/Logger;
invokeinterface io.vertx.core.impl.logging.Logger.isDebugEnabled:()Z
ifeq 12
10: getstatic io.vertx.core.net.impl.ConnectionBase.log:Lio/vertx/core/impl/logging/Logger;
aload 1
invokevirtual java.lang.Throwable.getMessage:()Ljava/lang/String;
aload 1
invokeinterface io.vertx.core.impl.logging.Logger.error:(Ljava/lang/Object;Ljava/lang/Throwable;)V
11: goto 13
12: StackMap locals:
StackMap stack:
getstatic io.vertx.core.net.impl.ConnectionBase.log:Lio/vertx/core/impl/logging/Logger;
aload 1
invokevirtual java.lang.Throwable.getMessage:()Ljava/lang/String;
invokeinterface io.vertx.core.impl.logging.Logger.error:(Ljava/lang/Object;)V
end local 3 13: StackMap locals:
StackMap stack:
return
end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lio/vertx/core/net/impl/ConnectionBase;
0 14 2 err Ljava/lang/Throwable;
2 4 3 handler Lio/vertx/core/Handler<Ljava/lang/Throwable;>;
6 13 3 handler Lio/vertx/core/Handler<Ljava/lang/Throwable;>;
Exception table:
from to target type
1 3 4 any
4 5 4 any
private void lambda$6(java.io.RandomAccessFile, long, long, io.netty.channel.ChannelPromise, io.netty.util.concurrent.Future);
descriptor: (Ljava/io/RandomAccessFile;JJLio/netty/channel/ChannelPromise;Lio/netty/util/concurrent/Future;)V
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=8, locals=8, args_size=6
start local 0 start local 7 0: aload 7
invokeinterface io.netty.util.concurrent.Future.isSuccess:()Z
ifeq 3
1: aload 0
aload 1
lload 2
ldc 1048576
ladd
lload 4
ldc 1048576
lsub
aload 6
invokevirtual io.vertx.core.net.impl.ConnectionBase.sendFileRegion:(Ljava/io/RandomAccessFile;JJLio/netty/channel/ChannelPromise;)V
2: goto 5
3: StackMap locals:
StackMap stack:
getstatic io.vertx.core.net.impl.ConnectionBase.log:Lio/vertx/core/impl/logging/Logger;
aload 7
invokeinterface io.netty.util.concurrent.Future.cause:()Ljava/lang/Throwable;
invokevirtual java.lang.Throwable.getMessage:()Ljava/lang/String;
aload 7
invokeinterface io.netty.util.concurrent.Future.cause:()Ljava/lang/Throwable;
invokeinterface io.vertx.core.impl.logging.Logger.error:(Ljava/lang/Object;Ljava/lang/Throwable;)V
4: aload 6
aload 7
invokeinterface io.netty.util.concurrent.Future.cause:()Ljava/lang/Throwable;
invokeinterface io.netty.channel.ChannelPromise.setFailure:(Ljava/lang/Throwable;)Lio/netty/channel/ChannelPromise;
pop
5: StackMap locals:
StackMap stack:
return
end local 7 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lio/vertx/core/net/impl/ConnectionBase;
0 6 7 future Lio/netty/util/concurrent/Future<-Ljava/lang/Void;>;
Exceptions:
throws java.lang.Exception
private static void lambda$7(java.io.RandomAccessFile, io.netty.util.concurrent.Future);
descriptor: (Ljava/io/RandomAccessFile;Lio/netty/util/concurrent/Future;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=1, locals=2, args_size=2
start local 1 0: aload 0
invokevirtual java.io.RandomAccessFile.close:()V
return
end local 1 LocalVariableTable:
Start End Slot Name Signature
0 1 1 fut Lio/netty/util/concurrent/Future<-Ljava/lang/Void;>;
Exceptions:
throws java.lang.Exception
}
SourceFile: "ConnectionBase.java"
InnerClasses:
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles