public class java.security.cert.CertStore
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: java.security.cert.CertStore
  super_class: java.lang.Object
{
  private static final java.lang.String CERTSTORE_TYPE;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "certstore.type"

  private java.security.cert.CertStoreSpi storeSpi;
    descriptor: Ljava/security/cert/CertStoreSpi;
    flags: (0x0002) ACC_PRIVATE

  private java.security.Provider provider;
    descriptor: Ljava/security/Provider;
    flags: (0x0002) ACC_PRIVATE

  private java.lang.String type;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

  private java.security.cert.CertStoreParameters params;
    descriptor: Ljava/security/cert/CertStoreParameters;
    flags: (0x0002) ACC_PRIVATE

  protected void <init>(java.security.cert.CertStoreSpi, java.security.Provider, java.lang.String, java.security.cert.CertStoreParameters);
    descriptor: (Ljava/security/cert/CertStoreSpi;Ljava/security/Provider;Ljava/lang/String;Ljava/security/cert/CertStoreParameters;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=5, args_size=5
        start local 0 // java.security.cert.CertStore this
        start local 1 // java.security.cert.CertStoreSpi storeSpi
        start local 2 // java.security.Provider provider
        start local 3 // java.lang.String type
        start local 4 // java.security.cert.CertStoreParameters params
         0: .line 116
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 118
            aload 0 /* this */
            aload 1 /* storeSpi */
            putfield java.security.cert.CertStore.storeSpi:Ljava/security/cert/CertStoreSpi;
         2: .line 119
            aload 0 /* this */
            aload 2 /* provider */
            putfield java.security.cert.CertStore.provider:Ljava/security/Provider;
         3: .line 120
            aload 0 /* this */
            aload 3 /* type */
            putfield java.security.cert.CertStore.type:Ljava/lang/String;
         4: .line 121
            aload 4 /* params */
            ifnull 6
         5: .line 122
            aload 0 /* this */
            aload 4 /* params */
            invokeinterface java.security.cert.CertStoreParameters.clone:()Ljava/lang/Object;
            checkcast java.security.cert.CertStoreParameters
            putfield java.security.cert.CertStore.params:Ljava/security/cert/CertStoreParameters;
         6: .line 123
      StackMap locals: java.security.cert.CertStore java.security.cert.CertStoreSpi java.security.Provider java.lang.String java.security.cert.CertStoreParameters
      StackMap stack:
            return
        end local 4 // java.security.cert.CertStoreParameters params
        end local 3 // java.lang.String type
        end local 2 // java.security.Provider provider
        end local 1 // java.security.cert.CertStoreSpi storeSpi
        end local 0 // java.security.cert.CertStore this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    7     0      this  Ljava/security/cert/CertStore;
            0    7     1  storeSpi  Ljava/security/cert/CertStoreSpi;
            0    7     2  provider  Ljava/security/Provider;
            0    7     3      type  Ljava/lang/String;
            0    7     4    params  Ljava/security/cert/CertStoreParameters;
    MethodParameters:
          Name  Flags
      storeSpi  
      provider  
      type      
      params    

  public final java.util.Collection<? extends java.security.cert.Certificate> getCertificates(java.security.cert.CertSelector);
    descriptor: (Ljava/security/cert/CertSelector;)Ljava/util/Collection;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // java.security.cert.CertStore this
        start local 1 // java.security.cert.CertSelector selector
         0: .line 152
            aload 0 /* this */
            getfield java.security.cert.CertStore.storeSpi:Ljava/security/cert/CertStoreSpi;
            aload 1 /* selector */
            invokevirtual java.security.cert.CertStoreSpi.engineGetCertificates:(Ljava/security/cert/CertSelector;)Ljava/util/Collection;
            areturn
        end local 1 // java.security.cert.CertSelector selector
        end local 0 // java.security.cert.CertStore this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Ljava/security/cert/CertStore;
            0    1     1  selector  Ljava/security/cert/CertSelector;
    Exceptions:
      throws java.security.cert.CertStoreException
    Signature: (Ljava/security/cert/CertSelector;)Ljava/util/Collection<+Ljava/security/cert/Certificate;>;
    MethodParameters:
          Name  Flags
      selector  

  public final java.util.Collection<? extends java.security.cert.CRL> getCRLs(java.security.cert.CRLSelector);
    descriptor: (Ljava/security/cert/CRLSelector;)Ljava/util/Collection;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // java.security.cert.CertStore this
        start local 1 // java.security.cert.CRLSelector selector
         0: .line 182
            aload 0 /* this */
            getfield java.security.cert.CertStore.storeSpi:Ljava/security/cert/CertStoreSpi;
            aload 1 /* selector */
            invokevirtual java.security.cert.CertStoreSpi.engineGetCRLs:(Ljava/security/cert/CRLSelector;)Ljava/util/Collection;
            areturn
        end local 1 // java.security.cert.CRLSelector selector
        end local 0 // java.security.cert.CertStore this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Ljava/security/cert/CertStore;
            0    1     1  selector  Ljava/security/cert/CRLSelector;
    Exceptions:
      throws java.security.cert.CertStoreException
    Signature: (Ljava/security/cert/CRLSelector;)Ljava/util/Collection<+Ljava/security/cert/CRL;>;
    MethodParameters:
          Name  Flags
      selector  

  public static java.security.cert.CertStore getInstance(java.lang.String, java.security.cert.CertStoreParameters);
    descriptor: (Ljava/lang/String;Ljava/security/cert/CertStoreParameters;)Ljava/security/cert/CertStore;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=3, args_size=2
        start local 0 // java.lang.String type
        start local 1 // java.security.cert.CertStoreParameters params
         0: .line 238
            aload 0 /* type */
            ldc "null type name"
            invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
            pop
         1: .line 240
            ldc "CertStore"
         2: .line 241
            ldc Ljava/security/cert/CertStoreSpi;
            aload 0 /* type */
            aload 1 /* params */
         3: .line 240
            invokestatic sun.security.jca.GetInstance.getInstance:(Ljava/lang/String;Ljava/lang/Class;Ljava/lang/String;Ljava/lang/Object;)Lsun/security/jca/GetInstance$Instance;
            astore 2 /* instance */
        start local 2 // sun.security.jca.GetInstance$Instance instance
         4: .line 242
            new java.security.cert.CertStore
            dup
            aload 2 /* instance */
            getfield sun.security.jca.GetInstance$Instance.impl:Ljava/lang/Object;
            checkcast java.security.cert.CertStoreSpi
         5: .line 243
            aload 2 /* instance */
            getfield sun.security.jca.GetInstance$Instance.provider:Ljava/security/Provider;
            aload 0 /* type */
            aload 1 /* params */
         6: .line 242
            invokespecial java.security.cert.CertStore.<init>:(Ljava/security/cert/CertStoreSpi;Ljava/security/Provider;Ljava/lang/String;Ljava/security/cert/CertStoreParameters;)V
         7: areturn
        end local 2 // sun.security.jca.GetInstance$Instance instance
         8: .line 244
      StackMap locals:
      StackMap stack: java.security.NoSuchAlgorithmException
            astore 2 /* e */
        start local 2 // java.security.NoSuchAlgorithmException e
         9: .line 245
            aload 2 /* e */
            invokestatic java.security.cert.CertStore.handleException:(Ljava/security/NoSuchAlgorithmException;)Ljava/security/cert/CertStore;
            areturn
        end local 2 // java.security.NoSuchAlgorithmException e
        end local 1 // java.security.cert.CertStoreParameters params
        end local 0 // java.lang.String type
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   10     0      type  Ljava/lang/String;
            0   10     1    params  Ljava/security/cert/CertStoreParameters;
            4    8     2  instance  Lsun/security/jca/GetInstance$Instance;
            9   10     2         e  Ljava/security/NoSuchAlgorithmException;
      Exception table:
        from    to  target  type
           1     7       8  Class java.security.NoSuchAlgorithmException
    Exceptions:
      throws java.security.InvalidAlgorithmParameterException, java.security.NoSuchAlgorithmException
    MethodParameters:
        Name  Flags
      type    
      params  

  private static java.security.cert.CertStore handleException(java.security.NoSuchAlgorithmException);
    descriptor: (Ljava/security/NoSuchAlgorithmException;)Ljava/security/cert/CertStore;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=1, locals=2, args_size=1
        start local 0 // java.security.NoSuchAlgorithmException e
         0: .line 252
            aload 0 /* e */
            invokevirtual java.security.NoSuchAlgorithmException.getCause:()Ljava/lang/Throwable;
            astore 1 /* cause */
        start local 1 // java.lang.Throwable cause
         1: .line 253
            aload 1 /* cause */
            instanceof java.security.InvalidAlgorithmParameterException
            ifeq 3
         2: .line 254
            aload 1 /* cause */
            checkcast java.security.InvalidAlgorithmParameterException
            athrow
         3: .line 256
      StackMap locals: java.lang.Throwable
      StackMap stack:
            aload 0 /* e */
            athrow
        end local 1 // java.lang.Throwable cause
        end local 0 // java.security.NoSuchAlgorithmException e
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    4     0      e  Ljava/security/NoSuchAlgorithmException;
            1    4     1  cause  Ljava/lang/Throwable;
    Exceptions:
      throws java.security.NoSuchAlgorithmException, java.security.InvalidAlgorithmParameterException
    MethodParameters:
      Name  Flags
      e     

  public static java.security.cert.CertStore getInstance(java.lang.String, java.security.cert.CertStoreParameters, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/security/cert/CertStoreParameters;Ljava/lang/String;)Ljava/security/cert/CertStore;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=4, args_size=3
        start local 0 // java.lang.String type
        start local 1 // java.security.cert.CertStoreParameters params
        start local 2 // java.lang.String provider
         0: .line 312
            aload 0 /* type */
            ldc "null type name"
            invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
            pop
         1: .line 314
            ldc "CertStore"
         2: .line 315
            ldc Ljava/security/cert/CertStoreSpi;
            aload 0 /* type */
            aload 1 /* params */
            aload 2 /* provider */
         3: .line 314
            invokestatic sun.security.jca.GetInstance.getInstance:(Ljava/lang/String;Ljava/lang/Class;Ljava/lang/String;Ljava/lang/Object;Ljava/lang/String;)Lsun/security/jca/GetInstance$Instance;
            astore 3 /* instance */
        start local 3 // sun.security.jca.GetInstance$Instance instance
         4: .line 316
            new java.security.cert.CertStore
            dup
            aload 3 /* instance */
            getfield sun.security.jca.GetInstance$Instance.impl:Ljava/lang/Object;
            checkcast java.security.cert.CertStoreSpi
         5: .line 317
            aload 3 /* instance */
            getfield sun.security.jca.GetInstance$Instance.provider:Ljava/security/Provider;
            aload 0 /* type */
            aload 1 /* params */
         6: .line 316
            invokespecial java.security.cert.CertStore.<init>:(Ljava/security/cert/CertStoreSpi;Ljava/security/Provider;Ljava/lang/String;Ljava/security/cert/CertStoreParameters;)V
         7: areturn
        end local 3 // sun.security.jca.GetInstance$Instance instance
         8: .line 318
      StackMap locals:
      StackMap stack: java.security.NoSuchAlgorithmException
            astore 3 /* e */
        start local 3 // java.security.NoSuchAlgorithmException e
         9: .line 319
            aload 3 /* e */
            invokestatic java.security.cert.CertStore.handleException:(Ljava/security/NoSuchAlgorithmException;)Ljava/security/cert/CertStore;
            areturn
        end local 3 // java.security.NoSuchAlgorithmException e
        end local 2 // java.lang.String provider
        end local 1 // java.security.cert.CertStoreParameters params
        end local 0 // java.lang.String type
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   10     0      type  Ljava/lang/String;
            0   10     1    params  Ljava/security/cert/CertStoreParameters;
            0   10     2  provider  Ljava/lang/String;
            4    8     3  instance  Lsun/security/jca/GetInstance$Instance;
            9   10     3         e  Ljava/security/NoSuchAlgorithmException;
      Exception table:
        from    to  target  type
           1     7       8  Class java.security.NoSuchAlgorithmException
    Exceptions:
      throws java.security.InvalidAlgorithmParameterException, java.security.NoSuchAlgorithmException, java.security.NoSuchProviderException
    MethodParameters:
          Name  Flags
      type      
      params    
      provider  

  public static java.security.cert.CertStore getInstance(java.lang.String, java.security.cert.CertStoreParameters, java.security.Provider);
    descriptor: (Ljava/lang/String;Ljava/security/cert/CertStoreParameters;Ljava/security/Provider;)Ljava/security/cert/CertStore;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=4, args_size=3
        start local 0 // java.lang.String type
        start local 1 // java.security.cert.CertStoreParameters params
        start local 2 // java.security.Provider provider
         0: .line 369
            aload 0 /* type */
            ldc "null type name"
            invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
            pop
         1: .line 371
            ldc "CertStore"
         2: .line 372
            ldc Ljava/security/cert/CertStoreSpi;
            aload 0 /* type */
            aload 1 /* params */
            aload 2 /* provider */
         3: .line 371
            invokestatic sun.security.jca.GetInstance.getInstance:(Ljava/lang/String;Ljava/lang/Class;Ljava/lang/String;Ljava/lang/Object;Ljava/security/Provider;)Lsun/security/jca/GetInstance$Instance;
            astore 3 /* instance */
        start local 3 // sun.security.jca.GetInstance$Instance instance
         4: .line 373
            new java.security.cert.CertStore
            dup
            aload 3 /* instance */
            getfield sun.security.jca.GetInstance$Instance.impl:Ljava/lang/Object;
            checkcast java.security.cert.CertStoreSpi
         5: .line 374
            aload 3 /* instance */
            getfield sun.security.jca.GetInstance$Instance.provider:Ljava/security/Provider;
            aload 0 /* type */
            aload 1 /* params */
         6: .line 373
            invokespecial java.security.cert.CertStore.<init>:(Ljava/security/cert/CertStoreSpi;Ljava/security/Provider;Ljava/lang/String;Ljava/security/cert/CertStoreParameters;)V
         7: areturn
        end local 3 // sun.security.jca.GetInstance$Instance instance
         8: .line 375
      StackMap locals:
      StackMap stack: java.security.NoSuchAlgorithmException
            astore 3 /* e */
        start local 3 // java.security.NoSuchAlgorithmException e
         9: .line 376
            aload 3 /* e */
            invokestatic java.security.cert.CertStore.handleException:(Ljava/security/NoSuchAlgorithmException;)Ljava/security/cert/CertStore;
            areturn
        end local 3 // java.security.NoSuchAlgorithmException e
        end local 2 // java.security.Provider provider
        end local 1 // java.security.cert.CertStoreParameters params
        end local 0 // java.lang.String type
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   10     0      type  Ljava/lang/String;
            0   10     1    params  Ljava/security/cert/CertStoreParameters;
            0   10     2  provider  Ljava/security/Provider;
            4    8     3  instance  Lsun/security/jca/GetInstance$Instance;
            9   10     3         e  Ljava/security/NoSuchAlgorithmException;
      Exception table:
        from    to  target  type
           1     7       8  Class java.security.NoSuchAlgorithmException
    Exceptions:
      throws java.security.NoSuchAlgorithmException, java.security.InvalidAlgorithmParameterException
    MethodParameters:
          Name  Flags
      type      
      params    
      provider  

  public final java.security.cert.CertStoreParameters getCertStoreParameters();
    descriptor: ()Ljava/security/cert/CertStoreParameters;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.security.cert.CertStore this
         0: .line 389
            aload 0 /* this */
            getfield java.security.cert.CertStore.params:Ljava/security/cert/CertStoreParameters;
            ifnonnull 1
            aconst_null
            goto 2
      StackMap locals:
      StackMap stack:
         1: aload 0 /* this */
            getfield java.security.cert.CertStore.params:Ljava/security/cert/CertStoreParameters;
            invokeinterface java.security.cert.CertStoreParameters.clone:()Ljava/lang/Object;
            checkcast java.security.cert.CertStoreParameters
      StackMap locals:
      StackMap stack: java.security.cert.CertStoreParameters
         2: areturn
        end local 0 // java.security.cert.CertStore this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljava/security/cert/CertStore;

  public final java.lang.String getType();
    descriptor: ()Ljava/lang/String;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.security.cert.CertStore this
         0: .line 398
            aload 0 /* this */
            getfield java.security.cert.CertStore.type:Ljava/lang/String;
            areturn
        end local 0 // java.security.cert.CertStore this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/security/cert/CertStore;

  public final java.security.Provider getProvider();
    descriptor: ()Ljava/security/Provider;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.security.cert.CertStore this
         0: .line 407
            aload 0 /* this */
            getfield java.security.cert.CertStore.provider:Ljava/security/Provider;
            areturn
        end local 0 // java.security.cert.CertStore this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/security/cert/CertStore;

  public static final java.lang.String getDefaultType();
    descriptor: ()Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    Code:
      stack=2, locals=1, args_size=0
         0: .line 431
            new java.security.cert.CertStore$1
            dup
            invokespecial java.security.cert.CertStore$1.<init>:()V
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            checkcast java.lang.String
            astore 0 /* cstype */
        start local 0 // java.lang.String cstype
         1: .line 436
            aload 0 /* cstype */
            ifnonnull 3
         2: .line 437
            ldc "LDAP"
            astore 0 /* cstype */
         3: .line 439
      StackMap locals: java.lang.String
      StackMap stack:
            aload 0 /* cstype */
            areturn
        end local 0 // java.lang.String cstype
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            1    4     0  cstype  Ljava/lang/String;
}
SourceFile: "CertStore.java"
NestMembers:
  java.security.cert.CertStore$1
InnerClasses:
  java.security.cert.CertStore$1
  public final Instance = sun.security.jca.GetInstance$Instance of sun.security.jca.GetInstance