final class com.sun.net.ssl.KeyManagerFactorySpiWrapper extends com.sun.net.ssl.KeyManagerFactorySpi
  minor version: 0
  major version: 59
  flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
  this_class: com.sun.net.ssl.KeyManagerFactorySpiWrapper
  super_class: com.sun.net.ssl.KeyManagerFactorySpi
{
  private javax.net.ssl.KeyManagerFactory theKeyManagerFactory;
    descriptor: Ljavax/net/ssl/KeyManagerFactory;
    flags: (0x0002) ACC_PRIVATE

  void <init>(java.lang.String, java.security.Provider);
    descriptor: (Ljava/lang/String;Ljava/security/Provider;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.sun.net.ssl.KeyManagerFactorySpiWrapper this
        start local 1 // java.lang.String algName
        start local 2 // java.security.Provider prov
         0: .line 449
            aload 0 /* this */
            invokespecial com.sun.net.ssl.KeyManagerFactorySpi.<init>:()V
         1: .line 451
            aload 0 /* this */
         2: .line 452
            aload 1 /* algName */
            aload 2 /* prov */
            invokestatic javax.net.ssl.KeyManagerFactory.getInstance:(Ljava/lang/String;Ljava/security/Provider;)Ljavax/net/ssl/KeyManagerFactory;
         3: .line 451
            putfield com.sun.net.ssl.KeyManagerFactorySpiWrapper.theKeyManagerFactory:Ljavax/net/ssl/KeyManagerFactory;
         4: .line 453
            return
        end local 2 // java.security.Provider prov
        end local 1 // java.lang.String algName
        end local 0 // com.sun.net.ssl.KeyManagerFactorySpiWrapper this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0     this  Lcom/sun/net/ssl/KeyManagerFactorySpiWrapper;
            0    5     1  algName  Ljava/lang/String;
            0    5     2     prov  Ljava/security/Provider;
    Exceptions:
      throws java.security.NoSuchAlgorithmException
    MethodParameters:
         Name  Flags
      algName  
      prov     

  protected void engineInit(java.security.KeyStore, char[]);
    descriptor: (Ljava/security/KeyStore;[C)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.sun.net.ssl.KeyManagerFactorySpiWrapper this
        start local 1 // java.security.KeyStore ks
        start local 2 // char[] password
         0: .line 458
            aload 0 /* this */
            getfield com.sun.net.ssl.KeyManagerFactorySpiWrapper.theKeyManagerFactory:Ljavax/net/ssl/KeyManagerFactory;
            aload 1 /* ks */
            aload 2 /* password */
            invokevirtual javax.net.ssl.KeyManagerFactory.init:(Ljava/security/KeyStore;[C)V
         1: .line 459
            return
        end local 2 // char[] password
        end local 1 // java.security.KeyStore ks
        end local 0 // com.sun.net.ssl.KeyManagerFactorySpiWrapper this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lcom/sun/net/ssl/KeyManagerFactorySpiWrapper;
            0    2     1        ks  Ljava/security/KeyStore;
            0    2     2  password  [C
    Exceptions:
      throws java.security.KeyStoreException, java.security.NoSuchAlgorithmException, java.security.UnrecoverableKeyException
    MethodParameters:
          Name  Flags
      ks        
      password  

  protected com.sun.net.ssl.KeyManager[] engineGetKeyManagers();
    descriptor: ()[Lcom/sun/net/ssl/KeyManager;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=6, locals=5, args_size=1
        start local 0 // com.sun.net.ssl.KeyManagerFactorySpiWrapper this
         0: .line 467
            aload 0 /* this */
            getfield com.sun.net.ssl.KeyManagerFactorySpiWrapper.theKeyManagerFactory:Ljavax/net/ssl/KeyManagerFactory;
            invokevirtual javax.net.ssl.KeyManagerFactory.getKeyManagers:()[Ljavax/net/ssl/KeyManager;
         1: .line 466
            astore 3 /* kma */
        start local 3 // javax.net.ssl.KeyManager[] kma
         2: .line 469
            aload 3 /* kma */
            arraylength
            anewarray com.sun.net.ssl.KeyManager
            astore 4 /* kmaw */
        start local 4 // com.sun.net.ssl.KeyManager[] kmaw
         3: .line 471
            iconst_0
            istore 2 /* src */
        start local 2 // int src
         4: iconst_0
            istore 1 /* dst */
        start local 1 // int dst
         5: goto 18
         6: .line 472
      StackMap locals: com.sun.net.ssl.KeyManagerFactorySpiWrapper int int javax.net.ssl.KeyManager[] com.sun.net.ssl.KeyManager[]
      StackMap stack:
            aload 3 /* kma */
            iload 2 /* src */
            aaload
            instanceof com.sun.net.ssl.KeyManager
            ifne 15
         7: .line 475
            aload 3 /* kma */
            iload 2 /* src */
            aaload
            instanceof javax.net.ssl.X509KeyManager
            ifeq 17
         8: .line 476
            aload 4 /* kmaw */
            iload 1 /* dst */
         9: .line 477
            new com.sun.net.ssl.X509KeyManagerComSunWrapper
            dup
        10: .line 478
            aload 3 /* kma */
            iload 2 /* src */
            aaload
            checkcast javax.net.ssl.X509KeyManager
        11: .line 477
            invokespecial com.sun.net.ssl.X509KeyManagerComSunWrapper.<init>:(Ljavax/net/ssl/X509KeyManager;)V
        12: .line 476
            aastore
        13: .line 479
            iinc 1 /* dst */ 1
        14: .line 481
            goto 17
        15: .line 482
      StackMap locals:
      StackMap stack:
            aload 4 /* kmaw */
            iload 1 /* dst */
            aload 3 /* kma */
            iload 2 /* src */
            aaload
            checkcast com.sun.net.ssl.KeyManager
            aastore
        16: .line 483
            iinc 1 /* dst */ 1
        17: .line 485
      StackMap locals:
      StackMap stack:
            iinc 2 /* src */ 1
        18: .line 471
      StackMap locals:
      StackMap stack:
            iload 2 /* src */
            aload 3 /* kma */
            arraylength
            if_icmplt 6
        19: .line 488
            iload 1 /* dst */
            iload 2 /* src */
            if_icmpeq 22
        20: .line 490
            aload 4 /* kmaw */
            iload 1 /* dst */
            anewarray com.sun.net.ssl.KeyManager
            invokestatic com.sun.net.ssl.SSLSecurity.truncateArray:([Ljava/lang/Object;[Ljava/lang/Object;)[Ljava/lang/Object;
        21: .line 489
            checkcast com.sun.net.ssl.KeyManager[]
            astore 4 /* kmaw */
        22: .line 493
      StackMap locals:
      StackMap stack:
            aload 4 /* kmaw */
            areturn
        end local 4 // com.sun.net.ssl.KeyManager[] kmaw
        end local 3 // javax.net.ssl.KeyManager[] kma
        end local 2 // int src
        end local 1 // int dst
        end local 0 // com.sun.net.ssl.KeyManagerFactorySpiWrapper this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   23     0  this  Lcom/sun/net/ssl/KeyManagerFactorySpiWrapper;
            5   23     1   dst  I
            4   23     2   src  I
            2   23     3   kma  [Ljavax/net/ssl/KeyManager;
            3   23     4  kmaw  [Lcom/sun/net/ssl/KeyManager;
}
SourceFile: "SSLSecurity.java"