CertStore class. All CertStore
 implementations must include a class (the SPI class) that extends
 this class (CertStoreSpi), provides a constructor with
 a single argument of type CertStoreParameters, and implements
 all of its methods. In general, instances of this class should only be
 accessed through the CertStore class.
 For details, see the Java Cryptography Architecture.
 Concurrent Access
 The public methods of all CertStoreSpi objects must be
 thread-safe. That is, multiple threads may concurrently invoke these
 methods on a single CertStoreSpi object (or more than one)
 with no ill effects. This allows a CertPathBuilder to search
 for a CRL while simultaneously searching for further certificates, for
 instance.
 
 Simple CertStoreSpi implementations will probably ensure
 thread safety by adding a synchronized keyword to their
 engineGetCertificates and engineGetCRLs methods.
 More sophisticated ones may allow truly concurrent access.
- Since:
 - 1.4
 
- 
Constructor Summary
Constructors - 
Method Summary
Modifier and TypeMethodDescriptionabstract Collection<? extends Certificate> engineGetCertificates(CertSelector selector) Returns aCollectionofCertificates that match the specified selector.abstract Collection<? extends CRL> engineGetCRLs(CRLSelector selector) Returns aCollectionofCRLs that match the specified selector. 
- 
Constructor Details
- 
CertStoreSpi
The sole constructor.- Parameters:
 params- the initialization parameters (may benull)- Throws:
 InvalidAlgorithmParameterException- if the initialization parameters are inappropriate for thisCertStoreSpi
 
 - 
 - 
Method Details
- 
engineGetCertificates
public abstract Collection<? extends Certificate> engineGetCertificates(CertSelector selector) throws CertStoreException Returns aCollectionofCertificates that match the specified selector. If noCertificates match the selector, an emptyCollectionwill be returned.For some
CertStoretypes, the resultingCollectionmay not contain all of theCertificates that match the selector. For instance, an LDAPCertStoremay not search all entries in the directory. Instead, it may just search entries that are likely to contain theCertificates it is looking for.Some
CertStoreimplementations (especially LDAPCertStores) may throw aCertStoreExceptionunless a non-nullCertSelectoris provided that includes specific criteria that can be used to find the certificates. Issuer and/or subject names are especially useful criteria.- Parameters:
 selector- ACertSelectorused to select whichCertificates should be returned. Specifynullto return allCertificates (if supported).- Returns:
 - A 
CollectionofCertificates that match the specified selector (nevernull) - Throws:
 CertStoreException- if an exception occurs
 - 
engineGetCRLs
public abstract Collection<? extends CRL> engineGetCRLs(CRLSelector selector) throws CertStoreException Returns aCollectionofCRLs that match the specified selector. If noCRLs match the selector, an emptyCollectionwill be returned.For some
CertStoretypes, the resultingCollectionmay not contain all of theCRLs that match the selector. For instance, an LDAPCertStoremay not search all entries in the directory. Instead, it may just search entries that are likely to contain theCRLs it is looking for.Some
CertStoreimplementations (especially LDAPCertStores) may throw aCertStoreExceptionunless a non-nullCRLSelectoris provided that includes specific criteria that can be used to find the CRLs. Issuer names and/or the certificate to be checked are especially useful.- Parameters:
 selector- ACRLSelectorused to select whichCRLs should be returned. Specifynullto return allCRLs (if supported).- Returns:
 - A 
CollectionofCRLs that match the specified selector (nevernull) - Throws:
 CertStoreException- if an exception occurs
 
 -