public class org.apache.cassandra.tools.BulkLoadConnectionFactory implements org.apache.cassandra.streaming.StreamConnectionFactory
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.apache.cassandra.tools.BulkLoadConnectionFactory
  super_class: java.lang.Object
{
  private final boolean outboundBindAny;
    descriptor: Z
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

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

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

  private final org.apache.cassandra.config.EncryptionOptions$ServerEncryptionOptions encryptionOptions;
    descriptor: Lorg/apache/cassandra/config/EncryptionOptions$ServerEncryptionOptions;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  public void <init>(int, int, org.apache.cassandra.config.EncryptionOptions$ServerEncryptionOptions, boolean);
    descriptor: (IILorg/apache/cassandra/config/EncryptionOptions$ServerEncryptionOptions;Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=5, args_size=5
        start local 0 // org.apache.cassandra.tools.BulkLoadConnectionFactory this
        start local 1 // int storagePort
        start local 2 // int secureStoragePort
        start local 3 // org.apache.cassandra.config.EncryptionOptions$ServerEncryptionOptions encryptionOptions
        start local 4 // boolean outboundBindAny
         0: .line 38
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 40
            aload 0 /* this */
            iload 1 /* storagePort */
            putfield org.apache.cassandra.tools.BulkLoadConnectionFactory.storagePort:I
         2: .line 41
            aload 0 /* this */
            iload 2 /* secureStoragePort */
            putfield org.apache.cassandra.tools.BulkLoadConnectionFactory.secureStoragePort:I
         3: .line 42
            aload 0 /* this */
            aload 3 /* encryptionOptions */
            putfield org.apache.cassandra.tools.BulkLoadConnectionFactory.encryptionOptions:Lorg/apache/cassandra/config/EncryptionOptions$ServerEncryptionOptions;
         4: .line 43
            aload 0 /* this */
            iload 4 /* outboundBindAny */
            putfield org.apache.cassandra.tools.BulkLoadConnectionFactory.outboundBindAny:Z
         5: .line 44
            return
        end local 4 // boolean outboundBindAny
        end local 3 // org.apache.cassandra.config.EncryptionOptions$ServerEncryptionOptions encryptionOptions
        end local 2 // int secureStoragePort
        end local 1 // int storagePort
        end local 0 // org.apache.cassandra.tools.BulkLoadConnectionFactory this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    6     0               this  Lorg/apache/cassandra/tools/BulkLoadConnectionFactory;
            0    6     1        storagePort  I
            0    6     2  secureStoragePort  I
            0    6     3  encryptionOptions  Lorg/apache/cassandra/config/EncryptionOptions$ServerEncryptionOptions;
            0    6     4    outboundBindAny  Z
    MethodParameters:
                   Name  Flags
      storagePort        
      secureStoragePort  
      encryptionOptions  
      outboundBindAny    

  public java.net.Socket createConnection(java.net.InetAddress);
    descriptor: (Ljava/net/InetAddress;)Ljava/net/Socket;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // org.apache.cassandra.tools.BulkLoadConnectionFactory this
        start local 1 // java.net.InetAddress peer
         0: .line 51
            aload 0 /* this */
            getfield org.apache.cassandra.tools.BulkLoadConnectionFactory.encryptionOptions:Lorg/apache/cassandra/config/EncryptionOptions$ServerEncryptionOptions;
            ifnull 4
            aload 0 /* this */
            getfield org.apache.cassandra.tools.BulkLoadConnectionFactory.encryptionOptions:Lorg/apache/cassandra/config/EncryptionOptions$ServerEncryptionOptions;
            getfield org.apache.cassandra.config.EncryptionOptions$ServerEncryptionOptions.internode_encryption:Lorg/apache/cassandra/config/EncryptionOptions$ServerEncryptionOptions$InternodeEncryption;
            getstatic org.apache.cassandra.config.EncryptionOptions$ServerEncryptionOptions$InternodeEncryption.none:Lorg/apache/cassandra/config/EncryptionOptions$ServerEncryptionOptions$InternodeEncryption;
            if_acmpeq 4
         1: .line 53
            aload 0 /* this */
            getfield org.apache.cassandra.tools.BulkLoadConnectionFactory.outboundBindAny:Z
            ifeq 3
         2: .line 54
            aload 0 /* this */
            getfield org.apache.cassandra.tools.BulkLoadConnectionFactory.encryptionOptions:Lorg/apache/cassandra/config/EncryptionOptions$ServerEncryptionOptions;
            aload 1 /* peer */
            aload 0 /* this */
            getfield org.apache.cassandra.tools.BulkLoadConnectionFactory.secureStoragePort:I
            invokestatic org.apache.cassandra.security.SSLFactory.getSocket:(Lorg/apache/cassandra/config/EncryptionOptions;Ljava/net/InetAddress;I)Ljavax/net/ssl/SSLSocket;
            areturn
         3: .line 56
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.cassandra.tools.BulkLoadConnectionFactory.encryptionOptions:Lorg/apache/cassandra/config/EncryptionOptions$ServerEncryptionOptions;
            aload 1 /* peer */
            aload 0 /* this */
            getfield org.apache.cassandra.tools.BulkLoadConnectionFactory.secureStoragePort:I
            invokestatic org.apache.cassandra.utils.FBUtilities.getLocalAddress:()Ljava/net/InetAddress;
            iconst_0
            invokestatic org.apache.cassandra.security.SSLFactory.getSocket:(Lorg/apache/cassandra/config/EncryptionOptions;Ljava/net/InetAddress;ILjava/net/InetAddress;I)Ljavax/net/ssl/SSLSocket;
            areturn
         4: .line 60
      StackMap locals:
      StackMap stack:
            new java.net.InetSocketAddress
            dup
            aload 1 /* peer */
            aload 0 /* this */
            getfield org.apache.cassandra.tools.BulkLoadConnectionFactory.storagePort:I
            invokespecial java.net.InetSocketAddress.<init>:(Ljava/net/InetAddress;I)V
            invokestatic java.nio.channels.SocketChannel.open:(Ljava/net/SocketAddress;)Ljava/nio/channels/SocketChannel;
            invokevirtual java.nio.channels.SocketChannel.socket:()Ljava/net/Socket;
            astore 2 /* socket */
        start local 2 // java.net.Socket socket
         5: .line 61
            aload 0 /* this */
            getfield org.apache.cassandra.tools.BulkLoadConnectionFactory.outboundBindAny:Z
            ifeq 7
            aload 2 /* socket */
            invokevirtual java.net.Socket.isBound:()Z
            ifne 7
         6: .line 62
            aload 2 /* socket */
            new java.net.InetSocketAddress
            dup
            invokestatic org.apache.cassandra.utils.FBUtilities.getLocalAddress:()Ljava/net/InetAddress;
            iconst_0
            invokespecial java.net.InetSocketAddress.<init>:(Ljava/net/InetAddress;I)V
            invokevirtual java.net.Socket.bind:(Ljava/net/SocketAddress;)V
         7: .line 63
      StackMap locals: java.net.Socket
      StackMap stack:
            aload 2 /* socket */
            areturn
        end local 2 // java.net.Socket socket
        end local 1 // java.net.InetAddress peer
        end local 0 // org.apache.cassandra.tools.BulkLoadConnectionFactory this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    8     0    this  Lorg/apache/cassandra/tools/BulkLoadConnectionFactory;
            0    8     1    peer  Ljava/net/InetAddress;
            5    8     2  socket  Ljava/net/Socket;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      peer  
}
SourceFile: "BulkLoadConnectionFactory.java"
InnerClasses:
  public ServerEncryptionOptions = org.apache.cassandra.config.EncryptionOptions$ServerEncryptionOptions of org.apache.cassandra.config.EncryptionOptions
  public final InternodeEncryption = org.apache.cassandra.config.EncryptionOptions$ServerEncryptionOptions$InternodeEncryption of org.apache.cassandra.config.EncryptionOptions$ServerEncryptionOptions