public class io.vertx.core.http.impl.HttpChannelConnector implements io.vertx.core.net.impl.clientconnection.ConnectionProvider<io.vertx.core.http.impl.HttpClientConnection>
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: io.vertx.core.http.impl.HttpChannelConnector
  super_class: java.lang.Object
{
  private final io.vertx.core.http.impl.HttpClientImpl client;
    descriptor: Lio/vertx/core/http/impl/HttpClientImpl;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final io.netty.channel.group.ChannelGroup channelGroup;
    descriptor: Lio/netty/channel/group/ChannelGroup;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

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

  private final io.vertx.core.http.HttpClientOptions options;
    descriptor: Lio/vertx/core/http/HttpClientOptions;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final io.vertx.core.spi.metrics.ClientMetrics metrics;
    descriptor: Lio/vertx/core/spi/metrics/ClientMetrics;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

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

  private final io.vertx.core.http.HttpVersion version;
    descriptor: Lio/vertx/core/http/HttpVersion;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final long weight;
    descriptor: J
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final long http1Weight;
    descriptor: J
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final long http2Weight;
    descriptor: J
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final long http1MaxConcurrency;
    descriptor: J
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

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

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

  public void <init>(io.vertx.core.http.impl.HttpClientImpl, io.netty.channel.group.ChannelGroup, io.vertx.core.impl.ContextInternal, io.vertx.core.spi.metrics.ClientMetrics, io.vertx.core.http.HttpVersion, io.vertx.core.net.impl.SSLHelper, io.vertx.core.net.SocketAddress, io.vertx.core.net.SocketAddress);
    descriptor: (Lio/vertx/core/http/impl/HttpClientImpl;Lio/netty/channel/group/ChannelGroup;Lio/vertx/core/impl/ContextInternal;Lio/vertx/core/spi/metrics/ClientMetrics;Lio/vertx/core/http/HttpVersion;Lio/vertx/core/net/impl/SSLHelper;Lio/vertx/core/net/SocketAddress;Lio/vertx/core/net/SocketAddress;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=9, args_size=9
        start local 0 // io.vertx.core.http.impl.HttpChannelConnector this
        start local 1 // io.vertx.core.http.impl.HttpClientImpl client
        start local 2 // io.netty.channel.group.ChannelGroup channelGroup
        start local 3 // io.vertx.core.impl.ContextInternal context
        start local 4 // io.vertx.core.spi.metrics.ClientMetrics metrics
        start local 5 // io.vertx.core.http.HttpVersion version
        start local 6 // io.vertx.core.net.impl.SSLHelper sslHelper
        start local 7 // io.vertx.core.net.SocketAddress peerAddress
        start local 8 // io.vertx.core.net.SocketAddress server
         0: .line 64
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 72
            aload 0 /* this */
            aload 1 /* client */
            putfield io.vertx.core.http.impl.HttpChannelConnector.client:Lio/vertx/core/http/impl/HttpClientImpl;
         2: .line 73
            aload 0 /* this */
            aload 2 /* channelGroup */
            putfield io.vertx.core.http.impl.HttpChannelConnector.channelGroup:Lio/netty/channel/group/ChannelGroup;
         3: .line 74
            aload 0 /* this */
            aload 3 /* context */
            putfield io.vertx.core.http.impl.HttpChannelConnector.context:Lio/vertx/core/impl/ContextInternal;
         4: .line 75
            aload 0 /* this */
            aload 4 /* metrics */
            putfield io.vertx.core.http.impl.HttpChannelConnector.metrics:Lio/vertx/core/spi/metrics/ClientMetrics;
         5: .line 76
            aload 0 /* this */
            aload 1 /* client */
            invokevirtual io.vertx.core.http.impl.HttpClientImpl.getOptions:()Lio/vertx/core/http/HttpClientOptions;
            putfield io.vertx.core.http.impl.HttpChannelConnector.options:Lio/vertx/core/http/HttpClientOptions;
         6: .line 77
            aload 0 /* this */
            aload 6 /* sslHelper */
            putfield io.vertx.core.http.impl.HttpChannelConnector.sslHelper:Lio/vertx/core/net/impl/SSLHelper;
         7: .line 78
            aload 0 /* this */
            aload 5 /* version */
            putfield io.vertx.core.http.impl.HttpChannelConnector.version:Lio/vertx/core/http/HttpVersion;
         8: .line 85
            aload 0 /* this */
            aload 0 /* this */
            getfield io.vertx.core.http.impl.HttpChannelConnector.options:Lio/vertx/core/http/HttpClientOptions;
            invokevirtual io.vertx.core.http.HttpClientOptions.getHttp2MaxPoolSize:()I
            i2l
            putfield io.vertx.core.http.impl.HttpChannelConnector.http1Weight:J
         9: .line 86
            aload 0 /* this */
            aload 0 /* this */
            getfield io.vertx.core.http.impl.HttpChannelConnector.options:Lio/vertx/core/http/HttpClientOptions;
            invokevirtual io.vertx.core.http.HttpClientOptions.getMaxPoolSize:()I
            i2l
            putfield io.vertx.core.http.impl.HttpChannelConnector.http2Weight:J
        10: .line 87
            aload 0 /* this */
            aload 5 /* version */
            getstatic io.vertx.core.http.HttpVersion.HTTP_2:Lio/vertx/core/http/HttpVersion;
            if_acmpne 11
            aload 0 /* this */
            getfield io.vertx.core.http.impl.HttpChannelConnector.http2Weight:J
            goto 12
      StackMap locals: io.vertx.core.http.impl.HttpChannelConnector io.vertx.core.http.impl.HttpClientImpl io.netty.channel.group.ChannelGroup io.vertx.core.impl.ContextInternal io.vertx.core.spi.metrics.ClientMetrics io.vertx.core.http.HttpVersion io.vertx.core.net.impl.SSLHelper io.vertx.core.net.SocketAddress io.vertx.core.net.SocketAddress
      StackMap stack: io.vertx.core.http.impl.HttpChannelConnector
        11: aload 0 /* this */
            getfield io.vertx.core.http.impl.HttpChannelConnector.http1Weight:J
      StackMap locals: io.vertx.core.http.impl.HttpChannelConnector io.vertx.core.http.impl.HttpClientImpl io.netty.channel.group.ChannelGroup io.vertx.core.impl.ContextInternal io.vertx.core.spi.metrics.ClientMetrics io.vertx.core.http.HttpVersion io.vertx.core.net.impl.SSLHelper io.vertx.core.net.SocketAddress io.vertx.core.net.SocketAddress
      StackMap stack: io.vertx.core.http.impl.HttpChannelConnector long
        12: putfield io.vertx.core.http.impl.HttpChannelConnector.weight:J
        13: .line 88
            aload 0 /* this */
            aload 0 /* this */
            getfield io.vertx.core.http.impl.HttpChannelConnector.options:Lio/vertx/core/http/HttpClientOptions;
            invokevirtual io.vertx.core.http.HttpClientOptions.isPipelining:()Z
            ifeq 14
            aload 0 /* this */
            getfield io.vertx.core.http.impl.HttpChannelConnector.options:Lio/vertx/core/http/HttpClientOptions;
            invokevirtual io.vertx.core.http.HttpClientOptions.getPipeliningLimit:()I
            goto 15
      StackMap locals:
      StackMap stack: io.vertx.core.http.impl.HttpChannelConnector
        14: iconst_1
      StackMap locals: io.vertx.core.http.impl.HttpChannelConnector io.vertx.core.http.impl.HttpClientImpl io.netty.channel.group.ChannelGroup io.vertx.core.impl.ContextInternal io.vertx.core.spi.metrics.ClientMetrics io.vertx.core.http.HttpVersion io.vertx.core.net.impl.SSLHelper io.vertx.core.net.SocketAddress io.vertx.core.net.SocketAddress
      StackMap stack: io.vertx.core.http.impl.HttpChannelConnector int
        15: i2l
            putfield io.vertx.core.http.impl.HttpChannelConnector.http1MaxConcurrency:J
        16: .line 89
            aload 0 /* this */
            aload 7 /* peerAddress */
            putfield io.vertx.core.http.impl.HttpChannelConnector.peerAddress:Lio/vertx/core/net/SocketAddress;
        17: .line 90
            aload 0 /* this */
            aload 8 /* server */
            putfield io.vertx.core.http.impl.HttpChannelConnector.server:Lio/vertx/core/net/SocketAddress;
        18: .line 91
            return
        end local 8 // io.vertx.core.net.SocketAddress server
        end local 7 // io.vertx.core.net.SocketAddress peerAddress
        end local 6 // io.vertx.core.net.impl.SSLHelper sslHelper
        end local 5 // io.vertx.core.http.HttpVersion version
        end local 4 // io.vertx.core.spi.metrics.ClientMetrics metrics
        end local 3 // io.vertx.core.impl.ContextInternal context
        end local 2 // io.netty.channel.group.ChannelGroup channelGroup
        end local 1 // io.vertx.core.http.impl.HttpClientImpl client
        end local 0 // io.vertx.core.http.impl.HttpChannelConnector this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   19     0          this  Lio/vertx/core/http/impl/HttpChannelConnector;
            0   19     1        client  Lio/vertx/core/http/impl/HttpClientImpl;
            0   19     2  channelGroup  Lio/netty/channel/group/ChannelGroup;
            0   19     3       context  Lio/vertx/core/impl/ContextInternal;
            0   19     4       metrics  Lio/vertx/core/spi/metrics/ClientMetrics;
            0   19     5       version  Lio/vertx/core/http/HttpVersion;
            0   19     6     sslHelper  Lio/vertx/core/net/impl/SSLHelper;
            0   19     7   peerAddress  Lio/vertx/core/net/SocketAddress;
            0   19     8        server  Lio/vertx/core/net/SocketAddress;
    MethodParameters:
              Name  Flags
      client        
      channelGroup  
      context       
      metrics       
      version       
      sslHelper     
      peerAddress   
      server        

  public long weight();
    descriptor: ()J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // io.vertx.core.http.impl.HttpChannelConnector this
         0: .line 94
            aload 0 /* this */
            getfield io.vertx.core.http.impl.HttpChannelConnector.weight:J
            lreturn
        end local 0 // io.vertx.core.http.impl.HttpChannelConnector this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/vertx/core/http/impl/HttpChannelConnector;

  public void close(io.vertx.core.http.impl.HttpClientConnection);
    descriptor: (Lio/vertx/core/http/impl/HttpClientConnection;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // io.vertx.core.http.impl.HttpChannelConnector this
        start local 1 // io.vertx.core.http.impl.HttpClientConnection conn
         0: .line 99
            aload 1 /* conn */
            invokeinterface io.vertx.core.http.impl.HttpClientConnection.close:()Lio/vertx/core/Future;
            pop
         1: .line 100
            return
        end local 1 // io.vertx.core.http.impl.HttpClientConnection conn
        end local 0 // io.vertx.core.http.impl.HttpChannelConnector this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lio/vertx/core/http/impl/HttpChannelConnector;
            0    2     1  conn  Lio/vertx/core/http/impl/HttpClientConnection;
    MethodParameters:
      Name  Flags
      conn  

  public void init(io.vertx.core.http.impl.HttpClientConnection);
    descriptor: (Lio/vertx/core/http/impl/HttpClientConnection;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // io.vertx.core.http.impl.HttpChannelConnector this
        start local 1 // io.vertx.core.http.impl.HttpClientConnection conn
         0: .line 104
            aload 0 /* this */
            getfield io.vertx.core.http.impl.HttpChannelConnector.client:Lio/vertx/core/http/impl/HttpClientImpl;
            invokevirtual io.vertx.core.http.impl.HttpClientImpl.connectionHandler:()Lio/vertx/core/Handler;
            astore 2 /* handler */
        start local 2 // io.vertx.core.Handler handler
         1: .line 105
            aload 2 /* handler */
            ifnull 3
         2: .line 106
            aload 0 /* this */
            getfield io.vertx.core.http.impl.HttpChannelConnector.context:Lio/vertx/core/impl/ContextInternal;
            aload 1 /* conn */
            aload 2 /* handler */
            invokeinterface io.vertx.core.impl.ContextInternal.emit:(Ljava/lang/Object;Lio/vertx/core/Handler;)V
         3: .line 108
      StackMap locals: io.vertx.core.Handler
      StackMap stack:
            return
        end local 2 // io.vertx.core.Handler handler
        end local 1 // io.vertx.core.http.impl.HttpClientConnection conn
        end local 0 // io.vertx.core.http.impl.HttpChannelConnector this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lio/vertx/core/http/impl/HttpChannelConnector;
            0    4     1     conn  Lio/vertx/core/http/impl/HttpClientConnection;
            1    4     2  handler  Lio/vertx/core/Handler<Lio/vertx/core/http/HttpConnection;>;
    MethodParameters:
      Name  Flags
      conn  

  public boolean isValid(io.vertx.core.http.impl.HttpClientConnection);
    descriptor: (Lio/vertx/core/http/impl/HttpClientConnection;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // io.vertx.core.http.impl.HttpChannelConnector this
        start local 1 // io.vertx.core.http.impl.HttpClientConnection conn
         0: .line 112
            aload 1 /* conn */
            invokeinterface io.vertx.core.http.impl.HttpClientConnection.isValid:()Z
            ireturn
        end local 1 // io.vertx.core.http.impl.HttpClientConnection conn
        end local 0 // io.vertx.core.http.impl.HttpChannelConnector this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/vertx/core/http/impl/HttpChannelConnector;
            0    1     1  conn  Lio/vertx/core/http/impl/HttpClientConnection;
    MethodParameters:
      Name  Flags
      conn  

  public void connect(io.vertx.core.net.impl.clientconnection.ConnectionListener<io.vertx.core.http.impl.HttpClientConnection>, io.vertx.core.impl.ContextInternal, io.vertx.core.Handler<io.vertx.core.AsyncResult<io.vertx.core.net.impl.clientconnection.ConnectResult<io.vertx.core.http.impl.HttpClientConnection>>>);
    descriptor: (Lio/vertx/core/net/impl/clientconnection/ConnectionListener;Lio/vertx/core/impl/ContextInternal;Lio/vertx/core/Handler;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=6, args_size=4
        start local 0 // io.vertx.core.http.impl.HttpChannelConnector this
        start local 1 // io.vertx.core.net.impl.clientconnection.ConnectionListener listener
        start local 2 // io.vertx.core.impl.ContextInternal context
        start local 3 // io.vertx.core.Handler handler
         0: .line 117
            invokestatic io.vertx.core.Promise.promise:()Lio/vertx/core/Promise;
            astore 4 /* promise */
        start local 4 // io.vertx.core.Promise promise
         1: .line 118
            aload 4 /* promise */
            invokeinterface io.vertx.core.Promise.future:()Lio/vertx/core/Future;
            aload 3 /* handler */
            invokeinterface io.vertx.core.Future.onComplete:(Lio/vertx/core/Handler;)Lio/vertx/core/Future;
            pop
         2: .line 120
            aload 0 /* this */
            aload 1 /* listener */
            aload 2 /* context */
            checkcast io.vertx.core.impl.EventLoopContext
            aload 4 /* promise */
            invokevirtual io.vertx.core.http.impl.HttpChannelConnector.doConnect:(Lio/vertx/core/net/impl/clientconnection/ConnectionListener;Lio/vertx/core/impl/EventLoopContext;Lio/vertx/core/Promise;)V
         3: .line 121
            goto 6
      StackMap locals: io.vertx.core.http.impl.HttpChannelConnector io.vertx.core.net.impl.clientconnection.ConnectionListener io.vertx.core.impl.ContextInternal io.vertx.core.Handler io.vertx.core.Promise
      StackMap stack: java.lang.Exception
         4: astore 5 /* e */
        start local 5 // java.lang.Exception e
         5: .line 122
            aload 4 /* promise */
            aload 5 /* e */
            invokeinterface io.vertx.core.Promise.tryFail:(Ljava/lang/Throwable;)Z
            pop
        end local 5 // java.lang.Exception e
         6: .line 124
      StackMap locals:
      StackMap stack:
            return
        end local 4 // io.vertx.core.Promise promise
        end local 3 // io.vertx.core.Handler handler
        end local 2 // io.vertx.core.impl.ContextInternal context
        end local 1 // io.vertx.core.net.impl.clientconnection.ConnectionListener listener
        end local 0 // io.vertx.core.http.impl.HttpChannelConnector this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    7     0      this  Lio/vertx/core/http/impl/HttpChannelConnector;
            0    7     1  listener  Lio/vertx/core/net/impl/clientconnection/ConnectionListener<Lio/vertx/core/http/impl/HttpClientConnection;>;
            0    7     2   context  Lio/vertx/core/impl/ContextInternal;
            0    7     3   handler  Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Lio/vertx/core/net/impl/clientconnection/ConnectResult<Lio/vertx/core/http/impl/HttpClientConnection;>;>;>;
            1    7     4   promise  Lio/vertx/core/Promise<Lio/vertx/core/net/impl/clientconnection/ConnectResult<Lio/vertx/core/http/impl/HttpClientConnection;>;>;
            5    6     5         e  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
           2     3       4  Class java.lang.Exception
    Signature: (Lio/vertx/core/net/impl/clientconnection/ConnectionListener<Lio/vertx/core/http/impl/HttpClientConnection;>;Lio/vertx/core/impl/ContextInternal;Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Lio/vertx/core/net/impl/clientconnection/ConnectResult<Lio/vertx/core/http/impl/HttpClientConnection;>;>;>;)V
    MethodParameters:
          Name  Flags
      listener  
      context   
      handler   

  private void doConnect(io.vertx.core.net.impl.clientconnection.ConnectionListener<io.vertx.core.http.impl.HttpClientConnection>, io.vertx.core.impl.EventLoopContext, io.vertx.core.Promise<io.vertx.core.net.impl.clientconnection.ConnectResult<io.vertx.core.http.impl.HttpClientConnection>>);
    descriptor: (Lio/vertx/core/net/impl/clientconnection/ConnectionListener;Lio/vertx/core/impl/EventLoopContext;Lio/vertx/core/Promise;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=9, args_size=4
        start local 0 // io.vertx.core.http.impl.HttpChannelConnector this
        start local 1 // io.vertx.core.net.impl.clientconnection.ConnectionListener listener
        start local 2 // io.vertx.core.impl.EventLoopContext context
        start local 3 // io.vertx.core.Promise future
         0: .line 131
            aload 0 /* this */
            getfield io.vertx.core.http.impl.HttpChannelConnector.server:Lio/vertx/core/net/SocketAddress;
            invokeinterface io.vertx.core.net.SocketAddress.path:()Ljava/lang/String;
            ifnull 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: istore 4 /* domainSocket */
        start local 4 // boolean domainSocket
         3: .line 133
            new io.netty.bootstrap.Bootstrap
            dup
            invokespecial io.netty.bootstrap.Bootstrap.<init>:()V
            astore 5 /* bootstrap */
        start local 5 // io.netty.bootstrap.Bootstrap bootstrap
         4: .line 134
            aload 5 /* bootstrap */
            aload 2 /* context */
            invokevirtual io.vertx.core.impl.EventLoopContext.nettyEventLoop:()Lio/netty/channel/EventLoop;
            invokevirtual io.netty.bootstrap.Bootstrap.group:(Lio/netty/channel/EventLoopGroup;)Lio/netty/bootstrap/AbstractBootstrap;
            pop
         5: .line 136
            aload 0 /* this */
            iload 4 /* domainSocket */
            aload 5 /* bootstrap */
            invokevirtual io.vertx.core.http.impl.HttpChannelConnector.applyConnectionOptions:(ZLio/netty/bootstrap/Bootstrap;)V
         6: .line 138
            aload 0 /* this */
            getfield io.vertx.core.http.impl.HttpChannelConnector.options:Lio/vertx/core/http/HttpClientOptions;
            invokevirtual io.vertx.core.http.HttpClientOptions.getProxyOptions:()Lio/vertx/core/net/ProxyOptions;
            astore 6 /* options */
        start local 6 // io.vertx.core.net.ProxyOptions options
         7: .line 139
            aload 6 /* options */
            ifnull 9
            aload 0 /* this */
            getfield io.vertx.core.http.impl.HttpChannelConnector.sslHelper:Lio/vertx/core/net/impl/SSLHelper;
            ifnonnull 9
            aload 6 /* options */
            invokevirtual io.vertx.core.net.ProxyOptions.getType:()Lio/vertx/core/net/ProxyType;
            getstatic io.vertx.core.net.ProxyType.HTTP:Lio/vertx/core/net/ProxyType;
            if_acmpne 9
         8: .line 141
            aconst_null
            astore 6 /* options */
         9: .line 143
      StackMap locals: int io.netty.bootstrap.Bootstrap io.vertx.core.net.ProxyOptions
      StackMap stack:
            new io.vertx.core.net.impl.ChannelProvider
            dup
            aload 5 /* bootstrap */
            aload 0 /* this */
            getfield io.vertx.core.http.impl.HttpChannelConnector.sslHelper:Lio/vertx/core/net/impl/SSLHelper;
            aload 2 /* context */
            aload 6 /* options */
            invokespecial io.vertx.core.net.impl.ChannelProvider.<init>:(Lio/netty/bootstrap/Bootstrap;Lio/vertx/core/net/impl/SSLHelper;Lio/vertx/core/impl/ContextInternal;Lio/vertx/core/net/ProxyOptions;)V
            astore 7 /* channelProvider */
        start local 7 // io.vertx.core.net.impl.ChannelProvider channelProvider
        10: .line 145
            aload 7 /* channelProvider */
            aload 0 /* this */
            getfield io.vertx.core.http.impl.HttpChannelConnector.server:Lio/vertx/core/net/SocketAddress;
            aload 0 /* this */
            getfield io.vertx.core.http.impl.HttpChannelConnector.peerAddress:Lio/vertx/core/net/SocketAddress;
            aload 0 /* this */
            getfield io.vertx.core.http.impl.HttpChannelConnector.options:Lio/vertx/core/http/HttpClientOptions;
            invokevirtual io.vertx.core.http.HttpClientOptions.isForceSni:()Z
            ifeq 11
            aload 0 /* this */
            getfield io.vertx.core.http.impl.HttpChannelConnector.peerAddress:Lio/vertx/core/net/SocketAddress;
            invokeinterface io.vertx.core.net.SocketAddress.host:()Ljava/lang/String;
            goto 12
      StackMap locals: io.vertx.core.http.impl.HttpChannelConnector io.vertx.core.net.impl.clientconnection.ConnectionListener io.vertx.core.impl.EventLoopContext io.vertx.core.Promise int io.netty.bootstrap.Bootstrap io.vertx.core.net.ProxyOptions io.vertx.core.net.impl.ChannelProvider
      StackMap stack: io.vertx.core.net.impl.ChannelProvider io.vertx.core.net.SocketAddress io.vertx.core.net.SocketAddress
        11: aconst_null
      StackMap locals: io.vertx.core.http.impl.HttpChannelConnector io.vertx.core.net.impl.clientconnection.ConnectionListener io.vertx.core.impl.EventLoopContext io.vertx.core.Promise int io.netty.bootstrap.Bootstrap io.vertx.core.net.ProxyOptions io.vertx.core.net.impl.ChannelProvider
      StackMap stack: io.vertx.core.net.impl.ChannelProvider io.vertx.core.net.SocketAddress io.vertx.core.net.SocketAddress java.lang.String
        12: aload 0 /* this */
            getfield io.vertx.core.http.impl.HttpChannelConnector.sslHelper:Lio/vertx/core/net/impl/SSLHelper;
            ifnull 13
            iconst_1
            goto 14
      StackMap locals: io.vertx.core.http.impl.HttpChannelConnector io.vertx.core.net.impl.clientconnection.ConnectionListener io.vertx.core.impl.EventLoopContext io.vertx.core.Promise int io.netty.bootstrap.Bootstrap io.vertx.core.net.ProxyOptions io.vertx.core.net.impl.ChannelProvider
      StackMap stack: io.vertx.core.net.impl.ChannelProvider io.vertx.core.net.SocketAddress io.vertx.core.net.SocketAddress java.lang.String
        13: iconst_0
      StackMap locals: io.vertx.core.http.impl.HttpChannelConnector io.vertx.core.net.impl.clientconnection.ConnectionListener io.vertx.core.impl.EventLoopContext io.vertx.core.Promise int io.netty.bootstrap.Bootstrap io.vertx.core.net.ProxyOptions io.vertx.core.net.impl.ChannelProvider
      StackMap stack: io.vertx.core.net.impl.ChannelProvider io.vertx.core.net.SocketAddress io.vertx.core.net.SocketAddress java.lang.String int
        14: invokevirtual io.vertx.core.net.impl.ChannelProvider.connect:(Lio/vertx/core/net/SocketAddress;Lio/vertx/core/net/SocketAddress;Ljava/lang/String;Z)Lio/netty/util/concurrent/Future;
            astore 8 /* fut */
        start local 8 // io.netty.util.concurrent.Future fut
        15: .line 147
            aload 8 /* fut */
            aload 0 /* this */
            aload 7 /* channelProvider */
            aload 1 /* listener */
            aload 2 /* context */
            aload 3 /* future */
            invokedynamic operationComplete(Lio/vertx/core/http/impl/HttpChannelConnector;Lio/vertx/core/net/impl/ChannelProvider;Lio/vertx/core/net/impl/clientconnection/ConnectionListener;Lio/vertx/core/impl/EventLoopContext;Lio/vertx/core/Promise;)Lio/netty/util/concurrent/GenericFutureListener;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lio/netty/util/concurrent/Future;)V
                  io/vertx/core/http/impl/HttpChannelConnector.lambda$0(Lio/vertx/core/net/impl/ChannelProvider;Lio/vertx/core/net/impl/clientconnection/ConnectionListener;Lio/vertx/core/impl/EventLoopContext;Lio/vertx/core/Promise;Lio/netty/util/concurrent/Future;)V (7)
                  (Lio/netty/util/concurrent/Future;)V
            invokeinterface io.netty.util.concurrent.Future.addListener:(Lio/netty/util/concurrent/GenericFutureListener;)Lio/netty/util/concurrent/Future;
            pop
        16: .line 186
            return
        end local 8 // io.netty.util.concurrent.Future fut
        end local 7 // io.vertx.core.net.impl.ChannelProvider channelProvider
        end local 6 // io.vertx.core.net.ProxyOptions options
        end local 5 // io.netty.bootstrap.Bootstrap bootstrap
        end local 4 // boolean domainSocket
        end local 3 // io.vertx.core.Promise future
        end local 2 // io.vertx.core.impl.EventLoopContext context
        end local 1 // io.vertx.core.net.impl.clientconnection.ConnectionListener listener
        end local 0 // io.vertx.core.http.impl.HttpChannelConnector this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   17     0             this  Lio/vertx/core/http/impl/HttpChannelConnector;
            0   17     1         listener  Lio/vertx/core/net/impl/clientconnection/ConnectionListener<Lio/vertx/core/http/impl/HttpClientConnection;>;
            0   17     2          context  Lio/vertx/core/impl/EventLoopContext;
            0   17     3           future  Lio/vertx/core/Promise<Lio/vertx/core/net/impl/clientconnection/ConnectResult<Lio/vertx/core/http/impl/HttpClientConnection;>;>;
            3   17     4     domainSocket  Z
            4   17     5        bootstrap  Lio/netty/bootstrap/Bootstrap;
            7   17     6          options  Lio/vertx/core/net/ProxyOptions;
           10   17     7  channelProvider  Lio/vertx/core/net/impl/ChannelProvider;
           15   17     8              fut  Lio/netty/util/concurrent/Future<Lio/netty/channel/Channel;>;
    Signature: (Lio/vertx/core/net/impl/clientconnection/ConnectionListener<Lio/vertx/core/http/impl/HttpClientConnection;>;Lio/vertx/core/impl/EventLoopContext;Lio/vertx/core/Promise<Lio/vertx/core/net/impl/clientconnection/ConnectResult<Lio/vertx/core/http/impl/HttpClientConnection;>;>;)V
    MethodParameters:
          Name  Flags
      listener  
      context   
      future    

  private void applyConnectionOptions(boolean, io.netty.bootstrap.Bootstrap);
    descriptor: (ZLio/netty/bootstrap/Bootstrap;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // io.vertx.core.http.impl.HttpChannelConnector this
        start local 1 // boolean domainSocket
        start local 2 // io.netty.bootstrap.Bootstrap bootstrap
         0: .line 189
            aload 0 /* this */
            getfield io.vertx.core.http.impl.HttpChannelConnector.client:Lio/vertx/core/http/impl/HttpClientImpl;
            invokevirtual io.vertx.core.http.impl.HttpClientImpl.getVertx:()Lio/vertx/core/impl/VertxInternal;
            invokeinterface io.vertx.core.impl.VertxInternal.transport:()Lio/vertx/core/net/impl/transport/Transport;
            aload 0 /* this */
            getfield io.vertx.core.http.impl.HttpChannelConnector.options:Lio/vertx/core/http/HttpClientOptions;
            iload 1 /* domainSocket */
            aload 2 /* bootstrap */
            invokevirtual io.vertx.core.net.impl.transport.Transport.configure:(Lio/vertx/core/net/ClientOptionsBase;ZLio/netty/bootstrap/Bootstrap;)V
         1: .line 190
            return
        end local 2 // io.netty.bootstrap.Bootstrap bootstrap
        end local 1 // boolean domainSocket
        end local 0 // io.vertx.core.http.impl.HttpChannelConnector this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    2     0          this  Lio/vertx/core/http/impl/HttpChannelConnector;
            0    2     1  domainSocket  Z
            0    2     2     bootstrap  Lio/netty/bootstrap/Bootstrap;
    MethodParameters:
              Name  Flags
      domainSocket  
      bootstrap     

  private void applyHttp2ConnectionOptions(io.netty.channel.ChannelPipeline);
    descriptor: (Lio/netty/channel/ChannelPipeline;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=11, locals=2, args_size=2
        start local 0 // io.vertx.core.http.impl.HttpChannelConnector this
        start local 1 // io.netty.channel.ChannelPipeline pipeline
         0: .line 193
            aload 0 /* this */
            getfield io.vertx.core.http.impl.HttpChannelConnector.options:Lio/vertx/core/http/HttpClientOptions;
            invokevirtual io.vertx.core.http.HttpClientOptions.getIdleTimeout:()I
            ifle 2
         1: .line 194
            aload 1 /* pipeline */
            ldc "idle"
            new io.netty.handler.timeout.IdleStateHandler
            dup
            lconst_0
            lconst_0
            aload 0 /* this */
            getfield io.vertx.core.http.impl.HttpChannelConnector.options:Lio/vertx/core/http/HttpClientOptions;
            invokevirtual io.vertx.core.http.HttpClientOptions.getIdleTimeout:()I
            i2l
            aload 0 /* this */
            getfield io.vertx.core.http.impl.HttpChannelConnector.options:Lio/vertx/core/http/HttpClientOptions;
            invokevirtual io.vertx.core.http.HttpClientOptions.getIdleTimeoutUnit:()Ljava/util/concurrent/TimeUnit;
            invokespecial io.netty.handler.timeout.IdleStateHandler.<init>:(JJJLjava/util/concurrent/TimeUnit;)V
            invokeinterface io.netty.channel.ChannelPipeline.addLast:(Ljava/lang/String;Lio/netty/channel/ChannelHandler;)Lio/netty/channel/ChannelPipeline;
            pop
         2: .line 196
      StackMap locals:
      StackMap stack:
            return
        end local 1 // io.netty.channel.ChannelPipeline pipeline
        end local 0 // io.vertx.core.http.impl.HttpChannelConnector this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    3     0      this  Lio/vertx/core/http/impl/HttpChannelConnector;
            0    3     1  pipeline  Lio/netty/channel/ChannelPipeline;
    MethodParameters:
          Name  Flags
      pipeline  

  private void applyHttp1xConnectionOptions(io.netty.channel.ChannelPipeline);
    descriptor: (Lio/netty/channel/ChannelPipeline;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=11, locals=2, args_size=2
        start local 0 // io.vertx.core.http.impl.HttpChannelConnector this
        start local 1 // io.netty.channel.ChannelPipeline pipeline
         0: .line 199
            aload 0 /* this */
            getfield io.vertx.core.http.impl.HttpChannelConnector.options:Lio/vertx/core/http/HttpClientOptions;
            invokevirtual io.vertx.core.http.HttpClientOptions.getIdleTimeout:()I
            ifle 2
         1: .line 200
            aload 1 /* pipeline */
            ldc "idle"
            new io.netty.handler.timeout.IdleStateHandler
            dup
            lconst_0
            lconst_0
            aload 0 /* this */
            getfield io.vertx.core.http.impl.HttpChannelConnector.options:Lio/vertx/core/http/HttpClientOptions;
            invokevirtual io.vertx.core.http.HttpClientOptions.getIdleTimeout:()I
            i2l
            aload 0 /* this */
            getfield io.vertx.core.http.impl.HttpChannelConnector.options:Lio/vertx/core/http/HttpClientOptions;
            invokevirtual io.vertx.core.http.HttpClientOptions.getIdleTimeoutUnit:()Ljava/util/concurrent/TimeUnit;
            invokespecial io.netty.handler.timeout.IdleStateHandler.<init>:(JJJLjava/util/concurrent/TimeUnit;)V
            invokeinterface io.netty.channel.ChannelPipeline.addLast:(Ljava/lang/String;Lio/netty/channel/ChannelHandler;)Lio/netty/channel/ChannelPipeline;
            pop
         2: .line 202
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.vertx.core.http.impl.HttpChannelConnector.options:Lio/vertx/core/http/HttpClientOptions;
            invokevirtual io.vertx.core.http.HttpClientOptions.getLogActivity:()Z
            ifeq 4
         3: .line 203
            aload 1 /* pipeline */
            ldc "logging"
            new io.netty.handler.logging.LoggingHandler
            dup
            invokespecial io.netty.handler.logging.LoggingHandler.<init>:()V
            invokeinterface io.netty.channel.ChannelPipeline.addLast:(Ljava/lang/String;Lio/netty/channel/ChannelHandler;)Lio/netty/channel/ChannelPipeline;
            pop
         4: .line 205
      StackMap locals:
      StackMap stack:
            aload 1 /* pipeline */
            ldc "codec"
            new io.netty.handler.codec.http.HttpClientCodec
            dup
         5: .line 206
            aload 0 /* this */
            getfield io.vertx.core.http.impl.HttpChannelConnector.options:Lio/vertx/core/http/HttpClientOptions;
            invokevirtual io.vertx.core.http.HttpClientOptions.getMaxInitialLineLength:()I
         6: .line 207
            aload 0 /* this */
            getfield io.vertx.core.http.impl.HttpChannelConnector.options:Lio/vertx/core/http/HttpClientOptions;
            invokevirtual io.vertx.core.http.HttpClientOptions.getMaxHeaderSize:()I
         7: .line 208
            aload 0 /* this */
            getfield io.vertx.core.http.impl.HttpChannelConnector.options:Lio/vertx/core/http/HttpClientOptions;
            invokevirtual io.vertx.core.http.HttpClientOptions.getMaxChunkSize:()I
         8: .line 209
            iconst_0
         9: .line 210
            iconst_0
        10: .line 211
            aload 0 /* this */
            getfield io.vertx.core.http.impl.HttpChannelConnector.options:Lio/vertx/core/http/HttpClientOptions;
            invokevirtual io.vertx.core.http.HttpClientOptions.getDecoderInitialBufferSize:()I
            invokespecial io.netty.handler.codec.http.HttpClientCodec.<init>:(IIIZZI)V
        11: .line 205
            invokeinterface io.netty.channel.ChannelPipeline.addLast:(Ljava/lang/String;Lio/netty/channel/ChannelHandler;)Lio/netty/channel/ChannelPipeline;
            pop
        12: .line 212
            aload 0 /* this */
            getfield io.vertx.core.http.impl.HttpChannelConnector.options:Lio/vertx/core/http/HttpClientOptions;
            invokevirtual io.vertx.core.http.HttpClientOptions.isTryUseCompression:()Z
            ifeq 14
        13: .line 213
            aload 1 /* pipeline */
            ldc "inflater"
            new io.netty.handler.codec.http.HttpContentDecompressor
            dup
            iconst_0
            invokespecial io.netty.handler.codec.http.HttpContentDecompressor.<init>:(Z)V
            invokeinterface io.netty.channel.ChannelPipeline.addLast:(Ljava/lang/String;Lio/netty/channel/ChannelHandler;)Lio/netty/channel/ChannelPipeline;
            pop
        14: .line 215
      StackMap locals:
      StackMap stack:
            return
        end local 1 // io.netty.channel.ChannelPipeline pipeline
        end local 0 // io.vertx.core.http.impl.HttpChannelConnector this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   15     0      this  Lio/vertx/core/http/impl/HttpChannelConnector;
            0   15     1  pipeline  Lio/netty/channel/ChannelPipeline;
    MethodParameters:
          Name  Flags
      pipeline  

  private void http1xConnected(io.vertx.core.net.impl.clientconnection.ConnectionListener<io.vertx.core.http.impl.HttpClientConnection>, io.vertx.core.http.HttpVersion, io.vertx.core.net.SocketAddress, boolean, io.vertx.core.impl.ContextInternal, io.netty.channel.Channel, long, io.vertx.core.Promise<io.vertx.core.net.impl.clientconnection.ConnectResult<io.vertx.core.http.impl.HttpClientConnection>>);
    descriptor: (Lio/vertx/core/net/impl/clientconnection/ConnectionListener;Lio/vertx/core/http/HttpVersion;Lio/vertx/core/net/SocketAddress;ZLio/vertx/core/impl/ContextInternal;Lio/netty/channel/Channel;JLio/vertx/core/Promise;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=12, args_size=9
        start local 0 // io.vertx.core.http.impl.HttpChannelConnector this
        start local 1 // io.vertx.core.net.impl.clientconnection.ConnectionListener listener
        start local 2 // io.vertx.core.http.HttpVersion version
        start local 3 // io.vertx.core.net.SocketAddress server
        start local 4 // boolean ssl
        start local 5 // io.vertx.core.impl.ContextInternal context
        start local 6 // io.netty.channel.Channel ch
        start local 7 // long weight
        start local 9 // io.vertx.core.Promise future
         0: .line 224
            aload 2 /* version */
            getstatic io.vertx.core.http.HttpVersion.HTTP_2:Lio/vertx/core/http/HttpVersion;
            if_acmpne 1
            aload 0 /* this */
            getfield io.vertx.core.http.impl.HttpChannelConnector.options:Lio/vertx/core/http/HttpClientOptions;
            invokevirtual io.vertx.core.http.HttpClientOptions.isHttp2ClearTextUpgrade:()Z
            ifeq 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: istore 10 /* upgrade */
        start local 10 // boolean upgrade
         3: .line 225
            aload 0 /* this */
            aload 1 /* listener */
            iload 10 /* upgrade */
            aload 2 /* version */
            iload 4 /* ssl */
            aload 3 /* server */
            aload 5 /* context */
            invokedynamic apply(Lio/vertx/core/http/impl/HttpChannelConnector;Lio/vertx/core/net/impl/clientconnection/ConnectionListener;ZLio/vertx/core/http/HttpVersion;ZLio/vertx/core/net/SocketAddress;Lio/vertx/core/impl/ContextInternal;)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/core/http/impl/HttpChannelConnector.lambda$1(Lio/vertx/core/net/impl/clientconnection/ConnectionListener;ZLio/vertx/core/http/HttpVersion;ZLio/vertx/core/net/SocketAddress;Lio/vertx/core/impl/ContextInternal;Lio/netty/channel/ChannelHandlerContext;)Lio/vertx/core/http/impl/Http1xClientConnection; (7)
                  (Lio/netty/channel/ChannelHandlerContext;)Lio/vertx/core/http/impl/Http1xClientConnection;
            invokestatic io.vertx.core.net.impl.VertxHandler.create:(Ljava/util/function/Function;)Lio/vertx/core/net/impl/VertxHandler;
            astore 11 /* clientHandler */
        start local 11 // io.vertx.core.net.impl.VertxHandler clientHandler
         4: .line 235
            aload 11 /* clientHandler */
            aload 0 /* this */
            iload 10 /* upgrade */
            aload 9 /* future */
            invokedynamic handle(Lio/vertx/core/http/impl/HttpChannelConnector;ZLio/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/core/http/impl/HttpChannelConnector.lambda$2(ZLio/vertx/core/Promise;Lio/vertx/core/http/impl/Http1xClientConnection;)V (7)
                  (Lio/vertx/core/http/impl/Http1xClientConnection;)V
            invokevirtual io.vertx.core.net.impl.VertxHandler.addHandler:(Lio/vertx/core/Handler;)Lio/vertx/core/net/impl/VertxHandler;
            pop
         5: .line 242
            aload 11 /* clientHandler */
            aload 1 /* listener */
            invokedynamic handle(Lio/vertx/core/net/impl/clientconnection/ConnectionListener;)Lio/vertx/core/Handler;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)V
                  io/vertx/core/http/impl/HttpChannelConnector.lambda$3(Lio/vertx/core/net/impl/clientconnection/ConnectionListener;Lio/vertx/core/http/impl/Http1xClientConnection;)V (6)
                  (Lio/vertx/core/http/impl/Http1xClientConnection;)V
            invokevirtual io.vertx.core.net.impl.VertxHandler.removeHandler:(Lio/vertx/core/Handler;)Lio/vertx/core/net/impl/VertxHandler;
            pop
         6: .line 245
            aload 6 /* ch */
            invokeinterface io.netty.channel.Channel.pipeline:()Lio/netty/channel/ChannelPipeline;
            ldc "handler"
            aload 11 /* clientHandler */
            invokeinterface io.netty.channel.ChannelPipeline.addLast:(Ljava/lang/String;Lio/netty/channel/ChannelHandler;)Lio/netty/channel/ChannelPipeline;
            pop
         7: .line 246
            return
        end local 11 // io.vertx.core.net.impl.VertxHandler clientHandler
        end local 10 // boolean upgrade
        end local 9 // io.vertx.core.Promise future
        end local 7 // long weight
        end local 6 // io.netty.channel.Channel ch
        end local 5 // io.vertx.core.impl.ContextInternal context
        end local 4 // boolean ssl
        end local 3 // io.vertx.core.net.SocketAddress server
        end local 2 // io.vertx.core.http.HttpVersion version
        end local 1 // io.vertx.core.net.impl.clientconnection.ConnectionListener listener
        end local 0 // io.vertx.core.http.impl.HttpChannelConnector this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    8     0           this  Lio/vertx/core/http/impl/HttpChannelConnector;
            0    8     1       listener  Lio/vertx/core/net/impl/clientconnection/ConnectionListener<Lio/vertx/core/http/impl/HttpClientConnection;>;
            0    8     2        version  Lio/vertx/core/http/HttpVersion;
            0    8     3         server  Lio/vertx/core/net/SocketAddress;
            0    8     4            ssl  Z
            0    8     5        context  Lio/vertx/core/impl/ContextInternal;
            0    8     6             ch  Lio/netty/channel/Channel;
            0    8     7         weight  J
            0    8     9         future  Lio/vertx/core/Promise<Lio/vertx/core/net/impl/clientconnection/ConnectResult<Lio/vertx/core/http/impl/HttpClientConnection;>;>;
            3    8    10        upgrade  Z
            4    8    11  clientHandler  Lio/vertx/core/net/impl/VertxHandler<Lio/vertx/core/http/impl/Http1xClientConnection;>;
    Signature: (Lio/vertx/core/net/impl/clientconnection/ConnectionListener<Lio/vertx/core/http/impl/HttpClientConnection;>;Lio/vertx/core/http/HttpVersion;Lio/vertx/core/net/SocketAddress;ZLio/vertx/core/impl/ContextInternal;Lio/netty/channel/Channel;JLio/vertx/core/Promise<Lio/vertx/core/net/impl/clientconnection/ConnectResult<Lio/vertx/core/http/impl/HttpClientConnection;>;>;)V
    MethodParameters:
          Name  Flags
      listener  
      version   
      server    
      ssl       
      context   
      ch        
      weight    
      future    

  private void http2Connected(io.vertx.core.net.impl.clientconnection.ConnectionListener<io.vertx.core.http.impl.HttpClientConnection>, io.vertx.core.impl.EventLoopContext, io.netty.channel.Channel, io.vertx.core.Promise<io.vertx.core.net.impl.clientconnection.ConnectResult<io.vertx.core.http.impl.HttpClientConnection>>);
    descriptor: (Lio/vertx/core/net/impl/clientconnection/ConnectionListener;Lio/vertx/core/impl/EventLoopContext;Lio/netty/channel/Channel;Lio/vertx/core/Promise;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=6, args_size=5
        start local 0 // io.vertx.core.http.impl.HttpChannelConnector this
        start local 1 // io.vertx.core.net.impl.clientconnection.ConnectionListener listener
        start local 2 // io.vertx.core.impl.EventLoopContext context
        start local 3 // io.netty.channel.Channel ch
        start local 4 // io.vertx.core.Promise future
         0: .line 253
            aload 0 /* this */
            getfield io.vertx.core.http.impl.HttpChannelConnector.client:Lio/vertx/core/http/impl/HttpClientImpl;
            aload 0 /* this */
            getfield io.vertx.core.http.impl.HttpChannelConnector.metrics:Lio/vertx/core/spi/metrics/ClientMetrics;
            aload 1 /* listener */
            aload 2 /* context */
            aconst_null
            aload 0 /* this */
            aload 4 /* future */
            invokedynamic accept(Lio/vertx/core/http/impl/HttpChannelConnector;Lio/vertx/core/Promise;)Ljava/util/function/BiConsumer;
              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;)V
                  io/vertx/core/http/impl/HttpChannelConnector.lambda$4(Lio/vertx/core/Promise;Lio/vertx/core/http/impl/Http2ClientConnection;Ljava/lang/Long;)V (7)
                  (Lio/vertx/core/http/impl/Http2ClientConnection;Ljava/lang/Long;)V
            invokestatic io.vertx.core.http.impl.Http2ClientConnection.createHttp2ConnectionHandler:(Lio/vertx/core/http/impl/HttpClientImpl;Lio/vertx/core/spi/metrics/ClientMetrics;Lio/vertx/core/net/impl/clientconnection/ConnectionListener;Lio/vertx/core/impl/EventLoopContext;Ljava/lang/Object;Ljava/util/function/BiConsumer;)Lio/vertx/core/http/impl/VertxHttp2ConnectionHandler;
            astore 5 /* clientHandler */
        start local 5 // io.vertx.core.http.impl.VertxHttp2ConnectionHandler clientHandler
         1: .line 256
            aload 3 /* ch */
            invokeinterface io.netty.channel.Channel.pipeline:()Lio/netty/channel/ChannelPipeline;
            ldc "handler"
            aload 5 /* clientHandler */
            invokeinterface io.netty.channel.ChannelPipeline.addLast:(Ljava/lang/String;Lio/netty/channel/ChannelHandler;)Lio/netty/channel/ChannelPipeline;
            pop
         2: .line 257
            aload 3 /* ch */
            invokeinterface io.netty.channel.Channel.flush:()Lio/netty/channel/Channel;
            pop
        end local 5 // io.vertx.core.http.impl.VertxHttp2ConnectionHandler clientHandler
         3: .line 258
            goto 6
      StackMap locals:
      StackMap stack: java.lang.Exception
         4: astore 5 /* e */
        start local 5 // java.lang.Exception e
         5: .line 259
            aload 0 /* this */
            aload 3 /* ch */
            aload 1 /* listener */
            aload 5 /* e */
            aload 4 /* future */
            invokevirtual io.vertx.core.http.impl.HttpChannelConnector.connectFailed:(Lio/netty/channel/Channel;Lio/vertx/core/net/impl/clientconnection/ConnectionListener;Ljava/lang/Throwable;Lio/vertx/core/Promise;)V
        end local 5 // java.lang.Exception e
         6: .line 261
      StackMap locals:
      StackMap stack:
            return
        end local 4 // io.vertx.core.Promise future
        end local 3 // io.netty.channel.Channel ch
        end local 2 // io.vertx.core.impl.EventLoopContext context
        end local 1 // io.vertx.core.net.impl.clientconnection.ConnectionListener listener
        end local 0 // io.vertx.core.http.impl.HttpChannelConnector this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    7     0           this  Lio/vertx/core/http/impl/HttpChannelConnector;
            0    7     1       listener  Lio/vertx/core/net/impl/clientconnection/ConnectionListener<Lio/vertx/core/http/impl/HttpClientConnection;>;
            0    7     2        context  Lio/vertx/core/impl/EventLoopContext;
            0    7     3             ch  Lio/netty/channel/Channel;
            0    7     4         future  Lio/vertx/core/Promise<Lio/vertx/core/net/impl/clientconnection/ConnectResult<Lio/vertx/core/http/impl/HttpClientConnection;>;>;
            1    3     5  clientHandler  Lio/vertx/core/http/impl/VertxHttp2ConnectionHandler<Lio/vertx/core/http/impl/Http2ClientConnection;>;
            5    6     5              e  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
           0     3       4  Class java.lang.Exception
    Signature: (Lio/vertx/core/net/impl/clientconnection/ConnectionListener<Lio/vertx/core/http/impl/HttpClientConnection;>;Lio/vertx/core/impl/EventLoopContext;Lio/netty/channel/Channel;Lio/vertx/core/Promise<Lio/vertx/core/net/impl/clientconnection/ConnectResult<Lio/vertx/core/http/impl/HttpClientConnection;>;>;)V
    MethodParameters:
          Name  Flags
      listener  
      context   
      ch        
      future    

  private void connectFailed(io.netty.channel.Channel, io.vertx.core.net.impl.clientconnection.ConnectionListener<io.vertx.core.http.impl.HttpClientConnection>, java.lang.Throwable, io.vertx.core.Promise<io.vertx.core.net.impl.clientconnection.ConnectResult<io.vertx.core.http.impl.HttpClientConnection>>);
    descriptor: (Lio/netty/channel/Channel;Lio/vertx/core/net/impl/clientconnection/ConnectionListener;Ljava/lang/Throwable;Lio/vertx/core/Promise;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=5, args_size=5
        start local 0 // io.vertx.core.http.impl.HttpChannelConnector this
        start local 1 // io.netty.channel.Channel ch
        start local 2 // io.vertx.core.net.impl.clientconnection.ConnectionListener listener
        start local 3 // java.lang.Throwable t
        start local 4 // io.vertx.core.Promise future
         0: .line 264
            aload 1 /* ch */
            ifnull 4
         1: .line 266
            aload 1 /* ch */
            invokeinterface io.netty.channel.Channel.close:()Lio/netty/channel/ChannelFuture;
            pop
         2: .line 267
            goto 4
      StackMap locals:
      StackMap stack: java.lang.Exception
         3: pop
         4: .line 270
      StackMap locals:
      StackMap stack:
            aload 4 /* future */
            aload 3 /* t */
            invokeinterface io.vertx.core.Promise.tryFail:(Ljava/lang/Throwable;)Z
            pop
         5: .line 271
            return
        end local 4 // io.vertx.core.Promise future
        end local 3 // java.lang.Throwable t
        end local 2 // io.vertx.core.net.impl.clientconnection.ConnectionListener listener
        end local 1 // io.netty.channel.Channel ch
        end local 0 // io.vertx.core.http.impl.HttpChannelConnector this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    6     0      this  Lio/vertx/core/http/impl/HttpChannelConnector;
            0    6     1        ch  Lio/netty/channel/Channel;
            0    6     2  listener  Lio/vertx/core/net/impl/clientconnection/ConnectionListener<Lio/vertx/core/http/impl/HttpClientConnection;>;
            0    6     3         t  Ljava/lang/Throwable;
            0    6     4    future  Lio/vertx/core/Promise<Lio/vertx/core/net/impl/clientconnection/ConnectResult<Lio/vertx/core/http/impl/HttpClientConnection;>;>;
      Exception table:
        from    to  target  type
           1     2       3  Class java.lang.Exception
    Signature: (Lio/netty/channel/Channel;Lio/vertx/core/net/impl/clientconnection/ConnectionListener<Lio/vertx/core/http/impl/HttpClientConnection;>;Ljava/lang/Throwable;Lio/vertx/core/Promise<Lio/vertx/core/net/impl/clientconnection/ConnectResult<Lio/vertx/core/http/impl/HttpClientConnection;>;>;)V
    MethodParameters:
          Name  Flags
      ch        
      listener  
      t         
      future    

  public void init(java.lang.Object);
    descriptor: (Ljava/lang/Object;)V
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
         0: .line 1
            aload 0
            aload 1
            checkcast io.vertx.core.http.impl.HttpClientConnection
            invokevirtual io.vertx.core.http.impl.HttpChannelConnector.init:(Lio/vertx/core/http/impl/HttpClientConnection;)V
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void close(java.lang.Object);
    descriptor: (Ljava/lang/Object;)V
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
         0: .line 1
            aload 0
            aload 1
            checkcast io.vertx.core.http.impl.HttpClientConnection
            invokevirtual io.vertx.core.http.impl.HttpChannelConnector.close:(Lio/vertx/core/http/impl/HttpClientConnection;)V
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public boolean isValid(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
         0: .line 1
            aload 0
            aload 1
            checkcast io.vertx.core.http.impl.HttpClientConnection
            invokevirtual io.vertx.core.http.impl.HttpChannelConnector.isValid:(Lio/vertx/core/http/impl/HttpClientConnection;)Z
            ireturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private void lambda$0(io.vertx.core.net.impl.ChannelProvider, io.vertx.core.net.impl.clientconnection.ConnectionListener, io.vertx.core.impl.EventLoopContext, io.vertx.core.Promise, io.netty.util.concurrent.Future);
    descriptor: (Lio/vertx/core/net/impl/ChannelProvider;Lio/vertx/core/net/impl/clientconnection/ConnectionListener;Lio/vertx/core/impl/EventLoopContext;Lio/vertx/core/Promise;Lio/netty/util/concurrent/Future;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=10, locals=9, args_size=6
        start local 0 // io.vertx.core.http.impl.HttpChannelConnector this
        start local 5 // io.netty.util.concurrent.Future res
         0: .line 148
            aload 5 /* res */
            invokeinterface io.netty.util.concurrent.Future.isSuccess:()Z
            ifeq 32
         1: .line 149
            aload 5 /* res */
            invokeinterface io.netty.util.concurrent.Future.getNow:()Ljava/lang/Object;
            checkcast io.netty.channel.Channel
            astore 6 /* ch */
        start local 6 // io.netty.channel.Channel ch
         2: .line 150
            aload 0 /* this */
            getfield io.vertx.core.http.impl.HttpChannelConnector.channelGroup:Lio/netty/channel/group/ChannelGroup;
            aload 6 /* ch */
            invokeinterface io.netty.channel.group.ChannelGroup.add:(Ljava/lang/Object;)Z
            pop
         3: .line 151
            aload 0 /* this */
            getfield io.vertx.core.http.impl.HttpChannelConnector.sslHelper:Lio/vertx/core/net/impl/SSLHelper;
            ifnull 20
         4: .line 152
            aload 1
            invokevirtual io.vertx.core.net.impl.ChannelProvider.applicationProtocol:()Ljava/lang/String;
            astore 7 /* protocol */
        start local 7 // java.lang.String protocol
         5: .line 153
            aload 0 /* this */
            getfield io.vertx.core.http.impl.HttpChannelConnector.sslHelper:Lio/vertx/core/net/impl/SSLHelper;
            invokevirtual io.vertx.core.net.impl.SSLHelper.isUseAlpn:()Z
            ifeq 17
         6: .line 154
            ldc "h2"
            aload 7 /* protocol */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 10
         7: .line 155
            aload 0 /* this */
            aload 6 /* ch */
            invokeinterface io.netty.channel.Channel.pipeline:()Lio/netty/channel/ChannelPipeline;
            invokevirtual io.vertx.core.http.impl.HttpChannelConnector.applyHttp2ConnectionOptions:(Lio/netty/channel/ChannelPipeline;)V
         8: .line 156
            aload 0 /* this */
            aload 2
            aload 3
            aload 6 /* ch */
            aload 4
            invokevirtual io.vertx.core.http.impl.HttpChannelConnector.http2Connected:(Lio/vertx/core/net/impl/clientconnection/ConnectionListener;Lio/vertx/core/impl/EventLoopContext;Lio/netty/channel/Channel;Lio/vertx/core/Promise;)V
         9: .line 157
            goto 33
        10: .line 158
      StackMap locals: io.netty.channel.Channel java.lang.String
      StackMap stack:
            aload 0 /* this */
            aload 6 /* ch */
            invokeinterface io.netty.channel.Channel.pipeline:()Lio/netty/channel/ChannelPipeline;
            invokevirtual io.vertx.core.http.impl.HttpChannelConnector.applyHttp1xConnectionOptions:(Lio/netty/channel/ChannelPipeline;)V
        11: .line 159
            ldc "http/1.0"
            aload 7 /* protocol */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 13
        12: .line 160
            getstatic io.vertx.core.http.HttpVersion.HTTP_1_0:Lio/vertx/core/http/HttpVersion;
            goto 14
      StackMap locals:
      StackMap stack:
        13: getstatic io.vertx.core.http.HttpVersion.HTTP_1_1:Lio/vertx/core/http/HttpVersion;
        14: .line 159
      StackMap locals:
      StackMap stack: io.vertx.core.http.HttpVersion
            astore 8 /* fallbackProtocol */
        start local 8 // io.vertx.core.http.HttpVersion fallbackProtocol
        15: .line 161
            aload 0 /* this */
            aload 2
            aload 8 /* fallbackProtocol */
            aload 0 /* this */
            getfield io.vertx.core.http.impl.HttpChannelConnector.server:Lio/vertx/core/net/SocketAddress;
            iconst_1
            aload 3
            aload 6 /* ch */
            aload 0 /* this */
            getfield io.vertx.core.http.impl.HttpChannelConnector.http1Weight:J
            aload 4
            invokevirtual io.vertx.core.http.impl.HttpChannelConnector.http1xConnected:(Lio/vertx/core/net/impl/clientconnection/ConnectionListener;Lio/vertx/core/http/HttpVersion;Lio/vertx/core/net/SocketAddress;ZLio/vertx/core/impl/ContextInternal;Lio/netty/channel/Channel;JLio/vertx/core/Promise;)V
        end local 8 // io.vertx.core.http.HttpVersion fallbackProtocol
        16: .line 163
            goto 33
        17: .line 164
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 6 /* ch */
            invokeinterface io.netty.channel.Channel.pipeline:()Lio/netty/channel/ChannelPipeline;
            invokevirtual io.vertx.core.http.impl.HttpChannelConnector.applyHttp1xConnectionOptions:(Lio/netty/channel/ChannelPipeline;)V
        18: .line 165
            aload 0 /* this */
            aload 2
            aload 0 /* this */
            getfield io.vertx.core.http.impl.HttpChannelConnector.version:Lio/vertx/core/http/HttpVersion;
            aload 0 /* this */
            getfield io.vertx.core.http.impl.HttpChannelConnector.server:Lio/vertx/core/net/SocketAddress;
            iconst_1
            aload 3
            aload 6 /* ch */
            aload 0 /* this */
            getfield io.vertx.core.http.impl.HttpChannelConnector.http1Weight:J
            aload 4
            invokevirtual io.vertx.core.http.impl.HttpChannelConnector.http1xConnected:(Lio/vertx/core/net/impl/clientconnection/ConnectionListener;Lio/vertx/core/http/HttpVersion;Lio/vertx/core/net/SocketAddress;ZLio/vertx/core/impl/ContextInternal;Lio/netty/channel/Channel;JLio/vertx/core/Promise;)V
        end local 7 // java.lang.String protocol
        19: .line 167
            goto 33
        20: .line 168
      StackMap locals:
      StackMap stack:
            aload 6 /* ch */
            invokeinterface io.netty.channel.Channel.pipeline:()Lio/netty/channel/ChannelPipeline;
            astore 7 /* pipeline */
        start local 7 // io.netty.channel.ChannelPipeline pipeline
        21: .line 169
            aload 0 /* this */
            getfield io.vertx.core.http.impl.HttpChannelConnector.version:Lio/vertx/core/http/HttpVersion;
            getstatic io.vertx.core.http.HttpVersion.HTTP_2:Lio/vertx/core/http/HttpVersion;
            if_acmpne 29
        22: .line 170
            aload 0 /* this */
            getfield io.vertx.core.http.impl.HttpChannelConnector.options:Lio/vertx/core/http/HttpClientOptions;
            invokevirtual io.vertx.core.http.HttpClientOptions.isHttp2ClearTextUpgrade:()Z
            ifeq 26
        23: .line 171
            aload 0 /* this */
            aload 7 /* pipeline */
            invokevirtual io.vertx.core.http.impl.HttpChannelConnector.applyHttp1xConnectionOptions:(Lio/netty/channel/ChannelPipeline;)V
        24: .line 172
            aload 0 /* this */
            aload 2
            aload 0 /* this */
            getfield io.vertx.core.http.impl.HttpChannelConnector.version:Lio/vertx/core/http/HttpVersion;
            aload 0 /* this */
            getfield io.vertx.core.http.impl.HttpChannelConnector.server:Lio/vertx/core/net/SocketAddress;
            iconst_0
            aload 3
            aload 6 /* ch */
            aload 0 /* this */
            getfield io.vertx.core.http.impl.HttpChannelConnector.http2Weight:J
            aload 4
            invokevirtual io.vertx.core.http.impl.HttpChannelConnector.http1xConnected:(Lio/vertx/core/net/impl/clientconnection/ConnectionListener;Lio/vertx/core/http/HttpVersion;Lio/vertx/core/net/SocketAddress;ZLio/vertx/core/impl/ContextInternal;Lio/netty/channel/Channel;JLio/vertx/core/Promise;)V
        25: .line 173
            goto 33
        26: .line 174
      StackMap locals: io.netty.channel.ChannelPipeline
      StackMap stack:
            aload 0 /* this */
            aload 7 /* pipeline */
            invokevirtual io.vertx.core.http.impl.HttpChannelConnector.applyHttp2ConnectionOptions:(Lio/netty/channel/ChannelPipeline;)V
        27: .line 175
            aload 0 /* this */
            aload 2
            aload 3
            aload 6 /* ch */
            aload 4
            invokevirtual io.vertx.core.http.impl.HttpChannelConnector.http2Connected:(Lio/vertx/core/net/impl/clientconnection/ConnectionListener;Lio/vertx/core/impl/EventLoopContext;Lio/netty/channel/Channel;Lio/vertx/core/Promise;)V
        28: .line 177
            goto 33
        29: .line 178
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 7 /* pipeline */
            invokevirtual io.vertx.core.http.impl.HttpChannelConnector.applyHttp1xConnectionOptions:(Lio/netty/channel/ChannelPipeline;)V
        30: .line 179
            aload 0 /* this */
            aload 2
            aload 0 /* this */
            getfield io.vertx.core.http.impl.HttpChannelConnector.version:Lio/vertx/core/http/HttpVersion;
            aload 0 /* this */
            getfield io.vertx.core.http.impl.HttpChannelConnector.server:Lio/vertx/core/net/SocketAddress;
            iconst_0
            aload 3
            aload 6 /* ch */
            aload 0 /* this */
            getfield io.vertx.core.http.impl.HttpChannelConnector.http1Weight:J
            aload 4
            invokevirtual io.vertx.core.http.impl.HttpChannelConnector.http1xConnected:(Lio/vertx/core/net/impl/clientconnection/ConnectionListener;Lio/vertx/core/http/HttpVersion;Lio/vertx/core/net/SocketAddress;ZLio/vertx/core/impl/ContextInternal;Lio/netty/channel/Channel;JLio/vertx/core/Promise;)V
        end local 7 // io.netty.channel.ChannelPipeline pipeline
        end local 6 // io.netty.channel.Channel ch
        31: .line 182
            goto 33
        32: .line 183
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1
            invokevirtual io.vertx.core.net.impl.ChannelProvider.channel:()Lio/netty/channel/Channel;
            aload 2
            aload 5 /* res */
            invokeinterface io.netty.util.concurrent.Future.cause:()Ljava/lang/Throwable;
            aload 4
            invokevirtual io.vertx.core.http.impl.HttpChannelConnector.connectFailed:(Lio/netty/channel/Channel;Lio/vertx/core/net/impl/clientconnection/ConnectionListener;Ljava/lang/Throwable;Lio/vertx/core/Promise;)V
        33: .line 185
      StackMap locals:
      StackMap stack:
            return
        end local 5 // io.netty.util.concurrent.Future res
        end local 0 // io.vertx.core.http.impl.HttpChannelConnector this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   34     0              this  Lio/vertx/core/http/impl/HttpChannelConnector;
            0   34     5               res  Lio/netty/util/concurrent/Future<Lio/netty/channel/Channel;>;
            2   31     6                ch  Lio/netty/channel/Channel;
            5   19     7          protocol  Ljava/lang/String;
           15   16     8  fallbackProtocol  Lio/vertx/core/http/HttpVersion;
           21   31     7          pipeline  Lio/netty/channel/ChannelPipeline;
    Exceptions:
      throws java.lang.Exception

  private io.vertx.core.http.impl.Http1xClientConnection lambda$1(io.vertx.core.net.impl.clientconnection.ConnectionListener, boolean, io.vertx.core.http.HttpVersion, boolean, io.vertx.core.net.SocketAddress, io.vertx.core.impl.ContextInternal, io.netty.channel.ChannelHandlerContext);
    descriptor: (Lio/vertx/core/net/impl/clientconnection/ConnectionListener;ZLio/vertx/core/http/HttpVersion;ZLio/vertx/core/net/SocketAddress;Lio/vertx/core/impl/ContextInternal;Lio/netty/channel/ChannelHandlerContext;)Lio/vertx/core/http/impl/Http1xClientConnection;
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=10, locals=11, args_size=8
        start local 0 // io.vertx.core.http.impl.HttpChannelConnector this
        start local 7 // io.netty.channel.ChannelHandlerContext chctx
         0: .line 226
            aload 0 /* this */
            getfield io.vertx.core.http.impl.HttpChannelConnector.client:Lio/vertx/core/http/impl/HttpClientImpl;
            invokevirtual io.vertx.core.http.impl.HttpClientImpl.metrics:()Lio/vertx/core/spi/metrics/HttpClientMetrics;
            astore 8 /* met */
        start local 8 // io.vertx.core.spi.metrics.HttpClientMetrics met
         1: .line 227
            new io.vertx.core.http.impl.Http1xClientConnection
            dup
            aload 1
            iload 2
            ifeq 2
            getstatic io.vertx.core.http.HttpVersion.HTTP_1_1:Lio/vertx/core/http/HttpVersion;
            goto 3
      StackMap locals: io.vertx.core.http.impl.HttpChannelConnector io.vertx.core.net.impl.clientconnection.ConnectionListener int io.vertx.core.http.HttpVersion int io.vertx.core.net.SocketAddress io.vertx.core.impl.ContextInternal io.netty.channel.ChannelHandlerContext io.vertx.core.spi.metrics.HttpClientMetrics
      StackMap stack: new 1 new 1 io.vertx.core.net.impl.clientconnection.ConnectionListener
         2: aload 3
      StackMap locals: io.vertx.core.http.impl.HttpChannelConnector io.vertx.core.net.impl.clientconnection.ConnectionListener int io.vertx.core.http.HttpVersion int io.vertx.core.net.SocketAddress io.vertx.core.impl.ContextInternal io.netty.channel.ChannelHandlerContext io.vertx.core.spi.metrics.HttpClientMetrics
      StackMap stack: new 1 new 1 io.vertx.core.net.impl.clientconnection.ConnectionListener io.vertx.core.http.HttpVersion
         3: aload 0 /* this */
            getfield io.vertx.core.http.impl.HttpChannelConnector.client:Lio/vertx/core/http/impl/HttpClientImpl;
            aload 7 /* chctx */
            iload 4
            aload 5
            aload 6
            aload 0 /* this */
            getfield io.vertx.core.http.impl.HttpChannelConnector.metrics:Lio/vertx/core/spi/metrics/ClientMetrics;
            invokespecial io.vertx.core.http.impl.Http1xClientConnection.<init>:(Lio/vertx/core/net/impl/clientconnection/ConnectionListener;Lio/vertx/core/http/HttpVersion;Lio/vertx/core/http/impl/HttpClientImpl;Lio/netty/channel/ChannelHandlerContext;ZLio/vertx/core/net/SocketAddress;Lio/vertx/core/impl/ContextInternal;Lio/vertx/core/spi/metrics/ClientMetrics;)V
            astore 9 /* conn */
        start local 9 // io.vertx.core.http.impl.Http1xClientConnection conn
         4: .line 228
            aload 8 /* met */
            ifnull 8
         5: .line 229
            aload 8 /* met */
            aload 9 /* conn */
            invokevirtual io.vertx.core.http.impl.Http1xClientConnection.remoteAddress:()Lio/vertx/core/net/SocketAddress;
            aload 9 /* conn */
            invokevirtual io.vertx.core.http.impl.Http1xClientConnection.remoteName:()Ljava/lang/String;
            invokeinterface io.vertx.core.spi.metrics.HttpClientMetrics.connected:(Lio/vertx/core/net/SocketAddress;Ljava/lang/String;)Ljava/lang/Object;
            astore 10 /* socketMetric */
        start local 10 // java.lang.Object socketMetric
         6: .line 230
            aload 9 /* conn */
            aload 10 /* socketMetric */
            invokevirtual io.vertx.core.http.impl.Http1xClientConnection.metric:(Ljava/lang/Object;)V
         7: .line 231
            aload 8 /* met */
            aload 0 /* this */
            getfield io.vertx.core.http.impl.HttpChannelConnector.metrics:Lio/vertx/core/spi/metrics/ClientMetrics;
            invokeinterface io.vertx.core.spi.metrics.HttpClientMetrics.endpointConnected:(Lio/vertx/core/spi/metrics/ClientMetrics;)V
        end local 10 // java.lang.Object socketMetric
         8: .line 233
      StackMap locals: io.vertx.core.http.impl.Http1xClientConnection
      StackMap stack:
            aload 9 /* conn */
            areturn
        end local 9 // io.vertx.core.http.impl.Http1xClientConnection conn
        end local 8 // io.vertx.core.spi.metrics.HttpClientMetrics met
        end local 7 // io.netty.channel.ChannelHandlerContext chctx
        end local 0 // io.vertx.core.http.impl.HttpChannelConnector this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    9     0          this  Lio/vertx/core/http/impl/HttpChannelConnector;
            0    9     7         chctx  Lio/netty/channel/ChannelHandlerContext;
            1    9     8           met  Lio/vertx/core/spi/metrics/HttpClientMetrics;
            4    9     9          conn  Lio/vertx/core/http/impl/Http1xClientConnection;
            6    8    10  socketMetric  Ljava/lang/Object;

  private void lambda$2(boolean, io.vertx.core.Promise, io.vertx.core.http.impl.Http1xClientConnection);
    descriptor: (ZLio/vertx/core/Promise;Lio/vertx/core/http/impl/Http1xClientConnection;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=8, locals=4, args_size=4
        start local 0 // io.vertx.core.http.impl.HttpChannelConnector this
        start local 3 // io.vertx.core.http.impl.Http1xClientConnection conn
         0: .line 236
            iload 1
            ifeq 3
         1: .line 237
            aload 2
            new io.vertx.core.net.impl.clientconnection.ConnectResult
            dup
            new io.vertx.core.http.impl.Http2UpgradedClientConnection
            dup
            aload 0 /* this */
            getfield io.vertx.core.http.impl.HttpChannelConnector.client:Lio/vertx/core/http/impl/HttpClientImpl;
            aload 3 /* conn */
            invokespecial io.vertx.core.http.impl.Http2UpgradedClientConnection.<init>:(Lio/vertx/core/http/impl/HttpClientImpl;Lio/vertx/core/http/impl/Http1xClientConnection;)V
            lconst_1
            aload 0 /* this */
            getfield io.vertx.core.http.impl.HttpChannelConnector.http2Weight:J
            invokespecial io.vertx.core.net.impl.clientconnection.ConnectResult.<init>:(Ljava/lang/Object;JJ)V
            invokeinterface io.vertx.core.Promise.complete:(Ljava/lang/Object;)V
         2: .line 238
            goto 4
         3: .line 239
      StackMap locals:
      StackMap stack:
            aload 2
            new io.vertx.core.net.impl.clientconnection.ConnectResult
            dup
            aload 3 /* conn */
            aload 0 /* this */
            getfield io.vertx.core.http.impl.HttpChannelConnector.http1MaxConcurrency:J
            aload 0 /* this */
            getfield io.vertx.core.http.impl.HttpChannelConnector.http1Weight:J
            invokespecial io.vertx.core.net.impl.clientconnection.ConnectResult.<init>:(Ljava/lang/Object;JJ)V
            invokeinterface io.vertx.core.Promise.complete:(Ljava/lang/Object;)V
         4: .line 241
      StackMap locals:
      StackMap stack:
            return
        end local 3 // io.vertx.core.http.impl.Http1xClientConnection conn
        end local 0 // io.vertx.core.http.impl.HttpChannelConnector this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lio/vertx/core/http/impl/HttpChannelConnector;
            0    5     3  conn  Lio/vertx/core/http/impl/Http1xClientConnection;

  private static void lambda$3(io.vertx.core.net.impl.clientconnection.ConnectionListener, io.vertx.core.http.impl.Http1xClientConnection);
    descriptor: (Lio/vertx/core/net/impl/clientconnection/ConnectionListener;Lio/vertx/core/http/impl/Http1xClientConnection;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=1, locals=2, args_size=2
        start local 1 // io.vertx.core.http.impl.Http1xClientConnection conn
         0: .line 243
            aload 0
            invokeinterface io.vertx.core.net.impl.clientconnection.ConnectionListener.onEvict:()V
         1: .line 244
            return
        end local 1 // io.vertx.core.http.impl.Http1xClientConnection conn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     1  conn  Lio/vertx/core/http/impl/Http1xClientConnection;

  private void lambda$4(io.vertx.core.Promise, io.vertx.core.http.impl.Http2ClientConnection, java.lang.Long);
    descriptor: (Lio/vertx/core/Promise;Lio/vertx/core/http/impl/Http2ClientConnection;Ljava/lang/Long;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=8, locals=4, args_size=4
        start local 0 // io.vertx.core.http.impl.HttpChannelConnector this
        start local 2 // io.vertx.core.http.impl.Http2ClientConnection conn
        start local 3 // java.lang.Long concurrency
         0: .line 254
            aload 1
            new io.vertx.core.net.impl.clientconnection.ConnectResult
            dup
            aload 2 /* conn */
            aload 3 /* concurrency */
            invokevirtual java.lang.Long.longValue:()J
            aload 0 /* this */
            getfield io.vertx.core.http.impl.HttpChannelConnector.http2Weight:J
            invokespecial io.vertx.core.net.impl.clientconnection.ConnectResult.<init>:(Ljava/lang/Object;JJ)V
            invokeinterface io.vertx.core.Promise.complete:(Ljava/lang/Object;)V
         1: .line 255
            return
        end local 3 // java.lang.Long concurrency
        end local 2 // io.vertx.core.http.impl.Http2ClientConnection conn
        end local 0 // io.vertx.core.http.impl.HttpChannelConnector this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    2     0         this  Lio/vertx/core/http/impl/HttpChannelConnector;
            0    2     2         conn  Lio/vertx/core/http/impl/Http2ClientConnection;
            0    2     3  concurrency  Ljava/lang/Long;
}
Signature: Ljava/lang/Object;Lio/vertx/core/net/impl/clientconnection/ConnectionProvider<Lio/vertx/core/http/impl/HttpClientConnection;>;
SourceFile: "HttpChannelConnector.java"
InnerClasses:
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles