public abstract class io.vertx.sqlclient.impl.SocketConnectionBase implements io.vertx.sqlclient.impl.Connection
  minor version: 0
  major version: 59
  flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
  this_class: io.vertx.sqlclient.impl.SocketConnectionBase
  super_class: java.lang.Object
{
  protected static final io.vertx.core.impl.logging.Logger logger;
    descriptor: Lio/vertx/core/impl/logging/Logger;
    flags: (0x001c) ACC_PROTECTED, ACC_STATIC, ACC_FINAL

  private static final java.lang.String PENDING_CMD_CONNECTION_CORRUPT_MSG;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "Pending requests failed to be sent due to connection has been closed."

  protected final io.vertx.sqlclient.impl.cache.PreparedStatementCache psCache;
    descriptor: Lio/vertx/sqlclient/impl/cache/PreparedStatementCache;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

  private final java.util.function.Predicate<java.lang.String> preparedStatementCacheSqlFilter;
    descriptor: Ljava/util/function/Predicate;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/function/Predicate<Ljava/lang/String;>;

  private final io.vertx.core.impl.ContextInternal context;
    descriptor: Lio/vertx/core/impl/ContextInternal;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private io.vertx.sqlclient.impl.Connection$Holder holder;
    descriptor: Lio/vertx/sqlclient/impl/Connection$Holder;
    flags: (0x0002) ACC_PRIVATE

  private final int pipeliningLimit;
    descriptor: I
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.util.ArrayDeque<io.vertx.sqlclient.impl.command.CommandBase<?>> pending;
    descriptor: Ljava/util/ArrayDeque;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/ArrayDeque<Lio/vertx/sqlclient/impl/command/CommandBase<*>;>;

  private boolean executing;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private int inflight;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  private boolean paused;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  protected final io.vertx.core.net.impl.NetSocketInternal socket;
    descriptor: Lio/vertx/core/net/impl/NetSocketInternal;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

  protected io.vertx.sqlclient.impl.SocketConnectionBase$Status status;
    descriptor: Lio/vertx/sqlclient/impl/SocketConnectionBase$Status;
    flags: (0x0004) ACC_PROTECTED

  static final boolean $assertionsDisabled;
    descriptor: Z
    flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 45
            ldc Lio/vertx/sqlclient/impl/SocketConnectionBase;
            invokevirtual java.lang.Class.desiredAssertionStatus:()Z
            ifne 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: putstatic io.vertx.sqlclient.impl.SocketConnectionBase.$assertionsDisabled:Z
         3: .line 47
            ldc Lio/vertx/sqlclient/impl/SocketConnectionBase;
            invokestatic io.vertx.core.impl.logging.LoggerFactory.getLogger:(Ljava/lang/Class;)Lio/vertx/core/impl/logging/Logger;
            putstatic io.vertx.sqlclient.impl.SocketConnectionBase.logger:Lio/vertx/core/impl/logging/Logger;
         4: .line 55
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>(io.vertx.core.net.impl.NetSocketInternal, boolean, int, java.util.function.Predicate<java.lang.String>, int, io.vertx.core.impl.ContextInternal);
    descriptor: (Lio/vertx/core/net/impl/NetSocketInternal;ZILjava/util/function/Predicate;ILio/vertx/core/impl/ContextInternal;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=7, args_size=7
        start local 0 // io.vertx.sqlclient.impl.SocketConnectionBase this
        start local 1 // io.vertx.core.net.impl.NetSocketInternal socket
        start local 2 // boolean cachePreparedStatements
        start local 3 // int preparedStatementCacheSize
        start local 4 // java.util.function.Predicate preparedStatementCacheSqlFilter
        start local 5 // int pipeliningLimit
        start local 6 // io.vertx.core.impl.ContextInternal context
         0: .line 72
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 64
            aload 0 /* this */
            new java.util.ArrayDeque
            dup
            invokespecial java.util.ArrayDeque.<init>:()V
            putfield io.vertx.sqlclient.impl.SocketConnectionBase.pending:Ljava/util/ArrayDeque;
         2: .line 70
            aload 0 /* this */
            getstatic io.vertx.sqlclient.impl.SocketConnectionBase$Status.CONNECTED:Lio/vertx/sqlclient/impl/SocketConnectionBase$Status;
            putfield io.vertx.sqlclient.impl.SocketConnectionBase.status:Lio/vertx/sqlclient/impl/SocketConnectionBase$Status;
         3: .line 78
            aload 0 /* this */
            aload 1 /* socket */
            putfield io.vertx.sqlclient.impl.SocketConnectionBase.socket:Lio/vertx/core/net/impl/NetSocketInternal;
         4: .line 79
            aload 0 /* this */
            aload 6 /* context */
            putfield io.vertx.sqlclient.impl.SocketConnectionBase.context:Lio/vertx/core/impl/ContextInternal;
         5: .line 80
            aload 0 /* this */
            iload 5 /* pipeliningLimit */
            putfield io.vertx.sqlclient.impl.SocketConnectionBase.pipeliningLimit:I
         6: .line 81
            aload 0 /* this */
            iconst_0
            putfield io.vertx.sqlclient.impl.SocketConnectionBase.paused:Z
         7: .line 82
            aload 0 /* this */
            iload 2 /* cachePreparedStatements */
            ifeq 8
            new io.vertx.sqlclient.impl.cache.PreparedStatementCache
            dup
            iload 3 /* preparedStatementCacheSize */
            invokespecial io.vertx.sqlclient.impl.cache.PreparedStatementCache.<init>:(I)V
            goto 9
      StackMap locals: io.vertx.sqlclient.impl.SocketConnectionBase io.vertx.core.net.impl.NetSocketInternal int int java.util.function.Predicate int io.vertx.core.impl.ContextInternal
      StackMap stack: io.vertx.sqlclient.impl.SocketConnectionBase
         8: aconst_null
      StackMap locals: io.vertx.sqlclient.impl.SocketConnectionBase io.vertx.core.net.impl.NetSocketInternal int int java.util.function.Predicate int io.vertx.core.impl.ContextInternal
      StackMap stack: io.vertx.sqlclient.impl.SocketConnectionBase io.vertx.sqlclient.impl.cache.PreparedStatementCache
         9: putfield io.vertx.sqlclient.impl.SocketConnectionBase.psCache:Lio/vertx/sqlclient/impl/cache/PreparedStatementCache;
        10: .line 83
            aload 0 /* this */
            aload 4 /* preparedStatementCacheSqlFilter */
            putfield io.vertx.sqlclient.impl.SocketConnectionBase.preparedStatementCacheSqlFilter:Ljava/util/function/Predicate;
        11: .line 84
            return
        end local 6 // io.vertx.core.impl.ContextInternal context
        end local 5 // int pipeliningLimit
        end local 4 // java.util.function.Predicate preparedStatementCacheSqlFilter
        end local 3 // int preparedStatementCacheSize
        end local 2 // boolean cachePreparedStatements
        end local 1 // io.vertx.core.net.impl.NetSocketInternal socket
        end local 0 // io.vertx.sqlclient.impl.SocketConnectionBase this
      LocalVariableTable:
        Start  End  Slot                             Name  Signature
            0   12     0                             this  Lio/vertx/sqlclient/impl/SocketConnectionBase;
            0   12     1                           socket  Lio/vertx/core/net/impl/NetSocketInternal;
            0   12     2          cachePreparedStatements  Z
            0   12     3       preparedStatementCacheSize  I
            0   12     4  preparedStatementCacheSqlFilter  Ljava/util/function/Predicate<Ljava/lang/String;>;
            0   12     5                  pipeliningLimit  I
            0   12     6                          context  Lio/vertx/core/impl/ContextInternal;
    Signature: (Lio/vertx/core/net/impl/NetSocketInternal;ZILjava/util/function/Predicate<Ljava/lang/String;>;ILio/vertx/core/impl/ContextInternal;)V
    MethodParameters:
                                 Name  Flags
      socket                           
      cachePreparedStatements          
      preparedStatementCacheSize       
      preparedStatementCacheSqlFilter  
      pipeliningLimit                  
      context                          

  public io.vertx.core.Context context();
    descriptor: ()Lio/vertx/core/Context;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.vertx.sqlclient.impl.SocketConnectionBase this
         0: .line 87
            aload 0 /* this */
            getfield io.vertx.sqlclient.impl.SocketConnectionBase.context:Lio/vertx/core/impl/ContextInternal;
            areturn
        end local 0 // io.vertx.sqlclient.impl.SocketConnectionBase this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/vertx/sqlclient/impl/SocketConnectionBase;

  public void init();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // io.vertx.sqlclient.impl.SocketConnectionBase this
         0: .line 91
            aload 0 /* this */
            getfield io.vertx.sqlclient.impl.SocketConnectionBase.socket:Lio/vertx/core/net/impl/NetSocketInternal;
            aload 0 /* this */
            invokedynamic handle(Lio/vertx/sqlclient/impl/SocketConnectionBase;)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/sqlclient/impl/SocketConnectionBase.handleClosed(Ljava/lang/Void;)V (7)
                  (Ljava/lang/Void;)V
            invokeinterface io.vertx.core.net.impl.NetSocketInternal.closeHandler:(Lio/vertx/core/Handler;)Lio/vertx/core/net/NetSocket;
            pop
         1: .line 92
            aload 0 /* this */
            getfield io.vertx.sqlclient.impl.SocketConnectionBase.socket:Lio/vertx/core/net/impl/NetSocketInternal;
            aload 0 /* this */
            invokedynamic handle(Lio/vertx/sqlclient/impl/SocketConnectionBase;)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/sqlclient/impl/SocketConnectionBase.handleException(Ljava/lang/Throwable;)V (7)
                  (Ljava/lang/Throwable;)V
            invokeinterface io.vertx.core.net.impl.NetSocketInternal.exceptionHandler:(Lio/vertx/core/Handler;)Lio/vertx/core/net/NetSocket;
            pop
         2: .line 93
            aload 0 /* this */
            getfield io.vertx.sqlclient.impl.SocketConnectionBase.socket:Lio/vertx/core/net/impl/NetSocketInternal;
            aload 0 /* this */
            invokedynamic handle(Lio/vertx/sqlclient/impl/SocketConnectionBase;)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/sqlclient/impl/SocketConnectionBase.lambda$2(Ljava/lang/Object;)V (7)
                  (Ljava/lang/Object;)V
            invokeinterface io.vertx.core.net.impl.NetSocketInternal.messageHandler:(Lio/vertx/core/Handler;)Lio/vertx/core/net/impl/NetSocketInternal;
            pop
         3: .line 100
            return
        end local 0 // io.vertx.sqlclient.impl.SocketConnectionBase this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lio/vertx/sqlclient/impl/SocketConnectionBase;

  public io.vertx.core.net.impl.NetSocketInternal socket();
    descriptor: ()Lio/vertx/core/net/impl/NetSocketInternal;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.vertx.sqlclient.impl.SocketConnectionBase this
         0: .line 103
            aload 0 /* this */
            getfield io.vertx.sqlclient.impl.SocketConnectionBase.socket:Lio/vertx/core/net/impl/NetSocketInternal;
            areturn
        end local 0 // io.vertx.sqlclient.impl.SocketConnectionBase this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/vertx/sqlclient/impl/SocketConnectionBase;

  public boolean isSsl();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.vertx.sqlclient.impl.SocketConnectionBase this
         0: .line 107
            aload 0 /* this */
            getfield io.vertx.sqlclient.impl.SocketConnectionBase.socket:Lio/vertx/core/net/impl/NetSocketInternal;
            invokeinterface io.vertx.core.net.impl.NetSocketInternal.isSsl:()Z
            ireturn
        end local 0 // io.vertx.sqlclient.impl.SocketConnectionBase this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/vertx/sqlclient/impl/SocketConnectionBase;

  public void init(io.vertx.sqlclient.impl.Connection$Holder);
    descriptor: (Lio/vertx/sqlclient/impl/Connection$Holder;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.vertx.sqlclient.impl.SocketConnectionBase this
        start local 1 // io.vertx.sqlclient.impl.Connection$Holder holder
         0: .line 112
            aload 0 /* this */
            aload 1 /* holder */
            putfield io.vertx.sqlclient.impl.SocketConnectionBase.holder:Lio/vertx/sqlclient/impl/Connection$Holder;
         1: .line 113
            return
        end local 1 // io.vertx.sqlclient.impl.Connection$Holder holder
        end local 0 // io.vertx.sqlclient.impl.SocketConnectionBase this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Lio/vertx/sqlclient/impl/SocketConnectionBase;
            0    2     1  holder  Lio/vertx/sqlclient/impl/Connection$Holder;
    MethodParameters:
        Name  Flags
      holder  

  public int getProcessId();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // io.vertx.sqlclient.impl.SocketConnectionBase this
         0: .line 117
            new java.lang.UnsupportedOperationException
            dup
            invokespecial java.lang.UnsupportedOperationException.<init>:()V
            athrow
        end local 0 // io.vertx.sqlclient.impl.SocketConnectionBase this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/vertx/sqlclient/impl/SocketConnectionBase;

  public int getSecretKey();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // io.vertx.sqlclient.impl.SocketConnectionBase this
         0: .line 122
            new java.lang.UnsupportedOperationException
            dup
            invokespecial java.lang.UnsupportedOperationException.<init>:()V
            athrow
        end local 0 // io.vertx.sqlclient.impl.SocketConnectionBase this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/vertx/sqlclient/impl/SocketConnectionBase;

  public void close(io.vertx.sqlclient.impl.Connection$Holder, io.vertx.core.Promise<java.lang.Void>);
    descriptor: (Lio/vertx/sqlclient/impl/Connection$Holder;Lio/vertx/core/Promise;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // io.vertx.sqlclient.impl.SocketConnectionBase this
        start local 1 // io.vertx.sqlclient.impl.Connection$Holder holder
        start local 2 // io.vertx.core.Promise promise
         0: .line 127
            invokestatic io.vertx.core.Vertx.currentContext:()Lio/vertx/core/Context;
            aload 0 /* this */
            getfield io.vertx.sqlclient.impl.SocketConnectionBase.context:Lio/vertx/core/impl/ContextInternal;
            if_acmpne 10
         1: .line 128
            aload 0 /* this */
            getfield io.vertx.sqlclient.impl.SocketConnectionBase.status:Lio/vertx/sqlclient/impl/SocketConnectionBase$Status;
            getstatic io.vertx.sqlclient.impl.SocketConnectionBase$Status.CONNECTED:Lio/vertx/sqlclient/impl/SocketConnectionBase$Status;
            if_acmpne 11
         2: .line 129
            aload 0 /* this */
            getstatic io.vertx.sqlclient.impl.SocketConnectionBase$Status.CLOSING:Lio/vertx/sqlclient/impl/SocketConnectionBase$Status;
            putfield io.vertx.sqlclient.impl.SocketConnectionBase.status:Lio/vertx/sqlclient/impl/SocketConnectionBase$Status;
         3: .line 131
            aload 0 /* this */
            getfield io.vertx.sqlclient.impl.SocketConnectionBase.socket:Lio/vertx/core/net/impl/NetSocketInternal;
            invokeinterface io.vertx.core.net.impl.NetSocketInternal.channelHandlerContext:()Lio/netty/channel/ChannelHandlerContext;
         4: .line 132
            invokeinterface io.netty.channel.ChannelHandlerContext.channel:()Lio/netty/channel/Channel;
         5: .line 133
            invokeinterface io.netty.channel.Channel.closeFuture:()Lio/netty/channel/ChannelFuture;
         6: .line 134
            aload 2 /* promise */
            invokedynamic operationComplete(Lio/vertx/core/Promise;)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/sqlclient/impl/SocketConnectionBase.lambda$3(Lio/vertx/core/Promise;Lio/netty/channel/ChannelFuture;)V (6)
                  (Lio/netty/channel/ChannelFuture;)V
            invokeinterface io.netty.channel.ChannelFuture.addListener:(Lio/netty/util/concurrent/GenericFutureListener;)Lio/netty/channel/ChannelFuture;
            pop
         7: .line 135
            aload 0 /* this */
            getfield io.vertx.sqlclient.impl.SocketConnectionBase.pending:Ljava/util/ArrayDeque;
            getstatic io.vertx.sqlclient.impl.command.CloseConnectionCommand.INSTANCE:Lio/vertx/sqlclient/impl/command/CloseConnectionCommand;
            invokevirtual java.util.ArrayDeque.add:(Ljava/lang/Object;)Z
            pop
         8: .line 136
            aload 0 /* this */
            invokevirtual io.vertx.sqlclient.impl.SocketConnectionBase.checkPending:()V
         9: .line 138
            goto 11
        10: .line 139
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.vertx.sqlclient.impl.SocketConnectionBase.context:Lio/vertx/core/impl/ContextInternal;
            aload 0 /* this */
            aload 1 /* holder */
            aload 2 /* promise */
            invokedynamic handle(Lio/vertx/sqlclient/impl/SocketConnectionBase;Lio/vertx/sqlclient/impl/Connection$Holder;Lio/vertx/core/Promise;)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/sqlclient/impl/SocketConnectionBase.lambda$4(Lio/vertx/sqlclient/impl/Connection$Holder;Lio/vertx/core/Promise;Ljava/lang/Void;)V (7)
                  (Ljava/lang/Void;)V
            invokeinterface io.vertx.core.impl.ContextInternal.runOnContext:(Lio/vertx/core/Handler;)V
        11: .line 141
      StackMap locals:
      StackMap stack:
            return
        end local 2 // io.vertx.core.Promise promise
        end local 1 // io.vertx.sqlclient.impl.Connection$Holder holder
        end local 0 // io.vertx.sqlclient.impl.SocketConnectionBase this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   12     0     this  Lio/vertx/sqlclient/impl/SocketConnectionBase;
            0   12     1   holder  Lio/vertx/sqlclient/impl/Connection$Holder;
            0   12     2  promise  Lio/vertx/core/Promise<Ljava/lang/Void;>;
    Signature: (Lio/vertx/sqlclient/impl/Connection$Holder;Lio/vertx/core/Promise<Ljava/lang/Void;>;)V
    MethodParameters:
         Name  Flags
      holder   
      promise  

  public <R> void schedule(io.vertx.sqlclient.impl.command.CommandBase<R>, io.vertx.core.Promise<R>);
    descriptor: (Lio/vertx/sqlclient/impl/command/CommandBase;Lio/vertx/core/Promise;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // io.vertx.sqlclient.impl.SocketConnectionBase this
        start local 1 // io.vertx.sqlclient.impl.command.CommandBase cmd
        start local 2 // io.vertx.core.Promise promise
         0: .line 145
            aload 0 /* this */
            getfield io.vertx.sqlclient.impl.SocketConnectionBase.context:Lio/vertx/core/impl/ContextInternal;
            aload 0 /* this */
            aload 1 /* cmd */
            aload 2 /* promise */
            invokedynamic handle(Lio/vertx/sqlclient/impl/SocketConnectionBase;Lio/vertx/sqlclient/impl/command/CommandBase;Lio/vertx/core/Promise;)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/sqlclient/impl/SocketConnectionBase.lambda$5(Lio/vertx/sqlclient/impl/command/CommandBase;Lio/vertx/core/Promise;Ljava/lang/Void;)V (7)
                  (Ljava/lang/Void;)V
            invokeinterface io.vertx.core.impl.ContextInternal.emit:(Lio/vertx/core/Handler;)V
         1: .line 146
            return
        end local 2 // io.vertx.core.Promise promise
        end local 1 // io.vertx.sqlclient.impl.command.CommandBase cmd
        end local 0 // io.vertx.sqlclient.impl.SocketConnectionBase this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lio/vertx/sqlclient/impl/SocketConnectionBase;
            0    2     1      cmd  Lio/vertx/sqlclient/impl/command/CommandBase<TR;>;
            0    2     2  promise  Lio/vertx/core/Promise<TR;>;
    Signature: <R:Ljava/lang/Object;>(Lio/vertx/sqlclient/impl/command/CommandBase<TR;>;Lio/vertx/core/Promise<TR;>;)V
    MethodParameters:
         Name  Flags
      cmd      
      promise  

  protected <R> void doSchedule(io.vertx.sqlclient.impl.command.CommandBase<R>, io.vertx.core.Handler<io.vertx.core.AsyncResult<R>>);
    descriptor: (Lio/vertx/sqlclient/impl/command/CommandBase;Lio/vertx/core/Handler;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=6, locals=4, args_size=3
        start local 0 // io.vertx.sqlclient.impl.SocketConnectionBase this
        start local 1 // io.vertx.sqlclient.impl.command.CommandBase cmd
        start local 2 // io.vertx.core.Handler handler
         0: .line 149
            aload 2 /* handler */
            ifnonnull 2
         1: .line 150
            new java.lang.IllegalArgumentException
            dup
            invokespecial java.lang.IllegalArgumentException.<init>:()V
            athrow
         2: .line 152
      StackMap locals:
      StackMap stack:
            invokestatic io.vertx.core.Vertx.currentContext:()Lio/vertx/core/Context;
            astore 3 /* context */
        start local 3 // io.vertx.core.Context context
         3: .line 153
            aload 3 /* context */
            aload 0 /* this */
            getfield io.vertx.sqlclient.impl.SocketConnectionBase.context:Lio/vertx/core/impl/ContextInternal;
            if_acmpeq 5
         4: .line 154
            new java.lang.IllegalStateException
            dup
            invokespecial java.lang.IllegalStateException.<init>:()V
            athrow
         5: .line 156
      StackMap locals: io.vertx.core.Context
      StackMap stack:
            aload 1 /* cmd */
            aload 2 /* handler */
            putfield io.vertx.sqlclient.impl.command.CommandBase.handler:Lio/vertx/core/Handler;
         6: .line 157
            aload 0 /* this */
            getfield io.vertx.sqlclient.impl.SocketConnectionBase.status:Lio/vertx/sqlclient/impl/SocketConnectionBase$Status;
            getstatic io.vertx.sqlclient.impl.SocketConnectionBase$Status.CONNECTED:Lio/vertx/sqlclient/impl/SocketConnectionBase$Status;
            if_acmpne 10
         7: .line 158
            aload 0 /* this */
            getfield io.vertx.sqlclient.impl.SocketConnectionBase.pending:Ljava/util/ArrayDeque;
            aload 1 /* cmd */
            invokevirtual java.util.ArrayDeque.add:(Ljava/lang/Object;)Z
            pop
         8: .line 159
            aload 0 /* this */
            invokevirtual io.vertx.sqlclient.impl.SocketConnectionBase.checkPending:()V
         9: .line 160
            goto 11
        10: .line 161
      StackMap locals:
      StackMap stack:
            aload 1 /* cmd */
            new io.vertx.core.VertxException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Connection not open "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield io.vertx.sqlclient.impl.SocketConnectionBase.status:Lio/vertx/sqlclient/impl/SocketConnectionBase$Status;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial io.vertx.core.VertxException.<init>:(Ljava/lang/String;)V
            invokevirtual io.vertx.sqlclient.impl.command.CommandBase.fail:(Ljava/lang/Throwable;)V
        11: .line 163
      StackMap locals:
      StackMap stack:
            return
        end local 3 // io.vertx.core.Context context
        end local 2 // io.vertx.core.Handler handler
        end local 1 // io.vertx.sqlclient.impl.command.CommandBase cmd
        end local 0 // io.vertx.sqlclient.impl.SocketConnectionBase this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   12     0     this  Lio/vertx/sqlclient/impl/SocketConnectionBase;
            0   12     1      cmd  Lio/vertx/sqlclient/impl/command/CommandBase<TR;>;
            0   12     2  handler  Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<TR;>;>;
            3   12     3  context  Lio/vertx/core/Context;
    Signature: <R:Ljava/lang/Object;>(Lio/vertx/sqlclient/impl/command/CommandBase<TR;>;Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<TR;>;>;)V
    MethodParameters:
         Name  Flags
      cmd      
      handler  

  private void checkPending();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=8, args_size=1
        start local 0 // io.vertx.sqlclient.impl.SocketConnectionBase this
         0: .line 166
            aload 0 /* this */
            getfield io.vertx.sqlclient.impl.SocketConnectionBase.executing:Z
            ifeq 2
         1: .line 167
            return
         2: .line 170
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            putfield io.vertx.sqlclient.impl.SocketConnectionBase.executing:Z
         3: .line 171
            aload 0 /* this */
            getfield io.vertx.sqlclient.impl.SocketConnectionBase.socket:Lio/vertx/core/net/impl/NetSocketInternal;
            invokeinterface io.vertx.core.net.impl.NetSocketInternal.channelHandlerContext:()Lio/netty/channel/ChannelHandlerContext;
            astore 1 /* ctx */
        start local 1 // io.netty.channel.ChannelHandlerContext ctx
         4: .line 172
            iconst_0
            istore 2 /* written */
        start local 2 // int written
         5: .line 174
            goto 34
        start local 3 // io.vertx.sqlclient.impl.command.CommandBase cmd
         6: .line 175
      StackMap locals: io.netty.channel.ChannelHandlerContext int io.vertx.sqlclient.impl.command.CommandBase
      StackMap stack:
            aload 0 /* this */
            dup
            getfield io.vertx.sqlclient.impl.SocketConnectionBase.inflight:I
            iconst_1
            iadd
            putfield io.vertx.sqlclient.impl.SocketConnectionBase.inflight:I
         7: .line 176
            aload 3 /* cmd */
            instanceof io.vertx.sqlclient.impl.command.ExtendedQueryCommand
            ifeq 32
         8: .line 177
            aload 3 /* cmd */
            checkcast io.vertx.sqlclient.impl.command.ExtendedQueryCommand
            astore 4 /* queryCmd */
        start local 4 // io.vertx.sqlclient.impl.command.ExtendedQueryCommand queryCmd
         9: .line 178
            aload 4 /* queryCmd */
            getfield io.vertx.sqlclient.impl.command.ExtendedQueryCommand.ps:Lio/vertx/sqlclient/impl/PreparedStatement;
            ifnonnull 12
        10: .line 179
            aload 0 /* this */
            getfield io.vertx.sqlclient.impl.SocketConnectionBase.psCache:Lio/vertx/sqlclient/impl/cache/PreparedStatementCache;
            ifnull 12
        11: .line 180
            aload 4 /* queryCmd */
            aload 0 /* this */
            getfield io.vertx.sqlclient.impl.SocketConnectionBase.psCache:Lio/vertx/sqlclient/impl/cache/PreparedStatementCache;
            aload 4 /* queryCmd */
            invokevirtual io.vertx.sqlclient.impl.command.ExtendedQueryCommand.sql:()Ljava/lang/String;
            invokevirtual io.vertx.sqlclient.impl.cache.PreparedStatementCache.get:(Ljava/lang/String;)Lio/vertx/sqlclient/impl/PreparedStatement;
            putfield io.vertx.sqlclient.impl.command.ExtendedQueryCommand.ps:Lio/vertx/sqlclient/impl/PreparedStatement;
        12: .line 183
      StackMap locals: io.vertx.sqlclient.impl.command.ExtendedQueryCommand
      StackMap stack:
            aload 4 /* queryCmd */
            getfield io.vertx.sqlclient.impl.command.ExtendedQueryCommand.ps:Lio/vertx/sqlclient/impl/PreparedStatement;
            ifnonnull 27
        13: .line 185
            aload 0 /* this */
            getfield io.vertx.sqlclient.impl.SocketConnectionBase.psCache:Lio/vertx/sqlclient/impl/cache/PreparedStatementCache;
            ifnull 14
            aload 0 /* this */
            getfield io.vertx.sqlclient.impl.SocketConnectionBase.preparedStatementCacheSqlFilter:Ljava/util/function/Predicate;
            aload 4 /* queryCmd */
            invokevirtual io.vertx.sqlclient.impl.command.ExtendedQueryCommand.sql:()Ljava/lang/String;
            invokeinterface java.util.function.Predicate.test:(Ljava/lang/Object;)Z
            ifeq 14
            iconst_1
            goto 15
      StackMap locals:
      StackMap stack:
        14: iconst_0
      StackMap locals:
      StackMap stack: int
        15: istore 5 /* cache */
        start local 5 // boolean cache
        16: .line 186
            iload 5 /* cache */
            ifeq 22
        17: .line 187
            aload 0 /* this */
            invokevirtual io.vertx.sqlclient.impl.SocketConnectionBase.evictStatementIfNecessary:()Lio/vertx/sqlclient/impl/command/CloseStatementCommand;
            astore 6 /* closeCmd */
        start local 6 // io.vertx.sqlclient.impl.command.CloseStatementCommand closeCmd
        18: .line 188
            aload 6 /* closeCmd */
            ifnull 22
        19: .line 189
            aload 0 /* this */
            dup
            getfield io.vertx.sqlclient.impl.SocketConnectionBase.inflight:I
            iconst_1
            iadd
            putfield io.vertx.sqlclient.impl.SocketConnectionBase.inflight:I
        20: .line 190
            iinc 2 /* written */ 1
        21: .line 191
            aload 1 /* ctx */
            aload 6 /* closeCmd */
            invokeinterface io.netty.channel.ChannelHandlerContext.write:(Ljava/lang/Object;)Lio/netty/channel/ChannelFuture;
            pop
        end local 6 // io.vertx.sqlclient.impl.command.CloseStatementCommand closeCmd
        22: .line 194
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            aload 4 /* queryCmd */
            iload 5 /* cache */
            iconst_0
            invokevirtual io.vertx.sqlclient.impl.SocketConnectionBase.prepareCommand:(Lio/vertx/sqlclient/impl/command/ExtendedQueryCommand;ZZ)Lio/vertx/sqlclient/impl/command/PrepareStatementCommand;
            astore 6 /* prepareCmd */
        start local 6 // io.vertx.sqlclient.impl.command.PrepareStatementCommand prepareCmd
        23: .line 195
            aload 0 /* this */
            iconst_1
            putfield io.vertx.sqlclient.impl.SocketConnectionBase.paused:Z
        24: .line 196
            aload 0 /* this */
            dup
            getfield io.vertx.sqlclient.impl.SocketConnectionBase.inflight:I
            iconst_1
            iadd
            putfield io.vertx.sqlclient.impl.SocketConnectionBase.inflight:I
        25: .line 197
            aload 6 /* prepareCmd */
            astore 3 /* cmd */
        end local 6 // io.vertx.sqlclient.impl.command.PrepareStatementCommand prepareCmd
        end local 5 // boolean cache
        26: .line 198
            goto 32
        27: .line 199
      StackMap locals:
      StackMap stack:
            aload 4 /* queryCmd */
            invokevirtual io.vertx.sqlclient.impl.command.ExtendedQueryCommand.prepare:()Ljava/lang/String;
            astore 5 /* msg */
        start local 5 // java.lang.String msg
        28: .line 200
            aload 5 /* msg */
            ifnull 32
        29: .line 201
            aload 0 /* this */
            dup
            getfield io.vertx.sqlclient.impl.SocketConnectionBase.inflight:I
            iconst_1
            isub
            putfield io.vertx.sqlclient.impl.SocketConnectionBase.inflight:I
        30: .line 202
            aload 4 /* queryCmd */
            new io.vertx.core.impl.NoStackTraceThrowable
            dup
            aload 5 /* msg */
            invokespecial io.vertx.core.impl.NoStackTraceThrowable.<init>:(Ljava/lang/String;)V
            invokevirtual io.vertx.sqlclient.impl.command.ExtendedQueryCommand.fail:(Ljava/lang/Throwable;)V
        31: .line 203
            goto 34
        end local 5 // java.lang.String msg
        end local 4 // io.vertx.sqlclient.impl.command.ExtendedQueryCommand queryCmd
        32: .line 207
      StackMap locals:
      StackMap stack:
            iinc 2 /* written */ 1
        33: .line 208
            aload 1 /* ctx */
            aload 3 /* cmd */
            invokeinterface io.netty.channel.ChannelHandlerContext.write:(Ljava/lang/Object;)Lio/netty/channel/ChannelFuture;
            pop
        end local 3 // io.vertx.sqlclient.impl.command.CommandBase cmd
        34: .line 174
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.vertx.sqlclient.impl.SocketConnectionBase.paused:Z
            ifne 36
            aload 0 /* this */
            getfield io.vertx.sqlclient.impl.SocketConnectionBase.inflight:I
            aload 0 /* this */
            getfield io.vertx.sqlclient.impl.SocketConnectionBase.pipeliningLimit:I
            if_icmpge 36
            aload 0 /* this */
            getfield io.vertx.sqlclient.impl.SocketConnectionBase.pending:Ljava/util/ArrayDeque;
            invokevirtual java.util.ArrayDeque.poll:()Ljava/lang/Object;
            checkcast io.vertx.sqlclient.impl.command.CommandBase
            dup
            astore 3 /* cmd */
        start local 3 // io.vertx.sqlclient.impl.command.CommandBase cmd
        35: ifnonnull 6
        end local 3 // io.vertx.sqlclient.impl.command.CommandBase cmd
        36: .line 210
      StackMap locals:
      StackMap stack:
            iload 2 /* written */
            ifle 42
        37: .line 211
            aload 1 /* ctx */
            invokeinterface io.netty.channel.ChannelHandlerContext.flush:()Lio/netty/channel/ChannelHandlerContext;
            pop
        end local 2 // int written
        end local 1 // io.netty.channel.ChannelHandlerContext ctx
        38: .line 213
            goto 42
      StackMap locals: io.vertx.sqlclient.impl.SocketConnectionBase
      StackMap stack: java.lang.Throwable
        39: astore 7
        40: .line 214
            aload 0 /* this */
            iconst_0
            putfield io.vertx.sqlclient.impl.SocketConnectionBase.executing:Z
        41: .line 215
            aload 7
            athrow
        42: .line 214
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_0
            putfield io.vertx.sqlclient.impl.SocketConnectionBase.executing:Z
        43: .line 216
            return
        end local 0 // io.vertx.sqlclient.impl.SocketConnectionBase this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   44     0        this  Lio/vertx/sqlclient/impl/SocketConnectionBase;
            4   38     1         ctx  Lio/netty/channel/ChannelHandlerContext;
            5   38     2     written  I
            6   34     3         cmd  Lio/vertx/sqlclient/impl/command/CommandBase<*>;
           35   36     3         cmd  Lio/vertx/sqlclient/impl/command/CommandBase<*>;
            9   32     4    queryCmd  Lio/vertx/sqlclient/impl/command/ExtendedQueryCommand;
           16   26     5       cache  Z
           18   22     6    closeCmd  Lio/vertx/sqlclient/impl/command/CloseStatementCommand;
           23   26     6  prepareCmd  Lio/vertx/sqlclient/impl/command/PrepareStatementCommand;
           28   32     5         msg  Ljava/lang/String;
      Exception table:
        from    to  target  type
           2    39      39  any

  private io.vertx.sqlclient.impl.command.PrepareStatementCommand prepareCommand(io.vertx.sqlclient.impl.command.ExtendedQueryCommand<?>, boolean, boolean);
    descriptor: (Lio/vertx/sqlclient/impl/command/ExtendedQueryCommand;ZZ)Lio/vertx/sqlclient/impl/command/PrepareStatementCommand;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=5, args_size=4
        start local 0 // io.vertx.sqlclient.impl.SocketConnectionBase this
        start local 1 // io.vertx.sqlclient.impl.command.ExtendedQueryCommand queryCmd
        start local 2 // boolean cache
        start local 3 // boolean sendParameterTypes
         0: .line 219
            new io.vertx.sqlclient.impl.command.PrepareStatementCommand
            dup
            aload 1 /* queryCmd */
            invokevirtual io.vertx.sqlclient.impl.command.ExtendedQueryCommand.sql:()Ljava/lang/String;
            iload 2 /* cache */
            iload 3 /* sendParameterTypes */
            ifeq 1
            aload 1 /* queryCmd */
            invokevirtual io.vertx.sqlclient.impl.command.ExtendedQueryCommand.parameterTypes:()Ljava/util/List;
            goto 2
      StackMap locals: io.vertx.sqlclient.impl.SocketConnectionBase io.vertx.sqlclient.impl.command.ExtendedQueryCommand int int
      StackMap stack: new 0 new 0 java.lang.String int
         1: aconst_null
      StackMap locals: io.vertx.sqlclient.impl.SocketConnectionBase io.vertx.sqlclient.impl.command.ExtendedQueryCommand int int
      StackMap stack: new 0 new 0 java.lang.String int java.util.List
         2: invokespecial io.vertx.sqlclient.impl.command.PrepareStatementCommand.<init>:(Ljava/lang/String;ZLjava/util/List;)V
            astore 4 /* prepareCmd */
        start local 4 // io.vertx.sqlclient.impl.command.PrepareStatementCommand prepareCmd
         3: .line 220
            aload 4 /* prepareCmd */
            aload 0 /* this */
            iload 2 /* cache */
            aload 1 /* queryCmd */
            iload 3 /* sendParameterTypes */
            invokedynamic handle(Lio/vertx/sqlclient/impl/SocketConnectionBase;ZLio/vertx/sqlclient/impl/command/ExtendedQueryCommand;Z)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/sqlclient/impl/SocketConnectionBase.lambda$6(ZLio/vertx/sqlclient/impl/command/ExtendedQueryCommand;ZLio/vertx/core/AsyncResult;)V (7)
                  (Lio/vertx/core/AsyncResult;)V
            putfield io.vertx.sqlclient.impl.command.PrepareStatementCommand.handler:Lio/vertx/core/Handler;
         4: .line 250
            aload 4 /* prepareCmd */
            areturn
        end local 4 // io.vertx.sqlclient.impl.command.PrepareStatementCommand prepareCmd
        end local 3 // boolean sendParameterTypes
        end local 2 // boolean cache
        end local 1 // io.vertx.sqlclient.impl.command.ExtendedQueryCommand queryCmd
        end local 0 // io.vertx.sqlclient.impl.SocketConnectionBase this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0    5     0                this  Lio/vertx/sqlclient/impl/SocketConnectionBase;
            0    5     1            queryCmd  Lio/vertx/sqlclient/impl/command/ExtendedQueryCommand<*>;
            0    5     2               cache  Z
            0    5     3  sendParameterTypes  Z
            3    5     4          prepareCmd  Lio/vertx/sqlclient/impl/command/PrepareStatementCommand;
    Signature: (Lio/vertx/sqlclient/impl/command/ExtendedQueryCommand<*>;ZZ)Lio/vertx/sqlclient/impl/command/PrepareStatementCommand;
    MethodParameters:
                    Name  Flags
      queryCmd            
      cache               
      sendParameterTypes  

  protected void handleMessage(java.lang.Object);
    descriptor: (Ljava/lang/Object;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // io.vertx.sqlclient.impl.SocketConnectionBase this
        start local 1 // java.lang.Object msg
         0: .line 254
            aload 1 /* msg */
            instanceof io.vertx.sqlclient.impl.command.CommandResponse
            ifeq 6
         1: .line 255
            aload 0 /* this */
            dup
            getfield io.vertx.sqlclient.impl.SocketConnectionBase.inflight:I
            iconst_1
            isub
            putfield io.vertx.sqlclient.impl.SocketConnectionBase.inflight:I
         2: .line 256
            aload 1 /* msg */
            checkcast io.vertx.sqlclient.impl.command.CommandResponse
            astore 2 /* resp */
        start local 2 // io.vertx.sqlclient.impl.command.CommandResponse resp
         3: .line 257
            aload 2 /* resp */
            invokevirtual io.vertx.sqlclient.impl.command.CommandResponse.fire:()V
         4: .line 258
            aload 0 /* this */
            invokevirtual io.vertx.sqlclient.impl.SocketConnectionBase.checkPending:()V
        end local 2 // io.vertx.sqlclient.impl.command.CommandResponse resp
         5: .line 259
            goto 9
      StackMap locals:
      StackMap stack:
         6: aload 1 /* msg */
            instanceof io.vertx.sqlclient.impl.codec.InvalidCachedStatementEvent
            ifeq 9
         7: .line 260
            aload 1 /* msg */
            checkcast io.vertx.sqlclient.impl.codec.InvalidCachedStatementEvent
            astore 2 /* event */
        start local 2 // io.vertx.sqlclient.impl.codec.InvalidCachedStatementEvent event
         8: .line 261
            aload 0 /* this */
            aload 2 /* event */
            invokevirtual io.vertx.sqlclient.impl.codec.InvalidCachedStatementEvent.sql:()Ljava/lang/String;
            invokevirtual io.vertx.sqlclient.impl.SocketConnectionBase.removeCachedStatement:(Ljava/lang/String;)V
        end local 2 // io.vertx.sqlclient.impl.codec.InvalidCachedStatementEvent event
         9: .line 263
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.Object msg
        end local 0 // io.vertx.sqlclient.impl.SocketConnectionBase this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   10     0   this  Lio/vertx/sqlclient/impl/SocketConnectionBase;
            0   10     1    msg  Ljava/lang/Object;
            3    5     2   resp  Lio/vertx/sqlclient/impl/command/CommandResponse;
            8    9     2  event  Lio/vertx/sqlclient/impl/codec/InvalidCachedStatementEvent;
    MethodParameters:
      Name  Flags
      msg   

  protected void handleEvent(java.lang.Object);
    descriptor: (Ljava/lang/Object;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.vertx.sqlclient.impl.SocketConnectionBase this
        start local 1 // java.lang.Object event
         0: .line 266
            aload 0 /* this */
            getfield io.vertx.sqlclient.impl.SocketConnectionBase.holder:Lio/vertx/sqlclient/impl/Connection$Holder;
            ifnull 2
         1: .line 267
            aload 0 /* this */
            getfield io.vertx.sqlclient.impl.SocketConnectionBase.holder:Lio/vertx/sqlclient/impl/Connection$Holder;
            aload 1 /* event */
            invokeinterface io.vertx.sqlclient.impl.Connection$Holder.handleEvent:(Ljava/lang/Object;)V
         2: .line 269
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.Object event
        end local 0 // io.vertx.sqlclient.impl.SocketConnectionBase this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Lio/vertx/sqlclient/impl/SocketConnectionBase;
            0    3     1  event  Ljava/lang/Object;
    MethodParameters:
       Name  Flags
      event  

  private io.vertx.sqlclient.impl.command.CloseStatementCommand evictStatementIfNecessary();
    descriptor: ()Lio/vertx/sqlclient/impl/command/CloseStatementCommand;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=1
        start local 0 // io.vertx.sqlclient.impl.SocketConnectionBase this
         0: .line 272
            aload 0 /* this */
            getfield io.vertx.sqlclient.impl.SocketConnectionBase.psCache:Lio/vertx/sqlclient/impl/cache/PreparedStatementCache;
            ifnull 5
            aload 0 /* this */
            getfield io.vertx.sqlclient.impl.SocketConnectionBase.psCache:Lio/vertx/sqlclient/impl/cache/PreparedStatementCache;
            invokevirtual io.vertx.sqlclient.impl.cache.PreparedStatementCache.isFull:()Z
            ifeq 5
         1: .line 273
            aload 0 /* this */
            getfield io.vertx.sqlclient.impl.SocketConnectionBase.psCache:Lio/vertx/sqlclient/impl/cache/PreparedStatementCache;
            invokevirtual io.vertx.sqlclient.impl.cache.PreparedStatementCache.evict:()Lio/vertx/sqlclient/impl/PreparedStatement;
            astore 1 /* evicted */
        start local 1 // io.vertx.sqlclient.impl.PreparedStatement evicted
         2: .line 274
            new io.vertx.sqlclient.impl.command.CloseStatementCommand
            dup
            aload 1 /* evicted */
            invokespecial io.vertx.sqlclient.impl.command.CloseStatementCommand.<init>:(Lio/vertx/sqlclient/impl/PreparedStatement;)V
            astore 2 /* closeCmd */
        start local 2 // io.vertx.sqlclient.impl.command.CloseStatementCommand closeCmd
         3: .line 275
            aload 2 /* closeCmd */
            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/sqlclient/impl/SocketConnectionBase.lambda$7(Lio/vertx/core/AsyncResult;)V (6)
                  (Lio/vertx/core/AsyncResult;)V
            putfield io.vertx.sqlclient.impl.command.CloseStatementCommand.handler:Lio/vertx/core/Handler;
         4: .line 280
            aload 2 /* closeCmd */
            areturn
        end local 2 // io.vertx.sqlclient.impl.command.CloseStatementCommand closeCmd
        end local 1 // io.vertx.sqlclient.impl.PreparedStatement evicted
         5: .line 282
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 0 // io.vertx.sqlclient.impl.SocketConnectionBase this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    6     0      this  Lio/vertx/sqlclient/impl/SocketConnectionBase;
            2    5     1   evicted  Lio/vertx/sqlclient/impl/PreparedStatement;
            3    5     2  closeCmd  Lio/vertx/sqlclient/impl/command/CloseStatementCommand;

  private void cacheStatement(io.vertx.sqlclient.impl.PreparedStatement);
    descriptor: (Lio/vertx/sqlclient/impl/PreparedStatement;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // io.vertx.sqlclient.impl.SocketConnectionBase this
        start local 1 // io.vertx.sqlclient.impl.PreparedStatement preparedStatement
         0: .line 287
            aload 0 /* this */
            getfield io.vertx.sqlclient.impl.SocketConnectionBase.psCache:Lio/vertx/sqlclient/impl/cache/PreparedStatementCache;
            ifnull 3
         1: .line 288
            aload 0 /* this */
            getfield io.vertx.sqlclient.impl.SocketConnectionBase.psCache:Lio/vertx/sqlclient/impl/cache/PreparedStatementCache;
            aload 1 /* preparedStatement */
            invokevirtual io.vertx.sqlclient.impl.cache.PreparedStatementCache.put:(Lio/vertx/sqlclient/impl/PreparedStatement;)Ljava/util/List;
            astore 2 /* evictedList */
        start local 2 // java.util.List evictedList
         2: .line 289
            getstatic io.vertx.sqlclient.impl.SocketConnectionBase.$assertionsDisabled:Z
            ifne 3
            aload 2 /* evictedList */
            invokeinterface java.util.List.size:()I
            ifeq 3
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        end local 2 // java.util.List evictedList
         3: .line 291
      StackMap locals:
      StackMap stack:
            return
        end local 1 // io.vertx.sqlclient.impl.PreparedStatement preparedStatement
        end local 0 // io.vertx.sqlclient.impl.SocketConnectionBase this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    4     0               this  Lio/vertx/sqlclient/impl/SocketConnectionBase;
            0    4     1  preparedStatement  Lio/vertx/sqlclient/impl/PreparedStatement;
            2    3     2        evictedList  Ljava/util/List<Lio/vertx/sqlclient/impl/PreparedStatement;>;
    MethodParameters:
                   Name  Flags
      preparedStatement  

  private void removeCachedStatement(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.vertx.sqlclient.impl.SocketConnectionBase this
        start local 1 // java.lang.String sql
         0: .line 294
            aload 0 /* this */
            getfield io.vertx.sqlclient.impl.SocketConnectionBase.psCache:Lio/vertx/sqlclient/impl/cache/PreparedStatementCache;
            ifnull 2
         1: .line 295
            aload 0 /* this */
            getfield io.vertx.sqlclient.impl.SocketConnectionBase.psCache:Lio/vertx/sqlclient/impl/cache/PreparedStatementCache;
            aload 1 /* sql */
            invokevirtual io.vertx.sqlclient.impl.cache.PreparedStatementCache.remove:(Ljava/lang/String;)V
         2: .line 297
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.String sql
        end local 0 // io.vertx.sqlclient.impl.SocketConnectionBase this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lio/vertx/sqlclient/impl/SocketConnectionBase;
            0    3     1   sql  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      sql   

  private void handleClosed(java.lang.Void);
    descriptor: (Ljava/lang/Void;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.vertx.sqlclient.impl.SocketConnectionBase this
        start local 1 // java.lang.Void v
         0: .line 300
            aload 0 /* this */
            aconst_null
            invokevirtual io.vertx.sqlclient.impl.SocketConnectionBase.handleClose:(Ljava/lang/Throwable;)V
         1: .line 301
            return
        end local 1 // java.lang.Void v
        end local 0 // io.vertx.sqlclient.impl.SocketConnectionBase this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lio/vertx/sqlclient/impl/SocketConnectionBase;
            0    2     1     v  Ljava/lang/Void;
    MethodParameters:
      Name  Flags
      v     

  private synchronized void handleException(java.lang.Throwable);
    descriptor: (Ljava/lang/Throwable;)V
    flags: (0x0022) ACC_PRIVATE, ACC_SYNCHRONIZED
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // io.vertx.sqlclient.impl.SocketConnectionBase this
        start local 1 // java.lang.Throwable t
         0: .line 304
            aload 1 /* t */
            instanceof io.netty.handler.codec.DecoderException
            ifeq 3
         1: .line 305
            aload 1 /* t */
            checkcast io.netty.handler.codec.DecoderException
            astore 2 /* err */
        start local 2 // io.netty.handler.codec.DecoderException err
         2: .line 306
            aload 2 /* err */
            invokevirtual io.netty.handler.codec.DecoderException.getCause:()Ljava/lang/Throwable;
            astore 1 /* t */
        end local 2 // io.netty.handler.codec.DecoderException err
         3: .line 308
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* t */
            invokevirtual io.vertx.sqlclient.impl.SocketConnectionBase.handleClose:(Ljava/lang/Throwable;)V
         4: .line 309
            return
        end local 1 // java.lang.Throwable t
        end local 0 // io.vertx.sqlclient.impl.SocketConnectionBase this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lio/vertx/sqlclient/impl/SocketConnectionBase;
            0    5     1     t  Ljava/lang/Throwable;
            2    3     2   err  Lio/netty/handler/codec/DecoderException;
    MethodParameters:
      Name  Flags
      t     

  protected void handleClose(java.lang.Throwable);
    descriptor: (Ljava/lang/Throwable;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=5, args_size=2
        start local 0 // io.vertx.sqlclient.impl.SocketConnectionBase this
        start local 1 // java.lang.Throwable t
         0: .line 312
            aload 0 /* this */
            getfield io.vertx.sqlclient.impl.SocketConnectionBase.status:Lio/vertx/sqlclient/impl/SocketConnectionBase$Status;
            getstatic io.vertx.sqlclient.impl.SocketConnectionBase$Status.CLOSED:Lio/vertx/sqlclient/impl/SocketConnectionBase$Status;
            if_acmpeq 20
         1: .line 313
            aload 0 /* this */
            getstatic io.vertx.sqlclient.impl.SocketConnectionBase$Status.CLOSED:Lio/vertx/sqlclient/impl/SocketConnectionBase$Status;
            putfield io.vertx.sqlclient.impl.SocketConnectionBase.status:Lio/vertx/sqlclient/impl/SocketConnectionBase$Status;
         2: .line 314
            aload 1 /* t */
            ifnull 10
         3: .line 315
            aload 0 /* this */
            dup
            astore 2
            monitorenter
         4: .line 316
            aload 0 /* this */
            getfield io.vertx.sqlclient.impl.SocketConnectionBase.holder:Lio/vertx/sqlclient/impl/Connection$Holder;
            ifnull 6
         5: .line 317
            aload 0 /* this */
            getfield io.vertx.sqlclient.impl.SocketConnectionBase.holder:Lio/vertx/sqlclient/impl/Connection$Holder;
            aload 1 /* t */
            invokeinterface io.vertx.sqlclient.impl.Connection$Holder.handleException:(Ljava/lang/Throwable;)V
         6: .line 315
      StackMap locals: io.vertx.sqlclient.impl.SocketConnectionBase
      StackMap stack:
            aload 2
            monitorexit
         7: goto 10
      StackMap locals:
      StackMap stack: java.lang.Throwable
         8: aload 2
            monitorexit
         9: athrow
        10: .line 321
      StackMap locals:
      StackMap stack:
            aload 1 /* t */
            ifnonnull 11
            new io.vertx.core.impl.NoStackTraceThrowable
            dup
            ldc "Pending requests failed to be sent due to connection has been closed."
            invokespecial io.vertx.core.impl.NoStackTraceThrowable.<init>:(Ljava/lang/String;)V
            goto 12
      StackMap locals:
      StackMap stack:
        11: new io.vertx.core.VertxException
            dup
            ldc "Pending requests failed to be sent due to connection has been closed."
            aload 1 /* t */
            invokespecial io.vertx.core.VertxException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack: java.lang.Throwable
        12: astore 2 /* cause */
        start local 2 // java.lang.Throwable cause
        13: .line 323
            goto 16
        start local 3 // io.vertx.sqlclient.impl.command.CommandBase cmd
        14: .line 324
      StackMap locals: java.lang.Throwable io.vertx.sqlclient.impl.command.CommandBase
      StackMap stack:
            aload 3 /* cmd */
            astore 4 /* c */
        start local 4 // io.vertx.sqlclient.impl.command.CommandBase c
        15: .line 325
            aload 0 /* this */
            getfield io.vertx.sqlclient.impl.SocketConnectionBase.context:Lio/vertx/core/impl/ContextInternal;
            aload 4 /* c */
            aload 2 /* cause */
            invokedynamic handle(Lio/vertx/sqlclient/impl/command/CommandBase;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/sqlclient/impl/SocketConnectionBase.lambda$8(Lio/vertx/sqlclient/impl/command/CommandBase;Ljava/lang/Throwable;Ljava/lang/Void;)V (6)
                  (Ljava/lang/Void;)V
            invokeinterface io.vertx.core.impl.ContextInternal.runOnContext:(Lio/vertx/core/Handler;)V
        end local 4 // io.vertx.sqlclient.impl.command.CommandBase c
        end local 3 // io.vertx.sqlclient.impl.command.CommandBase cmd
        16: .line 323
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.vertx.sqlclient.impl.SocketConnectionBase.pending:Ljava/util/ArrayDeque;
            invokevirtual java.util.ArrayDeque.poll:()Ljava/lang/Object;
            checkcast io.vertx.sqlclient.impl.command.CommandBase
            dup
            astore 3 /* cmd */
        start local 3 // io.vertx.sqlclient.impl.command.CommandBase cmd
        17: ifnonnull 14
        18: .line 327
            aload 0 /* this */
            getfield io.vertx.sqlclient.impl.SocketConnectionBase.holder:Lio/vertx/sqlclient/impl/Connection$Holder;
            ifnull 20
        19: .line 328
            aload 0 /* this */
            getfield io.vertx.sqlclient.impl.SocketConnectionBase.holder:Lio/vertx/sqlclient/impl/Connection$Holder;
            invokeinterface io.vertx.sqlclient.impl.Connection$Holder.handleClosed:()V
        end local 3 // io.vertx.sqlclient.impl.command.CommandBase cmd
        end local 2 // java.lang.Throwable cause
        20: .line 331
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.Throwable t
        end local 0 // io.vertx.sqlclient.impl.SocketConnectionBase this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   21     0   this  Lio/vertx/sqlclient/impl/SocketConnectionBase;
            0   21     1      t  Ljava/lang/Throwable;
           13   20     2  cause  Ljava/lang/Throwable;
           14   16     3    cmd  Lio/vertx/sqlclient/impl/command/CommandBase<*>;
           17   20     3    cmd  Lio/vertx/sqlclient/impl/command/CommandBase<*>;
           15   16     4      c  Lio/vertx/sqlclient/impl/command/CommandBase<*>;
      Exception table:
        from    to  target  type
           4     7       8  any
           8     9       8  any
    MethodParameters:
      Name  Flags
      t     

  private void lambda$2(java.lang.Object);
    descriptor: (Ljava/lang/Object;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // io.vertx.sqlclient.impl.SocketConnectionBase this
        start local 1 // java.lang.Object msg
         0: .line 95
            aload 0 /* this */
            aload 1 /* msg */
            invokevirtual io.vertx.sqlclient.impl.SocketConnectionBase.handleMessage:(Ljava/lang/Object;)V
         1: .line 96
            goto 4
      StackMap locals:
      StackMap stack: java.lang.Exception
         2: astore 2 /* e */
        start local 2 // java.lang.Exception e
         3: .line 97
            aload 0 /* this */
            aload 2 /* e */
            invokevirtual io.vertx.sqlclient.impl.SocketConnectionBase.handleException:(Ljava/lang/Throwable;)V
        end local 2 // java.lang.Exception e
         4: .line 99
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.Object msg
        end local 0 // io.vertx.sqlclient.impl.SocketConnectionBase this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lio/vertx/sqlclient/impl/SocketConnectionBase;
            0    5     1   msg  Ljava/lang/Object;
            3    4     2     e  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
           0     1       2  Class java.lang.Exception

  private static void lambda$3(io.vertx.core.Promise, io.netty.channel.ChannelFuture);
    descriptor: (Lio/vertx/core/Promise;Lio/netty/channel/ChannelFuture;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=1, locals=2, args_size=2
        start local 1 // io.netty.channel.ChannelFuture channelFuture
         0: .line 134
            aload 0
            invokeinterface io.vertx.core.Promise.complete:()V
            return
        end local 1 // io.netty.channel.ChannelFuture channelFuture
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    1     1  channelFuture  Lio/netty/channel/ChannelFuture;
    Exceptions:
      throws java.lang.Exception

  private void lambda$4(io.vertx.sqlclient.impl.Connection$Holder, io.vertx.core.Promise, java.lang.Void);
    descriptor: (Lio/vertx/sqlclient/impl/Connection$Holder;Lio/vertx/core/Promise;Ljava/lang/Void;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=3, locals=4, args_size=4
        start local 0 // io.vertx.sqlclient.impl.SocketConnectionBase this
        start local 3 // java.lang.Void v
         0: .line 139
            aload 0 /* this */
            aload 1
            aload 2
            invokevirtual io.vertx.sqlclient.impl.SocketConnectionBase.close:(Lio/vertx/sqlclient/impl/Connection$Holder;Lio/vertx/core/Promise;)V
            return
        end local 3 // java.lang.Void v
        end local 0 // io.vertx.sqlclient.impl.SocketConnectionBase this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/vertx/sqlclient/impl/SocketConnectionBase;
            0    1     3     v  Ljava/lang/Void;

  private void lambda$5(io.vertx.sqlclient.impl.command.CommandBase, io.vertx.core.Promise, java.lang.Void);
    descriptor: (Lio/vertx/sqlclient/impl/command/CommandBase;Lio/vertx/core/Promise;Ljava/lang/Void;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=3, locals=4, args_size=4
        start local 0 // io.vertx.sqlclient.impl.SocketConnectionBase this
        start local 3 // java.lang.Void v
         0: .line 145
            aload 0 /* this */
            aload 1
            aload 2
            invokevirtual io.vertx.sqlclient.impl.SocketConnectionBase.doSchedule:(Lio/vertx/sqlclient/impl/command/CommandBase;Lio/vertx/core/Handler;)V
            return
        end local 3 // java.lang.Void v
        end local 0 // io.vertx.sqlclient.impl.SocketConnectionBase this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/vertx/sqlclient/impl/SocketConnectionBase;
            0    1     3     v  Ljava/lang/Void;

  private void lambda$6(boolean, io.vertx.sqlclient.impl.command.ExtendedQueryCommand, boolean, io.vertx.core.AsyncResult);
    descriptor: (ZLio/vertx/sqlclient/impl/command/ExtendedQueryCommand;ZLio/vertx/core/AsyncResult;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=5, locals=8, args_size=5
        start local 0 // io.vertx.sqlclient.impl.SocketConnectionBase this
        start local 4 // io.vertx.core.AsyncResult ar
         0: .line 221
            aload 0 /* this */
            iconst_0
            putfield io.vertx.sqlclient.impl.SocketConnectionBase.paused:Z
         1: .line 222
            aload 4 /* ar */
            invokeinterface io.vertx.core.AsyncResult.succeeded:()Z
            ifeq 15
         2: .line 223
            aload 4 /* ar */
            invokeinterface io.vertx.core.AsyncResult.result:()Ljava/lang/Object;
            checkcast io.vertx.sqlclient.impl.PreparedStatement
            astore 5 /* ps */
        start local 5 // io.vertx.sqlclient.impl.PreparedStatement ps
         3: .line 224
            iload 1
            ifeq 5
         4: .line 225
            aload 0 /* this */
            aload 5 /* ps */
            invokevirtual io.vertx.sqlclient.impl.SocketConnectionBase.cacheStatement:(Lio/vertx/sqlclient/impl/PreparedStatement;)V
         5: .line 227
      StackMap locals: io.vertx.sqlclient.impl.PreparedStatement
      StackMap stack:
            aload 2
            aload 5 /* ps */
            putfield io.vertx.sqlclient.impl.command.ExtendedQueryCommand.ps:Lio/vertx/sqlclient/impl/PreparedStatement;
         6: .line 228
            aload 2
            invokevirtual io.vertx.sqlclient.impl.command.ExtendedQueryCommand.prepare:()Ljava/lang/String;
            astore 6 /* msg */
        start local 6 // java.lang.String msg
         7: .line 229
            aload 6 /* msg */
            ifnull 11
         8: .line 230
            aload 0 /* this */
            dup
            getfield io.vertx.sqlclient.impl.SocketConnectionBase.inflight:I
            iconst_1
            isub
            putfield io.vertx.sqlclient.impl.SocketConnectionBase.inflight:I
         9: .line 231
            aload 2
            new io.vertx.core.impl.NoStackTraceThrowable
            dup
            aload 6 /* msg */
            invokespecial io.vertx.core.impl.NoStackTraceThrowable.<init>:(Ljava/lang/String;)V
            invokevirtual io.vertx.sqlclient.impl.command.ExtendedQueryCommand.fail:(Ljava/lang/Throwable;)V
        10: .line 232
            goto 23
        11: .line 233
      StackMap locals: java.lang.String
      StackMap stack:
            aload 0 /* this */
            getfield io.vertx.sqlclient.impl.SocketConnectionBase.socket:Lio/vertx/core/net/impl/NetSocketInternal;
            invokeinterface io.vertx.core.net.impl.NetSocketInternal.channelHandlerContext:()Lio/netty/channel/ChannelHandlerContext;
            astore 7 /* ctx */
        start local 7 // io.netty.channel.ChannelHandlerContext ctx
        12: .line 234
            aload 7 /* ctx */
            aload 2
            invokeinterface io.netty.channel.ChannelHandlerContext.write:(Ljava/lang/Object;)Lio/netty/channel/ChannelFuture;
            pop
        13: .line 235
            aload 7 /* ctx */
            invokeinterface io.netty.channel.ChannelHandlerContext.flush:()Lio/netty/channel/ChannelHandlerContext;
            pop
        end local 7 // io.netty.channel.ChannelHandlerContext ctx
        end local 6 // java.lang.String msg
        end local 5 // io.vertx.sqlclient.impl.PreparedStatement ps
        14: .line 237
            goto 23
        15: .line 238
      StackMap locals:
      StackMap stack:
            aload 4 /* ar */
            invokeinterface io.vertx.core.AsyncResult.cause:()Ljava/lang/Throwable;
            astore 5 /* cause */
        start local 5 // java.lang.Throwable cause
        16: .line 239
            aload 0 /* this */
            aload 5 /* cause */
            invokevirtual io.vertx.sqlclient.impl.SocketConnectionBase.isIndeterminatePreparedStatementError:(Ljava/lang/Throwable;)Z
            ifeq 21
            iload 3
            ifne 21
        17: .line 240
            aload 0 /* this */
            getfield io.vertx.sqlclient.impl.SocketConnectionBase.socket:Lio/vertx/core/net/impl/NetSocketInternal;
            invokeinterface io.vertx.core.net.impl.NetSocketInternal.channelHandlerContext:()Lio/netty/channel/ChannelHandlerContext;
            astore 6 /* ctx */
        start local 6 // io.netty.channel.ChannelHandlerContext ctx
        18: .line 242
            aload 6 /* ctx */
            aload 0 /* this */
            aload 2
            iconst_0
            iconst_1
            invokevirtual io.vertx.sqlclient.impl.SocketConnectionBase.prepareCommand:(Lio/vertx/sqlclient/impl/command/ExtendedQueryCommand;ZZ)Lio/vertx/sqlclient/impl/command/PrepareStatementCommand;
            invokeinterface io.netty.channel.ChannelHandlerContext.write:(Ljava/lang/Object;)Lio/netty/channel/ChannelFuture;
            pop
        19: .line 243
            aload 6 /* ctx */
            invokeinterface io.netty.channel.ChannelHandlerContext.flush:()Lio/netty/channel/ChannelHandlerContext;
            pop
        end local 6 // io.netty.channel.ChannelHandlerContext ctx
        20: .line 244
            goto 23
        21: .line 245
      StackMap locals: java.lang.Throwable
      StackMap stack:
            aload 0 /* this */
            dup
            getfield io.vertx.sqlclient.impl.SocketConnectionBase.inflight:I
            iconst_1
            isub
            putfield io.vertx.sqlclient.impl.SocketConnectionBase.inflight:I
        22: .line 246
            aload 2
            aload 5 /* cause */
            invokevirtual io.vertx.sqlclient.impl.command.ExtendedQueryCommand.fail:(Ljava/lang/Throwable;)V
        end local 5 // java.lang.Throwable cause
        23: .line 249
      StackMap locals:
      StackMap stack:
            return
        end local 4 // io.vertx.core.AsyncResult ar
        end local 0 // io.vertx.sqlclient.impl.SocketConnectionBase this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   24     0   this  Lio/vertx/sqlclient/impl/SocketConnectionBase;
            0   24     4     ar  Lio/vertx/core/AsyncResult<Lio/vertx/sqlclient/impl/PreparedStatement;>;
            3   14     5     ps  Lio/vertx/sqlclient/impl/PreparedStatement;
            7   14     6    msg  Ljava/lang/String;
           12   14     7    ctx  Lio/netty/channel/ChannelHandlerContext;
           16   23     5  cause  Ljava/lang/Throwable;
           18   20     6    ctx  Lio/netty/channel/ChannelHandlerContext;

  private static void lambda$7(io.vertx.core.AsyncResult);
    descriptor: (Lio/vertx/core/AsyncResult;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // io.vertx.core.AsyncResult ar
         0: .line 276
            aload 0 /* ar */
            invokeinterface io.vertx.core.AsyncResult.failed:()Z
            ifeq 2
         1: .line 277
            getstatic io.vertx.sqlclient.impl.SocketConnectionBase.logger:Lio/vertx/core/impl/logging/Logger;
            ldc "Error when closing cached prepared statement"
            aload 0 /* ar */
            invokeinterface io.vertx.core.AsyncResult.cause:()Ljava/lang/Throwable;
            invokeinterface io.vertx.core.impl.logging.Logger.error:(Ljava/lang/Object;Ljava/lang/Throwable;)V
         2: .line 279
      StackMap locals:
      StackMap stack:
            return
        end local 0 // io.vertx.core.AsyncResult ar
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0    ar  Lio/vertx/core/AsyncResult<Ljava/lang/Void;>;

  private static void lambda$8(io.vertx.sqlclient.impl.command.CommandBase, java.lang.Throwable, java.lang.Void);
    descriptor: (Lio/vertx/sqlclient/impl/command/CommandBase;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 // java.lang.Void v
         0: .line 325
            aload 0
            aload 1
            invokevirtual io.vertx.sqlclient.impl.command.CommandBase.fail:(Ljava/lang/Throwable;)V
            return
        end local 2 // java.lang.Void v
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     2     v  Ljava/lang/Void;
}
SourceFile: "SocketConnectionBase.java"
NestMembers:
  io.vertx.sqlclient.impl.SocketConnectionBase$Status
InnerClasses:
  public abstract Holder = io.vertx.sqlclient.impl.Connection$Holder of io.vertx.sqlclient.impl.Connection
  public final Status = io.vertx.sqlclient.impl.SocketConnectionBase$Status of io.vertx.sqlclient.impl.SocketConnectionBase
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles