public class io.vertx.mysqlclient.impl.MySQLConnectionImpl extends io.vertx.sqlclient.impl.SqlConnectionImpl<io.vertx.mysqlclient.impl.MySQLConnectionImpl> implements io.vertx.mysqlclient.MySQLConnection
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: io.vertx.mysqlclient.impl.MySQLConnectionImpl
  super_class: io.vertx.sqlclient.impl.SqlConnectionImpl
{
  private final io.vertx.mysqlclient.impl.MySQLConnectionFactory factory;
    descriptor: Lio/vertx/mysqlclient/impl/MySQLConnectionFactory;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  public static io.vertx.core.Future<io.vertx.mysqlclient.MySQLConnection> connect(io.vertx.core.impl.ContextInternal, io.vertx.mysqlclient.MySQLConnectOptions);
    descriptor: (Lio/vertx/core/impl/ContextInternal;Lio/vertx/mysqlclient/MySQLConnectOptions;)Lio/vertx/core/Future;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=5, args_size=2
        start local 0 // io.vertx.core.impl.ContextInternal ctx
        start local 1 // io.vertx.mysqlclient.MySQLConnectOptions options
         0: .line 33
            aload 1 /* options */
            invokevirtual io.vertx.mysqlclient.MySQLConnectOptions.isUsingDomainSocket:()Z
            ifeq 2
            aload 0 /* ctx */
            invokeinterface io.vertx.core.impl.ContextInternal.owner:()Lio/vertx/core/impl/VertxInternal;
            invokeinterface io.vertx.core.impl.VertxInternal.isNativeTransportEnabled:()Z
            ifne 2
         1: .line 34
            aload 0 /* ctx */
            ldc "Native transport is not available"
            invokeinterface io.vertx.core.impl.ContextInternal.failedFuture:(Ljava/lang/String;)Lio/vertx/core/Future;
            areturn
         2: .line 38
      StackMap locals:
      StackMap stack:
            new io.vertx.mysqlclient.impl.MySQLConnectionFactory
            dup
            aload 0 /* ctx */
            aload 1 /* options */
            invokespecial io.vertx.mysqlclient.impl.MySQLConnectionFactory.<init>:(Lio/vertx/core/impl/ContextInternal;Lio/vertx/mysqlclient/MySQLConnectOptions;)V
            astore 2 /* client */
        start local 2 // io.vertx.mysqlclient.impl.MySQLConnectionFactory client
         3: .line 39
            goto 6
        end local 2 // io.vertx.mysqlclient.impl.MySQLConnectionFactory client
      StackMap locals:
      StackMap stack: java.lang.Exception
         4: astore 3 /* e */
        start local 3 // java.lang.Exception e
         5: .line 40
            aload 0 /* ctx */
            aload 3 /* e */
            invokeinterface io.vertx.core.impl.ContextInternal.failedFuture:(Ljava/lang/Throwable;)Lio/vertx/core/Future;
            areturn
        end local 3 // java.lang.Exception e
        start local 2 // io.vertx.mysqlclient.impl.MySQLConnectionFactory client
         6: .line 42
      StackMap locals: io.vertx.mysqlclient.impl.MySQLConnectionFactory
      StackMap stack:
            aload 0 /* ctx */
            aload 2 /* client */
            invokeinterface io.vertx.core.impl.ContextInternal.addCloseHook:(Lio/vertx/core/Closeable;)V
         7: .line 43
            aload 0 /* ctx */
            invokeinterface io.vertx.core.impl.ContextInternal.tracer:()Lio/vertx/core/spi/tracing/VertxTracer;
            ifnonnull 8
            aconst_null
            goto 9
      StackMap locals:
      StackMap stack:
         8: new io.vertx.sqlclient.impl.tracing.QueryTracer
            dup
            aload 0 /* ctx */
            invokeinterface io.vertx.core.impl.ContextInternal.tracer:()Lio/vertx/core/spi/tracing/VertxTracer;
            aload 1 /* options */
            invokespecial io.vertx.sqlclient.impl.tracing.QueryTracer.<init>:(Lio/vertx/core/spi/tracing/VertxTracer;Lio/vertx/sqlclient/SqlConnectOptions;)V
      StackMap locals:
      StackMap stack: io.vertx.sqlclient.impl.tracing.QueryTracer
         9: astore 3 /* tracer */
        start local 3 // io.vertx.sqlclient.impl.tracing.QueryTracer tracer
        10: .line 44
            aload 0 /* ctx */
            invokeinterface io.vertx.core.impl.ContextInternal.promise:()Lio/vertx/core/impl/future/PromiseInternal;
            astore 4 /* promise */
        start local 4 // io.vertx.core.Promise promise
        11: .line 45
            aload 0 /* ctx */
            aload 2 /* client */
            aload 0 /* ctx */
            aload 3 /* tracer */
            aload 4 /* promise */
            invokedynamic handle(Lio/vertx/mysqlclient/impl/MySQLConnectionFactory;Lio/vertx/core/impl/ContextInternal;Lio/vertx/sqlclient/impl/tracing/QueryTracer;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/mysqlclient/impl/MySQLConnectionImpl.lambda$0(Lio/vertx/mysqlclient/impl/MySQLConnectionFactory;Lio/vertx/core/impl/ContextInternal;Lio/vertx/sqlclient/impl/tracing/QueryTracer;Lio/vertx/core/Promise;Ljava/lang/Void;)V (6)
                  (Ljava/lang/Void;)V
            invokeinterface io.vertx.core.impl.ContextInternal.emit:(Lio/vertx/core/Handler;)V
        12: .line 46
            aload 4 /* promise */
            invokeinterface io.vertx.core.Promise.future:()Lio/vertx/core/Future;
            areturn
        end local 4 // io.vertx.core.Promise promise
        end local 3 // io.vertx.sqlclient.impl.tracing.QueryTracer tracer
        end local 2 // io.vertx.mysqlclient.impl.MySQLConnectionFactory client
        end local 1 // io.vertx.mysqlclient.MySQLConnectOptions options
        end local 0 // io.vertx.core.impl.ContextInternal ctx
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   13     0      ctx  Lio/vertx/core/impl/ContextInternal;
            0   13     1  options  Lio/vertx/mysqlclient/MySQLConnectOptions;
            3    4     2   client  Lio/vertx/mysqlclient/impl/MySQLConnectionFactory;
            6   13     2   client  Lio/vertx/mysqlclient/impl/MySQLConnectionFactory;
            5    6     3        e  Ljava/lang/Exception;
           10   13     3   tracer  Lio/vertx/sqlclient/impl/tracing/QueryTracer;
           11   13     4  promise  Lio/vertx/core/Promise<Lio/vertx/mysqlclient/MySQLConnection;>;
      Exception table:
        from    to  target  type
           2     3       4  Class java.lang.Exception
    Signature: (Lio/vertx/core/impl/ContextInternal;Lio/vertx/mysqlclient/MySQLConnectOptions;)Lio/vertx/core/Future<Lio/vertx/mysqlclient/MySQLConnection;>;
    MethodParameters:
         Name  Flags
      ctx      
      options  

  private static void connect(io.vertx.mysqlclient.impl.MySQLConnectionFactory, io.vertx.core.impl.ContextInternal, io.vertx.sqlclient.impl.tracing.QueryTracer, io.vertx.core.spi.metrics.ClientMetrics, io.vertx.core.Promise<io.vertx.mysqlclient.MySQLConnection>);
    descriptor: (Lio/vertx/mysqlclient/impl/MySQLConnectionFactory;Lio/vertx/core/impl/ContextInternal;Lio/vertx/sqlclient/impl/tracing/QueryTracer;Lio/vertx/core/spi/metrics/ClientMetrics;Lio/vertx/core/Promise;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=5, args_size=5
        start local 0 // io.vertx.mysqlclient.impl.MySQLConnectionFactory client
        start local 1 // io.vertx.core.impl.ContextInternal ctx
        start local 2 // io.vertx.sqlclient.impl.tracing.QueryTracer tracer
        start local 3 // io.vertx.core.spi.metrics.ClientMetrics metrics
        start local 4 // io.vertx.core.Promise promise
         0: .line 50
            aload 0 /* client */
            invokevirtual io.vertx.mysqlclient.impl.MySQLConnectionFactory.connect:()Lio/vertx/core/Future;
         1: .line 51
            aload 0 /* client */
            aload 1 /* ctx */
            aload 2 /* tracer */
            aload 3 /* metrics */
            invokedynamic apply(Lio/vertx/mysqlclient/impl/MySQLConnectionFactory;Lio/vertx/core/impl/ContextInternal;Lio/vertx/sqlclient/impl/tracing/QueryTracer;Lio/vertx/core/spi/metrics/ClientMetrics;)Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  io/vertx/mysqlclient/impl/MySQLConnectionImpl.lambda$1(Lio/vertx/mysqlclient/impl/MySQLConnectionFactory;Lio/vertx/core/impl/ContextInternal;Lio/vertx/sqlclient/impl/tracing/QueryTracer;Lio/vertx/core/spi/metrics/ClientMetrics;Lio/vertx/sqlclient/impl/Connection;)Lio/vertx/mysqlclient/MySQLConnection; (6)
                  (Lio/vertx/sqlclient/impl/Connection;)Lio/vertx/mysqlclient/MySQLConnection;
            invokeinterface io.vertx.core.Future.map:(Ljava/util/function/Function;)Lio/vertx/core/Future;
         2: .line 55
            aload 4 /* promise */
            invokeinterface io.vertx.core.Future.onComplete:(Lio/vertx/core/Handler;)Lio/vertx/core/Future;
            pop
         3: .line 56
            return
        end local 4 // io.vertx.core.Promise promise
        end local 3 // io.vertx.core.spi.metrics.ClientMetrics metrics
        end local 2 // io.vertx.sqlclient.impl.tracing.QueryTracer tracer
        end local 1 // io.vertx.core.impl.ContextInternal ctx
        end local 0 // io.vertx.mysqlclient.impl.MySQLConnectionFactory client
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0   client  Lio/vertx/mysqlclient/impl/MySQLConnectionFactory;
            0    4     1      ctx  Lio/vertx/core/impl/ContextInternal;
            0    4     2   tracer  Lio/vertx/sqlclient/impl/tracing/QueryTracer;
            0    4     3  metrics  Lio/vertx/core/spi/metrics/ClientMetrics;
            0    4     4  promise  Lio/vertx/core/Promise<Lio/vertx/mysqlclient/MySQLConnection;>;
    Signature: (Lio/vertx/mysqlclient/impl/MySQLConnectionFactory;Lio/vertx/core/impl/ContextInternal;Lio/vertx/sqlclient/impl/tracing/QueryTracer;Lio/vertx/core/spi/metrics/ClientMetrics;Lio/vertx/core/Promise<Lio/vertx/mysqlclient/MySQLConnection;>;)V
    MethodParameters:
         Name  Flags
      client   
      ctx      
      tracer   
      metrics  
      promise  

  public void <init>(io.vertx.mysqlclient.impl.MySQLConnectionFactory, io.vertx.core.impl.ContextInternal, io.vertx.sqlclient.impl.Connection, io.vertx.sqlclient.impl.tracing.QueryTracer, io.vertx.core.spi.metrics.ClientMetrics);
    descriptor: (Lio/vertx/mysqlclient/impl/MySQLConnectionFactory;Lio/vertx/core/impl/ContextInternal;Lio/vertx/sqlclient/impl/Connection;Lio/vertx/sqlclient/impl/tracing/QueryTracer;Lio/vertx/core/spi/metrics/ClientMetrics;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=6, args_size=6
        start local 0 // io.vertx.mysqlclient.impl.MySQLConnectionImpl this
        start local 1 // io.vertx.mysqlclient.impl.MySQLConnectionFactory factory
        start local 2 // io.vertx.core.impl.ContextInternal context
        start local 3 // io.vertx.sqlclient.impl.Connection conn
        start local 4 // io.vertx.sqlclient.impl.tracing.QueryTracer tracer
        start local 5 // io.vertx.core.spi.metrics.ClientMetrics metrics
         0: .line 61
            aload 0 /* this */
            aload 2 /* context */
            aload 3 /* conn */
            aload 4 /* tracer */
            aload 5 /* metrics */
            invokespecial io.vertx.sqlclient.impl.SqlConnectionImpl.<init>:(Lio/vertx/core/impl/ContextInternal;Lio/vertx/sqlclient/impl/Connection;Lio/vertx/sqlclient/impl/tracing/QueryTracer;Lio/vertx/core/spi/metrics/ClientMetrics;)V
         1: .line 63
            aload 0 /* this */
            aload 1 /* factory */
            putfield io.vertx.mysqlclient.impl.MySQLConnectionImpl.factory:Lio/vertx/mysqlclient/impl/MySQLConnectionFactory;
         2: .line 64
            return
        end local 5 // io.vertx.core.spi.metrics.ClientMetrics metrics
        end local 4 // io.vertx.sqlclient.impl.tracing.QueryTracer tracer
        end local 3 // io.vertx.sqlclient.impl.Connection conn
        end local 2 // io.vertx.core.impl.ContextInternal context
        end local 1 // io.vertx.mysqlclient.impl.MySQLConnectionFactory factory
        end local 0 // io.vertx.mysqlclient.impl.MySQLConnectionImpl this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lio/vertx/mysqlclient/impl/MySQLConnectionImpl;
            0    3     1  factory  Lio/vertx/mysqlclient/impl/MySQLConnectionFactory;
            0    3     2  context  Lio/vertx/core/impl/ContextInternal;
            0    3     3     conn  Lio/vertx/sqlclient/impl/Connection;
            0    3     4   tracer  Lio/vertx/sqlclient/impl/tracing/QueryTracer;
            0    3     5  metrics  Lio/vertx/core/spi/metrics/ClientMetrics;
    MethodParameters:
         Name  Flags
      factory  
      context  
      conn     
      tracer   
      metrics  

  public io.vertx.mysqlclient.MySQLConnection ping(io.vertx.core.Handler<io.vertx.core.AsyncResult<java.lang.Void>>);
    descriptor: (Lio/vertx/core/Handler;)Lio/vertx/mysqlclient/MySQLConnection;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // io.vertx.mysqlclient.impl.MySQLConnectionImpl this
        start local 1 // io.vertx.core.Handler handler
         0: .line 68
            aload 0 /* this */
            invokevirtual io.vertx.mysqlclient.impl.MySQLConnectionImpl.ping:()Lio/vertx/core/Future;
            astore 2 /* fut */
        start local 2 // io.vertx.core.Future fut
         1: .line 69
            aload 1 /* handler */
            ifnull 3
         2: .line 70
            aload 2 /* fut */
            aload 1 /* handler */
            invokeinterface io.vertx.core.Future.onComplete:(Lio/vertx/core/Handler;)Lio/vertx/core/Future;
            pop
         3: .line 72
      StackMap locals: io.vertx.core.Future
      StackMap stack:
            aload 0 /* this */
            areturn
        end local 2 // io.vertx.core.Future fut
        end local 1 // io.vertx.core.Handler handler
        end local 0 // io.vertx.mysqlclient.impl.MySQLConnectionImpl this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lio/vertx/mysqlclient/impl/MySQLConnectionImpl;
            0    4     1  handler  Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Ljava/lang/Void;>;>;
            1    4     2      fut  Lio/vertx/core/Future<Ljava/lang/Void;>;
    Signature: (Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Ljava/lang/Void;>;>;)Lio/vertx/mysqlclient/MySQLConnection;
    MethodParameters:
         Name  Flags
      handler  

  public io.vertx.core.Future<java.lang.Void> ping();
    descriptor: ()Lio/vertx/core/Future;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // io.vertx.mysqlclient.impl.MySQLConnectionImpl this
         0: .line 77
            aload 0 /* this */
            invokevirtual io.vertx.mysqlclient.impl.MySQLConnectionImpl.promise:()Lio/vertx/core/impl/future/PromiseInternal;
            astore 1 /* promise */
        start local 1 // io.vertx.core.Promise promise
         1: .line 78
            aload 0 /* this */
            new io.vertx.mysqlclient.impl.command.PingCommand
            dup
            invokespecial io.vertx.mysqlclient.impl.command.PingCommand.<init>:()V
            aload 1 /* promise */
            invokevirtual io.vertx.mysqlclient.impl.MySQLConnectionImpl.schedule:(Lio/vertx/sqlclient/impl/command/CommandBase;Lio/vertx/core/Promise;)V
         2: .line 79
            aload 1 /* promise */
            invokeinterface io.vertx.core.Promise.future:()Lio/vertx/core/Future;
            areturn
        end local 1 // io.vertx.core.Promise promise
        end local 0 // io.vertx.mysqlclient.impl.MySQLConnectionImpl this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lio/vertx/mysqlclient/impl/MySQLConnectionImpl;
            1    3     1  promise  Lio/vertx/core/Promise<Ljava/lang/Void;>;
    Signature: ()Lio/vertx/core/Future<Ljava/lang/Void;>;

  public io.vertx.mysqlclient.MySQLConnection specifySchema(java.lang.String, io.vertx.core.Handler<io.vertx.core.AsyncResult<java.lang.Void>>);
    descriptor: (Ljava/lang/String;Lio/vertx/core/Handler;)Lio/vertx/mysqlclient/MySQLConnection;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=3
        start local 0 // io.vertx.mysqlclient.impl.MySQLConnectionImpl this
        start local 1 // java.lang.String schemaName
        start local 2 // io.vertx.core.Handler handler
         0: .line 84
            aload 0 /* this */
            aload 1 /* schemaName */
            invokevirtual io.vertx.mysqlclient.impl.MySQLConnectionImpl.specifySchema:(Ljava/lang/String;)Lio/vertx/core/Future;
            astore 3 /* fut */
        start local 3 // io.vertx.core.Future fut
         1: .line 85
            aload 2 /* handler */
            ifnull 3
         2: .line 86
            aload 3 /* fut */
            aload 2 /* handler */
            invokeinterface io.vertx.core.Future.onComplete:(Lio/vertx/core/Handler;)Lio/vertx/core/Future;
            pop
         3: .line 88
      StackMap locals: io.vertx.core.Future
      StackMap stack:
            aload 0 /* this */
            areturn
        end local 3 // io.vertx.core.Future fut
        end local 2 // io.vertx.core.Handler handler
        end local 1 // java.lang.String schemaName
        end local 0 // io.vertx.mysqlclient.impl.MySQLConnectionImpl this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    4     0        this  Lio/vertx/mysqlclient/impl/MySQLConnectionImpl;
            0    4     1  schemaName  Ljava/lang/String;
            0    4     2     handler  Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Ljava/lang/Void;>;>;
            1    4     3         fut  Lio/vertx/core/Future<Ljava/lang/Void;>;
    Signature: (Ljava/lang/String;Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Ljava/lang/Void;>;>;)Lio/vertx/mysqlclient/MySQLConnection;
    MethodParameters:
            Name  Flags
      schemaName  
      handler     

  public io.vertx.core.Future<java.lang.Void> specifySchema(java.lang.String);
    descriptor: (Ljava/lang/String;)Lio/vertx/core/Future;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // io.vertx.mysqlclient.impl.MySQLConnectionImpl this
        start local 1 // java.lang.String schemaName
         0: .line 93
            aload 0 /* this */
            invokevirtual io.vertx.mysqlclient.impl.MySQLConnectionImpl.promise:()Lio/vertx/core/impl/future/PromiseInternal;
            astore 2 /* promise */
        start local 2 // io.vertx.core.Promise promise
         1: .line 94
            aload 0 /* this */
            new io.vertx.mysqlclient.impl.command.InitDbCommand
            dup
            aload 1 /* schemaName */
            invokespecial io.vertx.mysqlclient.impl.command.InitDbCommand.<init>:(Ljava/lang/String;)V
            aload 2 /* promise */
            invokevirtual io.vertx.mysqlclient.impl.MySQLConnectionImpl.schedule:(Lio/vertx/sqlclient/impl/command/CommandBase;Lio/vertx/core/Promise;)V
         2: .line 95
            aload 2 /* promise */
            invokeinterface io.vertx.core.Promise.future:()Lio/vertx/core/Future;
            areturn
        end local 2 // io.vertx.core.Promise promise
        end local 1 // java.lang.String schemaName
        end local 0 // io.vertx.mysqlclient.impl.MySQLConnectionImpl this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    3     0        this  Lio/vertx/mysqlclient/impl/MySQLConnectionImpl;
            0    3     1  schemaName  Ljava/lang/String;
            1    3     2     promise  Lio/vertx/core/Promise<Ljava/lang/Void;>;
    Signature: (Ljava/lang/String;)Lio/vertx/core/Future<Ljava/lang/Void;>;
    MethodParameters:
            Name  Flags
      schemaName  

  public io.vertx.mysqlclient.MySQLConnection getInternalStatistics(io.vertx.core.Handler<io.vertx.core.AsyncResult<java.lang.String>>);
    descriptor: (Lio/vertx/core/Handler;)Lio/vertx/mysqlclient/MySQLConnection;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // io.vertx.mysqlclient.impl.MySQLConnectionImpl this
        start local 1 // io.vertx.core.Handler handler
         0: .line 100
            aload 0 /* this */
            invokevirtual io.vertx.mysqlclient.impl.MySQLConnectionImpl.getInternalStatistics:()Lio/vertx/core/Future;
            astore 2 /* fut */
        start local 2 // io.vertx.core.Future fut
         1: .line 101
            aload 1 /* handler */
            ifnull 3
         2: .line 102
            aload 2 /* fut */
            aload 1 /* handler */
            invokeinterface io.vertx.core.Future.onComplete:(Lio/vertx/core/Handler;)Lio/vertx/core/Future;
            pop
         3: .line 104
      StackMap locals: io.vertx.core.Future
      StackMap stack:
            aload 0 /* this */
            areturn
        end local 2 // io.vertx.core.Future fut
        end local 1 // io.vertx.core.Handler handler
        end local 0 // io.vertx.mysqlclient.impl.MySQLConnectionImpl this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lio/vertx/mysqlclient/impl/MySQLConnectionImpl;
            0    4     1  handler  Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Ljava/lang/String;>;>;
            1    4     2      fut  Lio/vertx/core/Future<Ljava/lang/String;>;
    Signature: (Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Ljava/lang/String;>;>;)Lio/vertx/mysqlclient/MySQLConnection;
    MethodParameters:
         Name  Flags
      handler  

  public io.vertx.core.Future<java.lang.String> getInternalStatistics();
    descriptor: ()Lio/vertx/core/Future;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // io.vertx.mysqlclient.impl.MySQLConnectionImpl this
         0: .line 109
            aload 0 /* this */
            invokevirtual io.vertx.mysqlclient.impl.MySQLConnectionImpl.promise:()Lio/vertx/core/impl/future/PromiseInternal;
            astore 1 /* promise */
        start local 1 // io.vertx.core.Promise promise
         1: .line 110
            aload 0 /* this */
            new io.vertx.mysqlclient.impl.command.StatisticsCommand
            dup
            invokespecial io.vertx.mysqlclient.impl.command.StatisticsCommand.<init>:()V
            aload 1 /* promise */
            invokevirtual io.vertx.mysqlclient.impl.MySQLConnectionImpl.schedule:(Lio/vertx/sqlclient/impl/command/CommandBase;Lio/vertx/core/Promise;)V
         2: .line 111
            aload 1 /* promise */
            invokeinterface io.vertx.core.Promise.future:()Lio/vertx/core/Future;
            areturn
        end local 1 // io.vertx.core.Promise promise
        end local 0 // io.vertx.mysqlclient.impl.MySQLConnectionImpl this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lio/vertx/mysqlclient/impl/MySQLConnectionImpl;
            1    3     1  promise  Lio/vertx/core/Promise<Ljava/lang/String;>;
    Signature: ()Lio/vertx/core/Future<Ljava/lang/String;>;

  public io.vertx.mysqlclient.MySQLConnection setOption(io.vertx.mysqlclient.MySQLSetOption, io.vertx.core.Handler<io.vertx.core.AsyncResult<java.lang.Void>>);
    descriptor: (Lio/vertx/mysqlclient/MySQLSetOption;Lio/vertx/core/Handler;)Lio/vertx/mysqlclient/MySQLConnection;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=3
        start local 0 // io.vertx.mysqlclient.impl.MySQLConnectionImpl this
        start local 1 // io.vertx.mysqlclient.MySQLSetOption option
        start local 2 // io.vertx.core.Handler handler
         0: .line 116
            aload 0 /* this */
            aload 1 /* option */
            invokevirtual io.vertx.mysqlclient.impl.MySQLConnectionImpl.setOption:(Lio/vertx/mysqlclient/MySQLSetOption;)Lio/vertx/core/Future;
            astore 3 /* fut */
        start local 3 // io.vertx.core.Future fut
         1: .line 117
            aload 2 /* handler */
            ifnull 3
         2: .line 118
            aload 3 /* fut */
            aload 2 /* handler */
            invokeinterface io.vertx.core.Future.onComplete:(Lio/vertx/core/Handler;)Lio/vertx/core/Future;
            pop
         3: .line 120
      StackMap locals: io.vertx.core.Future
      StackMap stack:
            aload 0 /* this */
            areturn
        end local 3 // io.vertx.core.Future fut
        end local 2 // io.vertx.core.Handler handler
        end local 1 // io.vertx.mysqlclient.MySQLSetOption option
        end local 0 // io.vertx.mysqlclient.impl.MySQLConnectionImpl this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lio/vertx/mysqlclient/impl/MySQLConnectionImpl;
            0    4     1   option  Lio/vertx/mysqlclient/MySQLSetOption;
            0    4     2  handler  Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Ljava/lang/Void;>;>;
            1    4     3      fut  Lio/vertx/core/Future<Ljava/lang/Void;>;
    Signature: (Lio/vertx/mysqlclient/MySQLSetOption;Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Ljava/lang/Void;>;>;)Lio/vertx/mysqlclient/MySQLConnection;
    MethodParameters:
         Name  Flags
      option   
      handler  

  public io.vertx.core.Future<java.lang.Void> setOption(io.vertx.mysqlclient.MySQLSetOption);
    descriptor: (Lio/vertx/mysqlclient/MySQLSetOption;)Lio/vertx/core/Future;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // io.vertx.mysqlclient.impl.MySQLConnectionImpl this
        start local 1 // io.vertx.mysqlclient.MySQLSetOption option
         0: .line 125
            aload 0 /* this */
            invokevirtual io.vertx.mysqlclient.impl.MySQLConnectionImpl.promise:()Lio/vertx/core/impl/future/PromiseInternal;
            astore 2 /* promise */
        start local 2 // io.vertx.core.Promise promise
         1: .line 126
            aload 0 /* this */
            new io.vertx.mysqlclient.impl.command.SetOptionCommand
            dup
            aload 1 /* option */
            invokespecial io.vertx.mysqlclient.impl.command.SetOptionCommand.<init>:(Lio/vertx/mysqlclient/MySQLSetOption;)V
            aload 2 /* promise */
            invokevirtual io.vertx.mysqlclient.impl.MySQLConnectionImpl.schedule:(Lio/vertx/sqlclient/impl/command/CommandBase;Lio/vertx/core/Promise;)V
         2: .line 127
            aload 2 /* promise */
            invokeinterface io.vertx.core.Promise.future:()Lio/vertx/core/Future;
            areturn
        end local 2 // io.vertx.core.Promise promise
        end local 1 // io.vertx.mysqlclient.MySQLSetOption option
        end local 0 // io.vertx.mysqlclient.impl.MySQLConnectionImpl this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lio/vertx/mysqlclient/impl/MySQLConnectionImpl;
            0    3     1   option  Lio/vertx/mysqlclient/MySQLSetOption;
            1    3     2  promise  Lio/vertx/core/Promise<Ljava/lang/Void;>;
    Signature: (Lio/vertx/mysqlclient/MySQLSetOption;)Lio/vertx/core/Future<Ljava/lang/Void;>;
    MethodParameters:
        Name  Flags
      option  

  public io.vertx.mysqlclient.MySQLConnection resetConnection(io.vertx.core.Handler<io.vertx.core.AsyncResult<java.lang.Void>>);
    descriptor: (Lio/vertx/core/Handler;)Lio/vertx/mysqlclient/MySQLConnection;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // io.vertx.mysqlclient.impl.MySQLConnectionImpl this
        start local 1 // io.vertx.core.Handler handler
         0: .line 132
            aload 0 /* this */
            invokevirtual io.vertx.mysqlclient.impl.MySQLConnectionImpl.resetConnection:()Lio/vertx/core/Future;
            astore 2 /* fut */
        start local 2 // io.vertx.core.Future fut
         1: .line 133
            aload 1 /* handler */
            ifnull 3
         2: .line 134
            aload 2 /* fut */
            aload 1 /* handler */
            invokeinterface io.vertx.core.Future.onComplete:(Lio/vertx/core/Handler;)Lio/vertx/core/Future;
            pop
         3: .line 136
      StackMap locals: io.vertx.core.Future
      StackMap stack:
            aload 0 /* this */
            areturn
        end local 2 // io.vertx.core.Future fut
        end local 1 // io.vertx.core.Handler handler
        end local 0 // io.vertx.mysqlclient.impl.MySQLConnectionImpl this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lio/vertx/mysqlclient/impl/MySQLConnectionImpl;
            0    4     1  handler  Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Ljava/lang/Void;>;>;
            1    4     2      fut  Lio/vertx/core/Future<Ljava/lang/Void;>;
    Signature: (Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Ljava/lang/Void;>;>;)Lio/vertx/mysqlclient/MySQLConnection;
    MethodParameters:
         Name  Flags
      handler  

  public io.vertx.core.Future<java.lang.Void> resetConnection();
    descriptor: ()Lio/vertx/core/Future;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // io.vertx.mysqlclient.impl.MySQLConnectionImpl this
         0: .line 141
            aload 0 /* this */
            invokevirtual io.vertx.mysqlclient.impl.MySQLConnectionImpl.promise:()Lio/vertx/core/impl/future/PromiseInternal;
            astore 1 /* promise */
        start local 1 // io.vertx.core.Promise promise
         1: .line 142
            aload 0 /* this */
            new io.vertx.mysqlclient.impl.command.ResetConnectionCommand
            dup
            invokespecial io.vertx.mysqlclient.impl.command.ResetConnectionCommand.<init>:()V
            aload 1 /* promise */
            invokevirtual io.vertx.mysqlclient.impl.MySQLConnectionImpl.schedule:(Lio/vertx/sqlclient/impl/command/CommandBase;Lio/vertx/core/Promise;)V
         2: .line 143
            aload 1 /* promise */
            invokeinterface io.vertx.core.Promise.future:()Lio/vertx/core/Future;
            areturn
        end local 1 // io.vertx.core.Promise promise
        end local 0 // io.vertx.mysqlclient.impl.MySQLConnectionImpl this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lio/vertx/mysqlclient/impl/MySQLConnectionImpl;
            1    3     1  promise  Lio/vertx/core/Promise<Ljava/lang/Void;>;
    Signature: ()Lio/vertx/core/Future<Ljava/lang/Void;>;

  public io.vertx.mysqlclient.MySQLConnection debug(io.vertx.core.Handler<io.vertx.core.AsyncResult<java.lang.Void>>);
    descriptor: (Lio/vertx/core/Handler;)Lio/vertx/mysqlclient/MySQLConnection;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // io.vertx.mysqlclient.impl.MySQLConnectionImpl this
        start local 1 // io.vertx.core.Handler handler
         0: .line 148
            aload 0 /* this */
            invokevirtual io.vertx.mysqlclient.impl.MySQLConnectionImpl.debug:()Lio/vertx/core/Future;
            astore 2 /* fut */
        start local 2 // io.vertx.core.Future fut
         1: .line 149
            aload 1 /* handler */
            ifnull 3
         2: .line 150
            aload 2 /* fut */
            aload 1 /* handler */
            invokeinterface io.vertx.core.Future.onComplete:(Lio/vertx/core/Handler;)Lio/vertx/core/Future;
            pop
         3: .line 152
      StackMap locals: io.vertx.core.Future
      StackMap stack:
            aload 0 /* this */
            areturn
        end local 2 // io.vertx.core.Future fut
        end local 1 // io.vertx.core.Handler handler
        end local 0 // io.vertx.mysqlclient.impl.MySQLConnectionImpl this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lio/vertx/mysqlclient/impl/MySQLConnectionImpl;
            0    4     1  handler  Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Ljava/lang/Void;>;>;
            1    4     2      fut  Lio/vertx/core/Future<Ljava/lang/Void;>;
    Signature: (Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Ljava/lang/Void;>;>;)Lio/vertx/mysqlclient/MySQLConnection;
    MethodParameters:
         Name  Flags
      handler  

  public io.vertx.core.Future<java.lang.Void> debug();
    descriptor: ()Lio/vertx/core/Future;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // io.vertx.mysqlclient.impl.MySQLConnectionImpl this
         0: .line 157
            aload 0 /* this */
            invokevirtual io.vertx.mysqlclient.impl.MySQLConnectionImpl.promise:()Lio/vertx/core/impl/future/PromiseInternal;
            astore 1 /* promise */
        start local 1 // io.vertx.core.Promise promise
         1: .line 158
            aload 0 /* this */
            new io.vertx.mysqlclient.impl.command.DebugCommand
            dup
            invokespecial io.vertx.mysqlclient.impl.command.DebugCommand.<init>:()V
            aload 1 /* promise */
            invokevirtual io.vertx.mysqlclient.impl.MySQLConnectionImpl.schedule:(Lio/vertx/sqlclient/impl/command/CommandBase;Lio/vertx/core/Promise;)V
         2: .line 159
            aload 1 /* promise */
            invokeinterface io.vertx.core.Promise.future:()Lio/vertx/core/Future;
            areturn
        end local 1 // io.vertx.core.Promise promise
        end local 0 // io.vertx.mysqlclient.impl.MySQLConnectionImpl this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lio/vertx/mysqlclient/impl/MySQLConnectionImpl;
            1    3     1  promise  Lio/vertx/core/Promise<Ljava/lang/Void;>;
    Signature: ()Lio/vertx/core/Future<Ljava/lang/Void;>;

  public io.vertx.mysqlclient.MySQLConnection changeUser(io.vertx.mysqlclient.MySQLAuthOptions, io.vertx.core.Handler<io.vertx.core.AsyncResult<java.lang.Void>>);
    descriptor: (Lio/vertx/mysqlclient/MySQLAuthOptions;Lio/vertx/core/Handler;)Lio/vertx/mysqlclient/MySQLConnection;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=3
        start local 0 // io.vertx.mysqlclient.impl.MySQLConnectionImpl this
        start local 1 // io.vertx.mysqlclient.MySQLAuthOptions options
        start local 2 // io.vertx.core.Handler handler
         0: .line 164
            aload 0 /* this */
            aload 1 /* options */
            invokevirtual io.vertx.mysqlclient.impl.MySQLConnectionImpl.changeUser:(Lio/vertx/mysqlclient/MySQLAuthOptions;)Lio/vertx/core/Future;
            astore 3 /* fut */
        start local 3 // io.vertx.core.Future fut
         1: .line 165
            aload 2 /* handler */
            ifnull 3
         2: .line 166
            aload 3 /* fut */
            aload 2 /* handler */
            invokeinterface io.vertx.core.Future.onComplete:(Lio/vertx/core/Handler;)Lio/vertx/core/Future;
            pop
         3: .line 168
      StackMap locals: io.vertx.core.Future
      StackMap stack:
            aload 0 /* this */
            areturn
        end local 3 // io.vertx.core.Future fut
        end local 2 // io.vertx.core.Handler handler
        end local 1 // io.vertx.mysqlclient.MySQLAuthOptions options
        end local 0 // io.vertx.mysqlclient.impl.MySQLConnectionImpl this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lio/vertx/mysqlclient/impl/MySQLConnectionImpl;
            0    4     1  options  Lio/vertx/mysqlclient/MySQLAuthOptions;
            0    4     2  handler  Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Ljava/lang/Void;>;>;
            1    4     3      fut  Lio/vertx/core/Future<Ljava/lang/Void;>;
    Signature: (Lio/vertx/mysqlclient/MySQLAuthOptions;Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Ljava/lang/Void;>;>;)Lio/vertx/mysqlclient/MySQLConnection;
    MethodParameters:
         Name  Flags
      options  
      handler  

  public io.vertx.core.Future<java.lang.Void> changeUser(io.vertx.mysqlclient.MySQLAuthOptions);
    descriptor: (Lio/vertx/mysqlclient/MySQLAuthOptions;)Lio/vertx/core/Future;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=6, args_size=2
        start local 0 // io.vertx.mysqlclient.impl.MySQLConnectionImpl this
        start local 1 // io.vertx.mysqlclient.MySQLAuthOptions options
         0: .line 174
            aload 1 /* options */
            invokevirtual io.vertx.mysqlclient.MySQLAuthOptions.getCollation:()Ljava/lang/String;
            ifnull 3
         1: .line 176
            aload 1 /* options */
            invokevirtual io.vertx.mysqlclient.MySQLAuthOptions.getCollation:()Ljava/lang/String;
            invokestatic io.vertx.mysqlclient.impl.MySQLCollation.valueOfName:(Ljava/lang/String;)Lio/vertx/mysqlclient/impl/MySQLCollation;
            astore 2 /* collation */
        start local 2 // io.vertx.mysqlclient.impl.MySQLCollation collation
         2: .line 177
            goto 8
        end local 2 // io.vertx.mysqlclient.impl.MySQLCollation collation
         3: .line 178
      StackMap locals:
      StackMap stack:
            aload 1 /* options */
            invokevirtual io.vertx.mysqlclient.MySQLAuthOptions.getCharset:()Ljava/lang/String;
            astore 3 /* charset */
        start local 3 // java.lang.String charset
         4: .line 179
            aload 3 /* charset */
            ifnonnull 7
         5: .line 180
            getstatic io.vertx.mysqlclient.impl.MySQLCollation.DEFAULT_COLLATION:Lio/vertx/mysqlclient/impl/MySQLCollation;
            astore 2 /* collation */
        start local 2 // io.vertx.mysqlclient.impl.MySQLCollation collation
         6: .line 181
            goto 8
        end local 2 // io.vertx.mysqlclient.impl.MySQLCollation collation
         7: .line 182
      StackMap locals: io.vertx.mysqlclient.impl.MySQLConnectionImpl io.vertx.mysqlclient.MySQLAuthOptions top java.lang.String
      StackMap stack:
            aload 3 /* charset */
            invokestatic io.vertx.mysqlclient.impl.MySQLCollation.getDefaultCollationFromCharsetName:(Ljava/lang/String;)Ljava/lang/String;
            invokestatic io.vertx.mysqlclient.impl.MySQLCollation.valueOfName:(Ljava/lang/String;)Lio/vertx/mysqlclient/impl/MySQLCollation;
            astore 2 /* collation */
        end local 3 // java.lang.String charset
        start local 2 // io.vertx.mysqlclient.impl.MySQLCollation collation
         8: .line 185
      StackMap locals: io.vertx.mysqlclient.impl.MySQLConnectionImpl io.vertx.mysqlclient.MySQLAuthOptions io.vertx.mysqlclient.impl.MySQLCollation
      StackMap stack:
            aconst_null
            astore 3 /* serverRsaPublicKey */
        start local 3 // io.vertx.core.buffer.Buffer serverRsaPublicKey
         9: .line 186
            aload 1 /* options */
            invokevirtual io.vertx.mysqlclient.MySQLAuthOptions.getServerRsaPublicKeyValue:()Lio/vertx/core/buffer/Buffer;
            ifnull 12
        10: .line 187
            aload 1 /* options */
            invokevirtual io.vertx.mysqlclient.MySQLAuthOptions.getServerRsaPublicKeyValue:()Lio/vertx/core/buffer/Buffer;
            astore 3 /* serverRsaPublicKey */
        11: .line 188
            goto 14
        12: .line 189
      StackMap locals: io.vertx.core.buffer.Buffer
      StackMap stack:
            aload 1 /* options */
            invokevirtual io.vertx.mysqlclient.MySQLAuthOptions.getServerRsaPublicKeyPath:()Ljava/lang/String;
            ifnull 14
        13: .line 190
            aload 0 /* this */
            getfield io.vertx.mysqlclient.impl.MySQLConnectionImpl.context:Lio/vertx/core/impl/ContextInternal;
            invokeinterface io.vertx.core.impl.ContextInternal.owner:()Lio/vertx/core/impl/VertxInternal;
            invokeinterface io.vertx.core.impl.VertxInternal.fileSystem:()Lio/vertx/core/file/FileSystem;
            aload 1 /* options */
            invokevirtual io.vertx.mysqlclient.MySQLAuthOptions.getServerRsaPublicKeyPath:()Ljava/lang/String;
            invokeinterface io.vertx.core.file.FileSystem.readFileBlocking:(Ljava/lang/String;)Lio/vertx/core/buffer/Buffer;
            astore 3 /* serverRsaPublicKey */
        14: .line 193
      StackMap locals:
      StackMap stack:
            new io.vertx.mysqlclient.impl.command.ChangeUserCommand
            dup
            aload 1 /* options */
            invokevirtual io.vertx.mysqlclient.MySQLAuthOptions.getUser:()Ljava/lang/String;
            aload 1 /* options */
            invokevirtual io.vertx.mysqlclient.MySQLAuthOptions.getPassword:()Ljava/lang/String;
            aload 1 /* options */
            invokevirtual io.vertx.mysqlclient.MySQLAuthOptions.getDatabase:()Ljava/lang/String;
            aload 2 /* collation */
            aload 3 /* serverRsaPublicKey */
            aload 1 /* options */
            invokevirtual io.vertx.mysqlclient.MySQLAuthOptions.getProperties:()Ljava/util/Map;
            invokespecial io.vertx.mysqlclient.impl.command.ChangeUserCommand.<init>:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lio/vertx/mysqlclient/impl/MySQLCollation;Lio/vertx/core/buffer/Buffer;Ljava/util/Map;)V
            astore 4 /* cmd */
        start local 4 // io.vertx.mysqlclient.impl.command.ChangeUserCommand cmd
        15: .line 194
            aload 0 /* this */
            invokevirtual io.vertx.mysqlclient.impl.MySQLConnectionImpl.promise:()Lio/vertx/core/impl/future/PromiseInternal;
            astore 5 /* promise */
        start local 5 // io.vertx.core.Promise promise
        16: .line 195
            aload 0 /* this */
            aload 4 /* cmd */
            aload 5 /* promise */
            invokevirtual io.vertx.mysqlclient.impl.MySQLConnectionImpl.schedule:(Lio/vertx/sqlclient/impl/command/CommandBase;Lio/vertx/core/Promise;)V
        17: .line 196
            aload 5 /* promise */
            invokeinterface io.vertx.core.Promise.future:()Lio/vertx/core/Future;
            areturn
        end local 5 // io.vertx.core.Promise promise
        end local 4 // io.vertx.mysqlclient.impl.command.ChangeUserCommand cmd
        end local 3 // io.vertx.core.buffer.Buffer serverRsaPublicKey
        end local 2 // io.vertx.mysqlclient.impl.MySQLCollation collation
        end local 1 // io.vertx.mysqlclient.MySQLAuthOptions options
        end local 0 // io.vertx.mysqlclient.impl.MySQLConnectionImpl this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   18     0                this  Lio/vertx/mysqlclient/impl/MySQLConnectionImpl;
            0   18     1             options  Lio/vertx/mysqlclient/MySQLAuthOptions;
            2    3     2           collation  Lio/vertx/mysqlclient/impl/MySQLCollation;
            6    7     2           collation  Lio/vertx/mysqlclient/impl/MySQLCollation;
            8   18     2           collation  Lio/vertx/mysqlclient/impl/MySQLCollation;
            4    8     3             charset  Ljava/lang/String;
            9   18     3  serverRsaPublicKey  Lio/vertx/core/buffer/Buffer;
           15   18     4                 cmd  Lio/vertx/mysqlclient/impl/command/ChangeUserCommand;
           16   18     5             promise  Lio/vertx/core/Promise<Ljava/lang/Void;>;
    Signature: (Lio/vertx/mysqlclient/MySQLAuthOptions;)Lio/vertx/core/Future<Ljava/lang/Void;>;
    MethodParameters:
         Name  Flags
      options  

  public io.vertx.mysqlclient.MySQLConnection closeHandler(io.vertx.core.Handler);
    descriptor: (Lio/vertx/core/Handler;)Lio/vertx/mysqlclient/MySQLConnection;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
         0: .line 1
            aload 0
            aload 1
            invokevirtual io.vertx.mysqlclient.impl.MySQLConnectionImpl.closeHandler:(Lio/vertx/core/Handler;)Lio/vertx/sqlclient/SqlConnection;
            checkcast io.vertx.mysqlclient.MySQLConnection
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public io.vertx.mysqlclient.MySQLConnection prepare(java.lang.String, io.vertx.core.Handler);
    descriptor: (Ljava/lang/String;Lio/vertx/core/Handler;)Lio/vertx/mysqlclient/MySQLConnection;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=3, locals=3, args_size=3
         0: .line 1
            aload 0
            aload 1
            aload 2
            invokevirtual io.vertx.mysqlclient.impl.MySQLConnectionImpl.prepare:(Ljava/lang/String;Lio/vertx/core/Handler;)Lio/vertx/sqlclient/SqlClient;
            checkcast io.vertx.mysqlclient.MySQLConnection
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public io.vertx.mysqlclient.MySQLConnection exceptionHandler(io.vertx.core.Handler);
    descriptor: (Lio/vertx/core/Handler;)Lio/vertx/mysqlclient/MySQLConnection;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
         0: .line 1
            aload 0
            aload 1
            invokevirtual io.vertx.mysqlclient.impl.MySQLConnectionImpl.exceptionHandler:(Lio/vertx/core/Handler;)Lio/vertx/sqlclient/SqlConnection;
            checkcast io.vertx.mysqlclient.MySQLConnection
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private static void lambda$0(io.vertx.mysqlclient.impl.MySQLConnectionFactory, io.vertx.core.impl.ContextInternal, io.vertx.sqlclient.impl.tracing.QueryTracer, io.vertx.core.Promise, java.lang.Void);
    descriptor: (Lio/vertx/mysqlclient/impl/MySQLConnectionFactory;Lio/vertx/core/impl/ContextInternal;Lio/vertx/sqlclient/impl/tracing/QueryTracer;Lio/vertx/core/Promise;Ljava/lang/Void;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=5, locals=5, args_size=5
        start local 4 // java.lang.Void v
         0: .line 45
            aload 0
            aload 1
            aload 2
            aconst_null
            aload 3
            invokestatic io.vertx.mysqlclient.impl.MySQLConnectionImpl.connect:(Lio/vertx/mysqlclient/impl/MySQLConnectionFactory;Lio/vertx/core/impl/ContextInternal;Lio/vertx/sqlclient/impl/tracing/QueryTracer;Lio/vertx/core/spi/metrics/ClientMetrics;Lio/vertx/core/Promise;)V
            return
        end local 4 // java.lang.Void v
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     4     v  Ljava/lang/Void;

  private static io.vertx.mysqlclient.MySQLConnection lambda$1(io.vertx.mysqlclient.impl.MySQLConnectionFactory, io.vertx.core.impl.ContextInternal, io.vertx.sqlclient.impl.tracing.QueryTracer, io.vertx.core.spi.metrics.ClientMetrics, io.vertx.sqlclient.impl.Connection);
    descriptor: (Lio/vertx/mysqlclient/impl/MySQLConnectionFactory;Lio/vertx/core/impl/ContextInternal;Lio/vertx/sqlclient/impl/tracing/QueryTracer;Lio/vertx/core/spi/metrics/ClientMetrics;Lio/vertx/sqlclient/impl/Connection;)Lio/vertx/mysqlclient/MySQLConnection;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=7, locals=6, args_size=5
        start local 4 // io.vertx.sqlclient.impl.Connection conn
         0: .line 52
            new io.vertx.mysqlclient.impl.MySQLConnectionImpl
            dup
            aload 0
            aload 1
            aload 4 /* conn */
            aload 2
            aload 3
            invokespecial io.vertx.mysqlclient.impl.MySQLConnectionImpl.<init>:(Lio/vertx/mysqlclient/impl/MySQLConnectionFactory;Lio/vertx/core/impl/ContextInternal;Lio/vertx/sqlclient/impl/Connection;Lio/vertx/sqlclient/impl/tracing/QueryTracer;Lio/vertx/core/spi/metrics/ClientMetrics;)V
            astore 5 /* mySQLConnection */
        start local 5 // io.vertx.mysqlclient.impl.MySQLConnectionImpl mySQLConnection
         1: .line 53
            aload 4 /* conn */
            aload 5 /* mySQLConnection */
            invokeinterface io.vertx.sqlclient.impl.Connection.init:(Lio/vertx/sqlclient/impl/Connection$Holder;)V
         2: .line 54
            aload 5 /* mySQLConnection */
            areturn
        end local 5 // io.vertx.mysqlclient.impl.MySQLConnectionImpl mySQLConnection
        end local 4 // io.vertx.sqlclient.impl.Connection conn
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    3     4             conn  Lio/vertx/sqlclient/impl/Connection;
            1    3     5  mySQLConnection  Lio/vertx/mysqlclient/impl/MySQLConnectionImpl;
}
Signature: Lio/vertx/sqlclient/impl/SqlConnectionImpl<Lio/vertx/mysqlclient/impl/MySQLConnectionImpl;>;Lio/vertx/mysqlclient/MySQLConnection;
SourceFile: "MySQLConnectionImpl.java"
InnerClasses:
  public abstract Holder = io.vertx.sqlclient.impl.Connection$Holder of io.vertx.sqlclient.impl.Connection
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles