public class io.vertx.proton.impl.ProtonServerImpl implements io.vertx.proton.ProtonServer
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: io.vertx.proton.impl.ProtonServerImpl
  super_class: java.lang.Object
{
  private final io.vertx.core.Vertx vertx;
    descriptor: Lio/vertx/core/Vertx;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final io.vertx.core.net.NetServer server;
    descriptor: Lio/vertx/core/net/NetServer;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private io.vertx.core.Handler<io.vertx.proton.ProtonConnection> handler;
    descriptor: Lio/vertx/core/Handler;
    flags: (0x0002) ACC_PRIVATE
    Signature: Lio/vertx/core/Handler<Lio/vertx/proton/ProtonConnection;>;

  private io.vertx.proton.sasl.ProtonSaslAuthenticatorFactory authenticatorFactory;
    descriptor: Lio/vertx/proton/sasl/ProtonSaslAuthenticatorFactory;
    flags: (0x0002) ACC_PRIVATE

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

  private io.vertx.proton.ProtonServerOptions options;
    descriptor: Lio/vertx/proton/ProtonServerOptions;
    flags: (0x0002) ACC_PRIVATE

  public void <init>(io.vertx.core.Vertx);
    descriptor: (Lio/vertx/core/Vertx;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // io.vertx.proton.impl.ProtonServerImpl this
        start local 1 // io.vertx.core.Vertx vertx
         0: .line 52
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 47
            aload 0 /* this */
            new io.vertx.proton.impl.ProtonServerImpl$DefaultAuthenticatorFactory
            dup
            invokespecial io.vertx.proton.impl.ProtonServerImpl$DefaultAuthenticatorFactory.<init>:()V
            putfield io.vertx.proton.impl.ProtonServerImpl.authenticatorFactory:Lio/vertx/proton/sasl/ProtonSaslAuthenticatorFactory;
         2: .line 48
            aload 0 /* this */
            iconst_1
            putfield io.vertx.proton.impl.ProtonServerImpl.advertiseAnonymousRelayCapability:Z
         3: .line 53
            aload 0 /* this */
            aload 1 /* vertx */
            putfield io.vertx.proton.impl.ProtonServerImpl.vertx:Lio/vertx/core/Vertx;
         4: .line 54
            aload 0 /* this */
            aload 0 /* this */
            getfield io.vertx.proton.impl.ProtonServerImpl.vertx:Lio/vertx/core/Vertx;
            invokeinterface io.vertx.core.Vertx.createNetServer:()Lio/vertx/core/net/NetServer;
            putfield io.vertx.proton.impl.ProtonServerImpl.server:Lio/vertx/core/net/NetServer;
         5: .line 56
            aload 0 /* this */
            new io.vertx.proton.ProtonServerOptions
            dup
            invokespecial io.vertx.proton.ProtonServerOptions.<init>:()V
            putfield io.vertx.proton.impl.ProtonServerImpl.options:Lio/vertx/proton/ProtonServerOptions;
         6: .line 57
            return
        end local 1 // io.vertx.core.Vertx vertx
        end local 0 // io.vertx.proton.impl.ProtonServerImpl this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    7     0   this  Lio/vertx/proton/impl/ProtonServerImpl;
            0    7     1  vertx  Lio/vertx/core/Vertx;
    MethodParameters:
       Name  Flags
      vertx  

  public void <init>(io.vertx.core.Vertx, io.vertx.proton.ProtonServerOptions);
    descriptor: (Lio/vertx/core/Vertx;Lio/vertx/proton/ProtonServerOptions;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // io.vertx.proton.impl.ProtonServerImpl this
        start local 1 // io.vertx.core.Vertx vertx
        start local 2 // io.vertx.proton.ProtonServerOptions options
         0: .line 59
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 47
            aload 0 /* this */
            new io.vertx.proton.impl.ProtonServerImpl$DefaultAuthenticatorFactory
            dup
            invokespecial io.vertx.proton.impl.ProtonServerImpl$DefaultAuthenticatorFactory.<init>:()V
            putfield io.vertx.proton.impl.ProtonServerImpl.authenticatorFactory:Lio/vertx/proton/sasl/ProtonSaslAuthenticatorFactory;
         2: .line 48
            aload 0 /* this */
            iconst_1
            putfield io.vertx.proton.impl.ProtonServerImpl.advertiseAnonymousRelayCapability:Z
         3: .line 60
            aload 0 /* this */
            aload 1 /* vertx */
            putfield io.vertx.proton.impl.ProtonServerImpl.vertx:Lio/vertx/core/Vertx;
         4: .line 61
            aload 0 /* this */
            aload 0 /* this */
            getfield io.vertx.proton.impl.ProtonServerImpl.vertx:Lio/vertx/core/Vertx;
            aload 2 /* options */
            invokeinterface io.vertx.core.Vertx.createNetServer:(Lio/vertx/core/net/NetServerOptions;)Lio/vertx/core/net/NetServer;
            putfield io.vertx.proton.impl.ProtonServerImpl.server:Lio/vertx/core/net/NetServer;
         5: .line 63
            aload 0 /* this */
            aload 2 /* options */
            putfield io.vertx.proton.impl.ProtonServerImpl.options:Lio/vertx/proton/ProtonServerOptions;
         6: .line 64
            return
        end local 2 // io.vertx.proton.ProtonServerOptions options
        end local 1 // io.vertx.core.Vertx vertx
        end local 0 // io.vertx.proton.impl.ProtonServerImpl this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    7     0     this  Lio/vertx/proton/impl/ProtonServerImpl;
            0    7     1    vertx  Lio/vertx/core/Vertx;
            0    7     2  options  Lio/vertx/proton/ProtonServerOptions;
    MethodParameters:
         Name  Flags
      vertx    
      options  

  public int actualPort();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.vertx.proton.impl.ProtonServerImpl this
         0: .line 68
            aload 0 /* this */
            getfield io.vertx.proton.impl.ProtonServerImpl.server:Lio/vertx/core/net/NetServer;
            invokeinterface io.vertx.core.net.NetServer.actualPort:()I
            ireturn
        end local 0 // io.vertx.proton.impl.ProtonServerImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/vertx/proton/impl/ProtonServerImpl;

  public io.vertx.proton.impl.ProtonServerImpl listen(int);
    descriptor: (I)Lio/vertx/proton/impl/ProtonServerImpl;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.vertx.proton.impl.ProtonServerImpl this
        start local 1 // int i
         0: .line 73
            aload 0 /* this */
            getfield io.vertx.proton.impl.ProtonServerImpl.server:Lio/vertx/core/net/NetServer;
            iload 1 /* i */
            invokeinterface io.vertx.core.net.NetServer.listen:(I)Lio/vertx/core/net/NetServer;
            pop
         1: .line 74
            aload 0 /* this */
            areturn
        end local 1 // int i
        end local 0 // io.vertx.proton.impl.ProtonServerImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lio/vertx/proton/impl/ProtonServerImpl;
            0    2     1     i  I
    MethodParameters:
      Name  Flags
      i     

  public io.vertx.proton.impl.ProtonServerImpl listen();
    descriptor: ()Lio/vertx/proton/impl/ProtonServerImpl;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.vertx.proton.impl.ProtonServerImpl this
         0: .line 79
            aload 0 /* this */
            getfield io.vertx.proton.impl.ProtonServerImpl.server:Lio/vertx/core/net/NetServer;
            invokeinterface io.vertx.core.net.NetServer.listen:()Lio/vertx/core/net/NetServer;
            pop
         1: .line 80
            aload 0 /* this */
            areturn
        end local 0 // io.vertx.proton.impl.ProtonServerImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lio/vertx/proton/impl/ProtonServerImpl;

  public boolean isMetricsEnabled();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.vertx.proton.impl.ProtonServerImpl this
         0: .line 84
            aload 0 /* this */
            getfield io.vertx.proton.impl.ProtonServerImpl.server:Lio/vertx/core/net/NetServer;
            invokeinterface io.vertx.core.net.NetServer.isMetricsEnabled:()Z
            ireturn
        end local 0 // io.vertx.proton.impl.ProtonServerImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/vertx/proton/impl/ProtonServerImpl;

  public io.vertx.proton.impl.ProtonServerImpl listen(int, java.lang.String, io.vertx.core.Handler<io.vertx.core.AsyncResult<io.vertx.proton.ProtonServer>>);
    descriptor: (ILjava/lang/String;Lio/vertx/core/Handler;)Lio/vertx/proton/impl/ProtonServerImpl;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // io.vertx.proton.impl.ProtonServerImpl this
        start local 1 // int port
        start local 2 // java.lang.String host
        start local 3 // io.vertx.core.Handler handler
         0: .line 89
            aload 0 /* this */
            getfield io.vertx.proton.impl.ProtonServerImpl.server:Lio/vertx/core/net/NetServer;
            iload 1 /* port */
            aload 2 /* host */
            aload 0 /* this */
            aload 3 /* handler */
            invokevirtual io.vertx.proton.impl.ProtonServerImpl.convertHandler:(Lio/vertx/core/Handler;)Lio/vertx/core/Handler;
            invokeinterface io.vertx.core.net.NetServer.listen:(ILjava/lang/String;Lio/vertx/core/Handler;)Lio/vertx/core/net/NetServer;
            pop
         1: .line 90
            aload 0 /* this */
            areturn
        end local 3 // io.vertx.core.Handler handler
        end local 2 // java.lang.String host
        end local 1 // int port
        end local 0 // io.vertx.proton.impl.ProtonServerImpl this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lio/vertx/proton/impl/ProtonServerImpl;
            0    2     1     port  I
            0    2     2     host  Ljava/lang/String;
            0    2     3  handler  Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Lio/vertx/proton/ProtonServer;>;>;
    Signature: (ILjava/lang/String;Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Lio/vertx/proton/ProtonServer;>;>;)Lio/vertx/proton/impl/ProtonServerImpl;
    MethodParameters:
         Name  Flags
      port     
      host     
      handler  

  public io.vertx.proton.impl.ProtonServerImpl listen(io.vertx.core.Handler<io.vertx.core.AsyncResult<io.vertx.proton.ProtonServer>>);
    descriptor: (Lio/vertx/core/Handler;)Lio/vertx/proton/impl/ProtonServerImpl;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // io.vertx.proton.impl.ProtonServerImpl this
        start local 1 // io.vertx.core.Handler handler
         0: .line 95
            aload 0 /* this */
            getfield io.vertx.proton.impl.ProtonServerImpl.server:Lio/vertx/core/net/NetServer;
            aload 0 /* this */
            aload 1 /* handler */
            invokevirtual io.vertx.proton.impl.ProtonServerImpl.convertHandler:(Lio/vertx/core/Handler;)Lio/vertx/core/Handler;
            invokeinterface io.vertx.core.net.NetServer.listen:(Lio/vertx/core/Handler;)Lio/vertx/core/net/NetServer;
            pop
         1: .line 96
            aload 0 /* this */
            areturn
        end local 1 // io.vertx.core.Handler handler
        end local 0 // io.vertx.proton.impl.ProtonServerImpl this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lio/vertx/proton/impl/ProtonServerImpl;
            0    2     1  handler  Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Lio/vertx/proton/ProtonServer;>;>;
    Signature: (Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Lio/vertx/proton/ProtonServer;>;>;)Lio/vertx/proton/impl/ProtonServerImpl;
    MethodParameters:
         Name  Flags
      handler  

  private io.vertx.core.Handler<io.vertx.core.AsyncResult<io.vertx.core.net.NetServer>> convertHandler(io.vertx.core.Handler<io.vertx.core.AsyncResult<io.vertx.proton.ProtonServer>>);
    descriptor: (Lio/vertx/core/Handler;)Lio/vertx/core/Handler;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.vertx.proton.impl.ProtonServerImpl this
        start local 1 // io.vertx.core.Handler handler
         0: .line 100
            aload 0 /* this */
            aload 1 /* handler */
            invokedynamic handle(Lio/vertx/proton/impl/ProtonServerImpl;Lio/vertx/core/Handler;)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/proton/impl/ProtonServerImpl.lambda$0(Lio/vertx/core/Handler;Lio/vertx/core/AsyncResult;)V (7)
                  (Lio/vertx/core/AsyncResult;)V
            areturn
        end local 1 // io.vertx.core.Handler handler
        end local 0 // io.vertx.proton.impl.ProtonServerImpl this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lio/vertx/proton/impl/ProtonServerImpl;
            0    1     1  handler  Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Lio/vertx/proton/ProtonServer;>;>;
    Signature: (Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Lio/vertx/proton/ProtonServer;>;>;)Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Lio/vertx/core/net/NetServer;>;>;
    MethodParameters:
         Name  Flags
      handler  final

  public io.vertx.proton.impl.ProtonServerImpl listen(int, java.lang.String);
    descriptor: (ILjava/lang/String;)Lio/vertx/proton/impl/ProtonServerImpl;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // io.vertx.proton.impl.ProtonServerImpl this
        start local 1 // int i
        start local 2 // java.lang.String s
         0: .line 111
            aload 0 /* this */
            getfield io.vertx.proton.impl.ProtonServerImpl.server:Lio/vertx/core/net/NetServer;
            iload 1 /* i */
            aload 2 /* s */
            invokeinterface io.vertx.core.net.NetServer.listen:(ILjava/lang/String;)Lio/vertx/core/net/NetServer;
            pop
         1: .line 112
            aload 0 /* this */
            areturn
        end local 2 // java.lang.String s
        end local 1 // int i
        end local 0 // io.vertx.proton.impl.ProtonServerImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lio/vertx/proton/impl/ProtonServerImpl;
            0    2     1     i  I
            0    2     2     s  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      i     
      s     

  public io.vertx.proton.impl.ProtonServerImpl listen(int, io.vertx.core.Handler<io.vertx.core.AsyncResult<io.vertx.proton.ProtonServer>>);
    descriptor: (ILio/vertx/core/Handler;)Lio/vertx/proton/impl/ProtonServerImpl;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // io.vertx.proton.impl.ProtonServerImpl this
        start local 1 // int i
        start local 2 // io.vertx.core.Handler handler
         0: .line 117
            aload 0 /* this */
            getfield io.vertx.proton.impl.ProtonServerImpl.server:Lio/vertx/core/net/NetServer;
            iload 1 /* i */
            aload 0 /* this */
            aload 2 /* handler */
            invokevirtual io.vertx.proton.impl.ProtonServerImpl.convertHandler:(Lio/vertx/core/Handler;)Lio/vertx/core/Handler;
            invokeinterface io.vertx.core.net.NetServer.listen:(ILio/vertx/core/Handler;)Lio/vertx/core/net/NetServer;
            pop
         1: .line 118
            aload 0 /* this */
            areturn
        end local 2 // io.vertx.core.Handler handler
        end local 1 // int i
        end local 0 // io.vertx.proton.impl.ProtonServerImpl this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lio/vertx/proton/impl/ProtonServerImpl;
            0    2     1        i  I
            0    2     2  handler  Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Lio/vertx/proton/ProtonServer;>;>;
    Signature: (ILio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Lio/vertx/proton/ProtonServer;>;>;)Lio/vertx/proton/impl/ProtonServerImpl;
    MethodParameters:
         Name  Flags
      i        
      handler  

  public void close();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.vertx.proton.impl.ProtonServerImpl this
         0: .line 123
            aload 0 /* this */
            getfield io.vertx.proton.impl.ProtonServerImpl.server:Lio/vertx/core/net/NetServer;
            invokeinterface io.vertx.core.net.NetServer.close:()V
         1: .line 124
            return
        end local 0 // io.vertx.proton.impl.ProtonServerImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lio/vertx/proton/impl/ProtonServerImpl;

  public void close(io.vertx.core.Handler<io.vertx.core.AsyncResult<java.lang.Void>>);
    descriptor: (Lio/vertx/core/Handler;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.vertx.proton.impl.ProtonServerImpl this
        start local 1 // io.vertx.core.Handler handler
         0: .line 128
            aload 0 /* this */
            getfield io.vertx.proton.impl.ProtonServerImpl.server:Lio/vertx/core/net/NetServer;
            aload 1 /* handler */
            invokeinterface io.vertx.core.net.NetServer.close:(Lio/vertx/core/Handler;)V
         1: .line 129
            return
        end local 1 // io.vertx.core.Handler handler
        end local 0 // io.vertx.proton.impl.ProtonServerImpl this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lio/vertx/proton/impl/ProtonServerImpl;
            0    2     1  handler  Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Ljava/lang/Void;>;>;
    Signature: (Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Ljava/lang/Void;>;>;)V
    MethodParameters:
         Name  Flags
      handler  

  public io.vertx.core.Handler<io.vertx.proton.ProtonConnection> connectHandler();
    descriptor: ()Lio/vertx/core/Handler;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.vertx.proton.impl.ProtonServerImpl this
         0: .line 133
            aload 0 /* this */
            getfield io.vertx.proton.impl.ProtonServerImpl.handler:Lio/vertx/core/Handler;
            areturn
        end local 0 // io.vertx.proton.impl.ProtonServerImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/vertx/proton/impl/ProtonServerImpl;
    Signature: ()Lio/vertx/core/Handler<Lio/vertx/proton/ProtonConnection;>;

  public io.vertx.proton.ProtonServer saslAuthenticatorFactory(io.vertx.proton.sasl.ProtonSaslAuthenticatorFactory);
    descriptor: (Lio/vertx/proton/sasl/ProtonSaslAuthenticatorFactory;)Lio/vertx/proton/ProtonServer;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // io.vertx.proton.impl.ProtonServerImpl this
        start local 1 // io.vertx.proton.sasl.ProtonSaslAuthenticatorFactory authenticatorFactory
         0: .line 138
            aload 1 /* authenticatorFactory */
            ifnonnull 3
         1: .line 140
            aload 0 /* this */
            new io.vertx.proton.impl.ProtonServerImpl$DefaultAuthenticatorFactory
            dup
            invokespecial io.vertx.proton.impl.ProtonServerImpl$DefaultAuthenticatorFactory.<init>:()V
            putfield io.vertx.proton.impl.ProtonServerImpl.authenticatorFactory:Lio/vertx/proton/sasl/ProtonSaslAuthenticatorFactory;
         2: .line 141
            goto 4
         3: .line 142
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* authenticatorFactory */
            putfield io.vertx.proton.impl.ProtonServerImpl.authenticatorFactory:Lio/vertx/proton/sasl/ProtonSaslAuthenticatorFactory;
         4: .line 144
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            areturn
        end local 1 // io.vertx.proton.sasl.ProtonSaslAuthenticatorFactory authenticatorFactory
        end local 0 // io.vertx.proton.impl.ProtonServerImpl this
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0    5     0                  this  Lio/vertx/proton/impl/ProtonServerImpl;
            0    5     1  authenticatorFactory  Lio/vertx/proton/sasl/ProtonSaslAuthenticatorFactory;
    MethodParameters:
                      Name  Flags
      authenticatorFactory  

  public io.vertx.proton.impl.ProtonServerImpl connectHandler(io.vertx.core.Handler<io.vertx.proton.ProtonConnection>);
    descriptor: (Lio/vertx/core/Handler;)Lio/vertx/proton/impl/ProtonServerImpl;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // io.vertx.proton.impl.ProtonServerImpl this
        start local 1 // io.vertx.core.Handler handler
         0: .line 149
            aload 0 /* this */
            aload 1 /* handler */
            putfield io.vertx.proton.impl.ProtonServerImpl.handler:Lio/vertx/core/Handler;
         1: .line 150
            aload 0 /* this */
            getfield io.vertx.proton.impl.ProtonServerImpl.server:Lio/vertx/core/net/NetServer;
            aload 0 /* this */
            aload 1 /* handler */
            invokedynamic handle(Lio/vertx/proton/impl/ProtonServerImpl;Lio/vertx/core/Handler;)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/proton/impl/ProtonServerImpl.lambda$1(Lio/vertx/core/Handler;Lio/vertx/core/net/NetSocket;)V (7)
                  (Lio/vertx/core/net/NetSocket;)V
            invokeinterface io.vertx.core.net.NetServer.connectHandler:(Lio/vertx/core/Handler;)Lio/vertx/core/net/NetServer;
            pop
         2: .line 209
            aload 0 /* this */
            areturn
        end local 1 // io.vertx.core.Handler handler
        end local 0 // io.vertx.proton.impl.ProtonServerImpl this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lio/vertx/proton/impl/ProtonServerImpl;
            0    3     1  handler  Lio/vertx/core/Handler<Lio/vertx/proton/ProtonConnection;>;
    Signature: (Lio/vertx/core/Handler<Lio/vertx/proton/ProtonConnection;>;)Lio/vertx/proton/impl/ProtonServerImpl;
    MethodParameters:
         Name  Flags
      handler  

  public void setAdvertiseAnonymousRelayCapability(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.vertx.proton.impl.ProtonServerImpl this
        start local 1 // boolean advertiseAnonymousRelayCapability
         0: .line 213
            aload 0 /* this */
            iload 1 /* advertiseAnonymousRelayCapability */
            putfield io.vertx.proton.impl.ProtonServerImpl.advertiseAnonymousRelayCapability:Z
         1: .line 214
            return
        end local 1 // boolean advertiseAnonymousRelayCapability
        end local 0 // io.vertx.proton.impl.ProtonServerImpl this
      LocalVariableTable:
        Start  End  Slot                               Name  Signature
            0    2     0                               this  Lio/vertx/proton/impl/ProtonServerImpl;
            0    2     1  advertiseAnonymousRelayCapability  Z
    MethodParameters:
                                   Name  Flags
      advertiseAnonymousRelayCapability  

  public io.vertx.proton.ProtonServer connectHandler(io.vertx.core.Handler);
    descriptor: (Lio/vertx/core/Handler;)Lio/vertx/proton/ProtonServer;
    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.proton.impl.ProtonServerImpl.connectHandler:(Lio/vertx/core/Handler;)Lio/vertx/proton/impl/ProtonServerImpl;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public io.vertx.proton.ProtonServer listen(int, io.vertx.core.Handler);
    descriptor: (ILio/vertx/core/Handler;)Lio/vertx/proton/ProtonServer;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=3, locals=3, args_size=3
         0: .line 1
            aload 0
            iload 1
            aload 2
            invokevirtual io.vertx.proton.impl.ProtonServerImpl.listen:(ILio/vertx/core/Handler;)Lio/vertx/proton/impl/ProtonServerImpl;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public io.vertx.proton.ProtonServer listen(int, java.lang.String);
    descriptor: (ILjava/lang/String;)Lio/vertx/proton/ProtonServer;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=3, locals=3, args_size=3
         0: .line 1
            aload 0
            iload 1
            aload 2
            invokevirtual io.vertx.proton.impl.ProtonServerImpl.listen:(ILjava/lang/String;)Lio/vertx/proton/impl/ProtonServerImpl;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public io.vertx.proton.ProtonServer listen(io.vertx.core.Handler);
    descriptor: (Lio/vertx/core/Handler;)Lio/vertx/proton/ProtonServer;
    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.proton.impl.ProtonServerImpl.listen:(Lio/vertx/core/Handler;)Lio/vertx/proton/impl/ProtonServerImpl;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public io.vertx.proton.ProtonServer listen(int, java.lang.String, io.vertx.core.Handler);
    descriptor: (ILjava/lang/String;Lio/vertx/core/Handler;)Lio/vertx/proton/ProtonServer;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=4, locals=4, args_size=4
         0: .line 1
            aload 0
            iload 1
            aload 2
            aload 3
            invokevirtual io.vertx.proton.impl.ProtonServerImpl.listen:(ILjava/lang/String;Lio/vertx/core/Handler;)Lio/vertx/proton/impl/ProtonServerImpl;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public io.vertx.proton.ProtonServer listen();
    descriptor: ()Lio/vertx/proton/ProtonServer;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokevirtual io.vertx.proton.impl.ProtonServerImpl.listen:()Lio/vertx/proton/impl/ProtonServerImpl;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public io.vertx.proton.ProtonServer listen(int);
    descriptor: (I)Lio/vertx/proton/ProtonServer;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
         0: .line 1
            aload 0
            iload 1
            invokevirtual io.vertx.proton.impl.ProtonServerImpl.listen:(I)Lio/vertx/proton/impl/ProtonServerImpl;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private void lambda$0(io.vertx.core.Handler, io.vertx.core.AsyncResult);
    descriptor: (Lio/vertx/core/Handler;Lio/vertx/core/AsyncResult;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // io.vertx.proton.impl.ProtonServerImpl this
        start local 2 // io.vertx.core.AsyncResult result
         0: .line 101
            aload 2 /* result */
            invokeinterface io.vertx.core.AsyncResult.succeeded:()Z
            ifeq 3
         1: .line 102
            aload 1
            aload 0 /* this */
            invokestatic io.vertx.core.Future.succeededFuture:(Ljava/lang/Object;)Lio/vertx/core/Future;
            invokeinterface io.vertx.core.Handler.handle:(Ljava/lang/Object;)V
         2: .line 103
            goto 4
         3: .line 104
      StackMap locals:
      StackMap stack:
            aload 1
            aload 2 /* result */
            invokeinterface io.vertx.core.AsyncResult.cause:()Ljava/lang/Throwable;
            invokestatic io.vertx.core.Future.failedFuture:(Ljava/lang/Throwable;)Lio/vertx/core/Future;
            invokeinterface io.vertx.core.Handler.handle:(Ljava/lang/Object;)V
         4: .line 106
      StackMap locals:
      StackMap stack:
            return
        end local 2 // io.vertx.core.AsyncResult result
        end local 0 // io.vertx.proton.impl.ProtonServerImpl this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    5     0    this  Lio/vertx/proton/impl/ProtonServerImpl;
            0    5     2  result  Lio/vertx/core/AsyncResult<Lio/vertx/core/net/NetServer;>;

  private void lambda$1(io.vertx.core.Handler, io.vertx.core.net.NetSocket);
    descriptor: (Lio/vertx/core/Handler;Lio/vertx/core/net/NetSocket;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=8, locals=7, args_size=3
        start local 0 // io.vertx.proton.impl.ProtonServerImpl this
        start local 2 // io.vertx.core.net.NetSocket netSocket
         0: .line 151
            aconst_null
            astore 3 /* hostname */
        start local 3 // java.lang.String hostname
         1: .line 153
            invokestatic java.net.InetAddress.getLocalHost:()Ljava/net/InetAddress;
            invokevirtual java.net.InetAddress.getHostName:()Ljava/lang/String;
            astore 3 /* hostname */
         2: .line 154
            goto 4
      StackMap locals: io.vertx.proton.impl.ProtonServerImpl io.vertx.core.Handler io.vertx.core.net.NetSocket java.lang.String
      StackMap stack: java.net.UnknownHostException
         3: pop
         4: .line 158
      StackMap locals:
      StackMap stack:
            new io.vertx.proton.impl.ProtonConnectionImpl
            dup
            aload 0 /* this */
            getfield io.vertx.proton.impl.ProtonServerImpl.vertx:Lio/vertx/core/Vertx;
            aload 3 /* hostname */
            invokestatic io.vertx.core.Vertx.currentContext:()Lio/vertx/core/Context;
            checkcast io.vertx.core.impl.ContextInternal
            invokespecial io.vertx.proton.impl.ProtonConnectionImpl.<init>:(Lio/vertx/core/Vertx;Ljava/lang/String;Lio/vertx/core/impl/ContextInternal;)V
            astore 4 /* connection */
        start local 4 // io.vertx.proton.impl.ProtonConnectionImpl connection
         5: .line 159
            aload 0 /* this */
            getfield io.vertx.proton.impl.ProtonServerImpl.advertiseAnonymousRelayCapability:Z
            ifeq 7
         6: .line 160
            aload 4 /* connection */
            iconst_1
            anewarray org.apache.qpid.proton.amqp.Symbol
            dup
            iconst_0
            getstatic io.vertx.proton.impl.ProtonConnectionImpl.ANONYMOUS_RELAY:Lorg/apache/qpid/proton/amqp/Symbol;
            aastore
            invokevirtual io.vertx.proton.impl.ProtonConnectionImpl.setOfferedCapabilities:([Lorg/apache/qpid/proton/amqp/Symbol;)Lio/vertx/proton/impl/ProtonConnectionImpl;
            pop
         7: .line 163
      StackMap locals: io.vertx.proton.impl.ProtonConnectionImpl
      StackMap stack:
            aload 0 /* this */
            getfield io.vertx.proton.impl.ProtonServerImpl.authenticatorFactory:Lio/vertx/proton/sasl/ProtonSaslAuthenticatorFactory;
            invokeinterface io.vertx.proton.sasl.ProtonSaslAuthenticatorFactory.create:()Lio/vertx/proton/sasl/ProtonSaslAuthenticator;
            astore 5 /* authenticator */
        start local 5 // io.vertx.proton.sasl.ProtonSaslAuthenticator authenticator
         8: .line 165
            new io.vertx.proton.ProtonTransportOptions
            dup
            invokespecial io.vertx.proton.ProtonTransportOptions.<init>:()V
            astore 6 /* transportOptions */
        start local 6 // io.vertx.proton.ProtonTransportOptions transportOptions
         9: .line 166
            aload 6 /* transportOptions */
            aload 0 /* this */
            getfield io.vertx.proton.impl.ProtonServerImpl.options:Lio/vertx/proton/ProtonServerOptions;
            invokevirtual io.vertx.proton.ProtonServerOptions.getHeartbeat:()I
            invokevirtual io.vertx.proton.ProtonTransportOptions.setHeartbeat:(I)Lio/vertx/proton/ProtonTransportOptions;
            pop
        10: .line 167
            aload 6 /* transportOptions */
            aload 0 /* this */
            getfield io.vertx.proton.impl.ProtonServerImpl.options:Lio/vertx/proton/ProtonServerOptions;
            invokevirtual io.vertx.proton.ProtonServerOptions.getMaxFrameSize:()I
            invokevirtual io.vertx.proton.ProtonTransportOptions.setMaxFrameSize:(I)Lio/vertx/proton/ProtonTransportOptions;
            pop
        11: .line 169
            aload 4 /* connection */
            aload 2 /* netSocket */
            new io.vertx.proton.impl.ProtonServerImpl$1
            dup
            aload 0 /* this */
            aload 5 /* authenticator */
            aload 1
            aload 4 /* connection */
            invokespecial io.vertx.proton.impl.ProtonServerImpl$1.<init>:(Lio/vertx/proton/impl/ProtonServerImpl;Lio/vertx/proton/sasl/ProtonSaslAuthenticator;Lio/vertx/core/Handler;Lio/vertx/proton/impl/ProtonConnectionImpl;)V
        12: .line 207
            aload 6 /* transportOptions */
        13: .line 169
            invokevirtual io.vertx.proton.impl.ProtonConnectionImpl.bindServer:(Lio/vertx/core/net/NetSocket;Lio/vertx/proton/sasl/ProtonSaslAuthenticator;Lio/vertx/proton/ProtonTransportOptions;)V
        end local 6 // io.vertx.proton.ProtonTransportOptions transportOptions
        end local 5 // io.vertx.proton.sasl.ProtonSaslAuthenticator authenticator
        end local 4 // io.vertx.proton.impl.ProtonConnectionImpl connection
        end local 3 // java.lang.String hostname
        14: .line 208
            return
        end local 2 // io.vertx.core.net.NetSocket netSocket
        end local 0 // io.vertx.proton.impl.ProtonServerImpl this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   15     0              this  Lio/vertx/proton/impl/ProtonServerImpl;
            0   15     2         netSocket  Lio/vertx/core/net/NetSocket;
            1   14     3          hostname  Ljava/lang/String;
            5   14     4        connection  Lio/vertx/proton/impl/ProtonConnectionImpl;
            8   14     5     authenticator  Lio/vertx/proton/sasl/ProtonSaslAuthenticator;
            9   14     6  transportOptions  Lio/vertx/proton/ProtonTransportOptions;
      Exception table:
        from    to  target  type
           1     2       3  Class java.net.UnknownHostException
}
SourceFile: "ProtonServerImpl.java"
NestMembers:
  io.vertx.proton.impl.ProtonServerImpl$1  io.vertx.proton.impl.ProtonServerImpl$2  io.vertx.proton.impl.ProtonServerImpl$DefaultAuthenticatorFactory
InnerClasses:
  io.vertx.proton.impl.ProtonServerImpl$1
  private DefaultAuthenticatorFactory = io.vertx.proton.impl.ProtonServerImpl$DefaultAuthenticatorFactory of io.vertx.proton.impl.ProtonServerImpl
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles