public interface io.vertx.ext.mail.MailClient
  minor version: 0
  major version: 59
  flags: flags: (0x0601) ACC_PUBLIC, ACC_INTERFACE, ACC_ABSTRACT
  this_class: io.vertx.ext.mail.MailClient
  super_class: java.lang.Object
{
  public static final java.lang.String DEFAULT_POOL_NAME;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "DEFAULT_POOL"

  public static io.vertx.ext.mail.MailClient create(io.vertx.core.Vertx, io.vertx.ext.mail.MailConfig);
    descriptor: (Lio/vertx/core/Vertx;Lio/vertx/ext/mail/MailConfig;)Lio/vertx/ext/mail/MailClient;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // io.vertx.core.Vertx vertx
        start local 1 // io.vertx.ext.mail.MailConfig config
         0: .line 49
            new io.vertx.ext.mail.impl.MailClientImpl
            dup
            aload 0 /* vertx */
            aload 1 /* config */
            invokestatic java.util.UUID.randomUUID:()Ljava/util/UUID;
            invokevirtual java.util.UUID.toString:()Ljava/lang/String;
            invokespecial io.vertx.ext.mail.impl.MailClientImpl.<init>:(Lio/vertx/core/Vertx;Lio/vertx/ext/mail/MailConfig;Ljava/lang/String;)V
            areturn
        end local 1 // io.vertx.ext.mail.MailConfig config
        end local 0 // io.vertx.core.Vertx vertx
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0   vertx  Lio/vertx/core/Vertx;
            0    1     1  config  Lio/vertx/ext/mail/MailConfig;
    MethodParameters:
        Name  Flags
      vertx   
      config  

  public static io.vertx.ext.mail.MailClient createShared(io.vertx.core.Vertx, io.vertx.ext.mail.MailConfig, java.lang.String);
    descriptor: (Lio/vertx/core/Vertx;Lio/vertx/ext/mail/MailConfig;Ljava/lang/String;)Lio/vertx/ext/mail/MailClient;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // io.vertx.core.Vertx vertx
        start local 1 // io.vertx.ext.mail.MailConfig config
        start local 2 // java.lang.String poolName
         0: .line 62
            new io.vertx.ext.mail.impl.MailClientImpl
            dup
            aload 0 /* vertx */
            aload 1 /* config */
            aload 2 /* poolName */
            invokespecial io.vertx.ext.mail.impl.MailClientImpl.<init>:(Lio/vertx/core/Vertx;Lio/vertx/ext/mail/MailConfig;Ljava/lang/String;)V
            areturn
        end local 2 // java.lang.String poolName
        end local 1 // io.vertx.ext.mail.MailConfig config
        end local 0 // io.vertx.core.Vertx vertx
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0     vertx  Lio/vertx/core/Vertx;
            0    1     1    config  Lio/vertx/ext/mail/MailConfig;
            0    1     2  poolName  Ljava/lang/String;
    MethodParameters:
          Name  Flags
      vertx     
      config    
      poolName  

  public static io.vertx.ext.mail.MailClient createShared(io.vertx.core.Vertx, io.vertx.ext.mail.MailConfig);
    descriptor: (Lio/vertx/core/Vertx;Lio/vertx/ext/mail/MailConfig;)Lio/vertx/ext/mail/MailClient;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // io.vertx.core.Vertx vertx
        start local 1 // io.vertx.ext.mail.MailConfig config
         0: .line 72
            new io.vertx.ext.mail.impl.MailClientImpl
            dup
            aload 0 /* vertx */
            aload 1 /* config */
            ldc "DEFAULT_POOL"
            invokespecial io.vertx.ext.mail.impl.MailClientImpl.<init>:(Lio/vertx/core/Vertx;Lio/vertx/ext/mail/MailConfig;Ljava/lang/String;)V
            areturn
        end local 1 // io.vertx.ext.mail.MailConfig config
        end local 0 // io.vertx.core.Vertx vertx
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0   vertx  Lio/vertx/core/Vertx;
            0    1     1  config  Lio/vertx/ext/mail/MailConfig;
    MethodParameters:
        Name  Flags
      vertx   
      config  

  public abstract io.vertx.ext.mail.MailClient sendMail(io.vertx.ext.mail.MailMessage, io.vertx.core.Handler<io.vertx.core.AsyncResult<io.vertx.ext.mail.MailResult>>);
    descriptor: (Lio/vertx/ext/mail/MailMessage;Lio/vertx/core/Handler;)Lio/vertx/ext/mail/MailClient;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Lio/vertx/ext/mail/MailMessage;Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Lio/vertx/ext/mail/MailResult;>;>;)Lio/vertx/ext/mail/MailClient;
    RuntimeVisibleAnnotations: 
      io.vertx.codegen.annotations.Fluent()
    MethodParameters:
               Name  Flags
      email          
      resultHandler  

  public io.vertx.core.Future<io.vertx.ext.mail.MailResult> sendMail(io.vertx.ext.mail.MailMessage);
    descriptor: (Lio/vertx/ext/mail/MailMessage;)Lio/vertx/core/Future;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // io.vertx.ext.mail.MailClient this
        start local 1 // io.vertx.ext.mail.MailMessage email
         0: .line 91
            invokestatic io.vertx.core.Promise.promise:()Lio/vertx/core/Promise;
            astore 2 /* promise */
        start local 2 // io.vertx.core.Promise promise
         1: .line 92
            aload 0 /* this */
            aload 1 /* email */
            aload 2 /* promise */
            invokeinterface io.vertx.ext.mail.MailClient.sendMail:(Lio/vertx/ext/mail/MailMessage;Lio/vertx/core/Handler;)Lio/vertx/ext/mail/MailClient;
            pop
         2: .line 93
            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.ext.mail.MailMessage email
        end local 0 // io.vertx.ext.mail.MailClient this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lio/vertx/ext/mail/MailClient;
            0    3     1    email  Lio/vertx/ext/mail/MailMessage;
            1    3     2  promise  Lio/vertx/core/Promise<Lio/vertx/ext/mail/MailResult;>;
    Signature: (Lio/vertx/ext/mail/MailMessage;)Lio/vertx/core/Future<Lio/vertx/ext/mail/MailResult;>;
    MethodParameters:
       Name  Flags
      email  

  public abstract void close();
    descriptor: ()V
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
}
SourceFile: "MailClient.java"
    RuntimeVisibleAnnotations: 
      io.vertx.codegen.annotations.VertxGen()