public abstract class org.apache.cassandra.transport.Server$AbstractSecureIntializer extends org.apache.cassandra.transport.Server$Initializer
  minor version: 0
  major version: 59
  flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
  this_class: org.apache.cassandra.transport.Server$AbstractSecureIntializer
  super_class: org.apache.cassandra.transport.Server$Initializer
{
  private final javax.net.ssl.SSLContext sslContext;
    descriptor: Ljavax/net/ssl/SSLContext;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

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

  protected void <init>(org.apache.cassandra.transport.Server, org.apache.cassandra.config.EncryptionOptions);
    descriptor: (Lorg/apache/cassandra/transport/Server;Lorg/apache/cassandra/config/EncryptionOptions;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // org.apache.cassandra.transport.Server$AbstractSecureIntializer this
        start local 1 // org.apache.cassandra.transport.Server server
        start local 2 // org.apache.cassandra.config.EncryptionOptions encryptionOptions
         0: .line 399
            aload 0 /* this */
            aload 1 /* server */
            invokespecial org.apache.cassandra.transport.Server$Initializer.<init>:(Lorg/apache/cassandra/transport/Server;)V
         1: .line 400
            aload 0 /* this */
            aload 2 /* encryptionOptions */
            putfield org.apache.cassandra.transport.Server$AbstractSecureIntializer.encryptionOptions:Lorg/apache/cassandra/config/EncryptionOptions;
         2: .line 403
            aload 0 /* this */
            aload 2 /* encryptionOptions */
            aload 2 /* encryptionOptions */
            getfield org.apache.cassandra.config.EncryptionOptions.require_client_auth:Z
            invokestatic org.apache.cassandra.security.SSLFactory.createSSLContext:(Lorg/apache/cassandra/config/EncryptionOptions;Z)Ljavax/net/ssl/SSLContext;
            putfield org.apache.cassandra.transport.Server$AbstractSecureIntializer.sslContext:Ljavax/net/ssl/SSLContext;
         3: .line 404
            goto 6
         4: .line 405
      StackMap locals: org.apache.cassandra.transport.Server$AbstractSecureIntializer org.apache.cassandra.transport.Server org.apache.cassandra.config.EncryptionOptions
      StackMap stack: java.io.IOException
            astore 3 /* e */
        start local 3 // java.io.IOException e
         5: .line 407
            new java.lang.RuntimeException
            dup
            ldc "Failed to setup secure pipeline"
            aload 3 /* e */
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
        end local 3 // java.io.IOException e
         6: .line 409
      StackMap locals:
      StackMap stack:
            return
        end local 2 // org.apache.cassandra.config.EncryptionOptions encryptionOptions
        end local 1 // org.apache.cassandra.transport.Server server
        end local 0 // org.apache.cassandra.transport.Server$AbstractSecureIntializer this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    7     0               this  Lorg/apache/cassandra/transport/Server$AbstractSecureIntializer;
            0    7     1             server  Lorg/apache/cassandra/transport/Server;
            0    7     2  encryptionOptions  Lorg/apache/cassandra/config/EncryptionOptions;
            5    6     3                  e  Ljava/io/IOException;
      Exception table:
        from    to  target  type
           2     3       4  Class java.io.IOException
    MethodParameters:
                   Name  Flags
      server             
      encryptionOptions  

  protected final io.netty.handler.ssl.SslHandler createSslHandler();
    descriptor: ()Lio/netty/handler/ssl/SslHandler;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Code:
      stack=3, locals=3, args_size=1
        start local 0 // org.apache.cassandra.transport.Server$AbstractSecureIntializer this
         0: .line 413
            aload 0 /* this */
            getfield org.apache.cassandra.transport.Server$AbstractSecureIntializer.sslContext:Ljavax/net/ssl/SSLContext;
            invokevirtual javax.net.ssl.SSLContext.createSSLEngine:()Ljavax/net/ssl/SSLEngine;
            astore 1 /* sslEngine */
        start local 1 // javax.net.ssl.SSLEngine sslEngine
         1: .line 414
            aload 1 /* sslEngine */
            iconst_0
            invokevirtual javax.net.ssl.SSLEngine.setUseClientMode:(Z)V
         2: .line 415
            aload 1 /* sslEngine */
            invokevirtual javax.net.ssl.SSLEngine.getSupportedCipherSuites:()[Ljava/lang/String;
            aload 0 /* this */
            getfield org.apache.cassandra.transport.Server$AbstractSecureIntializer.encryptionOptions:Lorg/apache/cassandra/config/EncryptionOptions;
            getfield org.apache.cassandra.config.EncryptionOptions.cipher_suites:[Ljava/lang/String;
            invokestatic org.apache.cassandra.security.SSLFactory.filterCipherSuites:([Ljava/lang/String;[Ljava/lang/String;)[Ljava/lang/String;
            astore 2 /* suites */
        start local 2 // java.lang.String[] suites
         3: .line 416
            aload 1 /* sslEngine */
            aload 2 /* suites */
            invokevirtual javax.net.ssl.SSLEngine.setEnabledCipherSuites:([Ljava/lang/String;)V
         4: .line 417
            aload 1 /* sslEngine */
            aload 0 /* this */
            getfield org.apache.cassandra.transport.Server$AbstractSecureIntializer.encryptionOptions:Lorg/apache/cassandra/config/EncryptionOptions;
            getfield org.apache.cassandra.config.EncryptionOptions.require_client_auth:Z
            invokevirtual javax.net.ssl.SSLEngine.setNeedClientAuth:(Z)V
         5: .line 418
            new io.netty.handler.ssl.SslHandler
            dup
            aload 1 /* sslEngine */
            invokespecial io.netty.handler.ssl.SslHandler.<init>:(Ljavax/net/ssl/SSLEngine;)V
            areturn
        end local 2 // java.lang.String[] suites
        end local 1 // javax.net.ssl.SSLEngine sslEngine
        end local 0 // org.apache.cassandra.transport.Server$AbstractSecureIntializer this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    6     0       this  Lorg/apache/cassandra/transport/Server$AbstractSecureIntializer;
            1    6     1  sslEngine  Ljavax/net/ssl/SSLEngine;
            3    6     2     suites  [Ljava/lang/String;
}
SourceFile: "Server.java"
NestHost: org.apache.cassandra.transport.Server
InnerClasses:
  protected abstract AbstractSecureIntializer = org.apache.cassandra.transport.Server$AbstractSecureIntializer of org.apache.cassandra.transport.Server
  private Initializer = org.apache.cassandra.transport.Server$Initializer of org.apache.cassandra.transport.Server