- java.lang.Object
-
- java.security.cert.CertStoreSpi
-
public abstract class CertStoreSpi extends Object
The Service Provider Interface (SPI) for theCertStore
class. AllCertStore
implementations must include a class (the SPI class) that extends this class (CertStoreSpi
), provides a constructor with a single argument of typeCertStoreParameters
, and implements all of its methods. In general, instances of this class should only be accessed through theCertStore
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 singleCertStoreSpi
object (or more than one) with no ill effects. This allows aCertPathBuilder
to search for a CRL while simultaneously searching for further certificates, for instance.Simple
CertStoreSpi
implementations will probably ensure thread safety by adding asynchronized
keyword to theirengineGetCertificates
andengineGetCRLs
methods. More sophisticated ones may allow truly concurrent access.- Since:
- 1.4
-
-
Constructor Summary
Constructors Constructor Description CertStoreSpi(CertStoreParameters params)
The sole constructor.
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description abstract Collection<? extends Certificate>
engineGetCertificates(CertSelector selector)
Returns aCollection
ofCertificate
s that match the specified selector.abstract Collection<? extends CRL>
engineGetCRLs(CRLSelector selector)
Returns aCollection
ofCRL
s that match the specified selector.
-
-
-
Constructor Detail
-
CertStoreSpi
public CertStoreSpi(CertStoreParameters params) throws InvalidAlgorithmParameterException
The sole constructor.- Parameters:
params
- the initialization parameters (may benull
)- Throws:
InvalidAlgorithmParameterException
- if the initialization parameters are inappropriate for thisCertStoreSpi
-
-
Method Detail
-
engineGetCertificates
public abstract Collection<? extends Certificate> engineGetCertificates(CertSelector selector) throws CertStoreException
Returns aCollection
ofCertificate
s that match the specified selector. If noCertificate
s match the selector, an emptyCollection
will be returned.For some
CertStore
types, the resultingCollection
may not contain all of theCertificate
s that match the selector. For instance, an LDAPCertStore
may not search all entries in the directory. Instead, it may just search entries that are likely to contain theCertificate
s it is looking for.Some
CertStore
implementations (especially LDAPCertStore
s) may throw aCertStoreException
unless a non-nullCertSelector
is provided that includes specific criteria that can be used to find the certificates. Issuer and/or subject names are especially useful criteria.- Parameters:
selector
- ACertSelector
used to select whichCertificate
s should be returned. Specifynull
to return allCertificate
s (if supported).- Returns:
- A
Collection
ofCertificate
s that match the specified selector (nevernull
) - Throws:
CertStoreException
- if an exception occurs
-
engineGetCRLs
public abstract Collection<? extends CRL> engineGetCRLs(CRLSelector selector) throws CertStoreException
Returns aCollection
ofCRL
s that match the specified selector. If noCRL
s match the selector, an emptyCollection
will be returned.For some
CertStore
types, the resultingCollection
may not contain all of theCRL
s that match the selector. For instance, an LDAPCertStore
may not search all entries in the directory. Instead, it may just search entries that are likely to contain theCRL
s it is looking for.Some
CertStore
implementations (especially LDAPCertStore
s) may throw aCertStoreException
unless a non-nullCRLSelector
is 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
- ACRLSelector
used to select whichCRL
s should be returned. Specifynull
to return allCRL
s (if supported).- Returns:
- A
Collection
ofCRL
s that match the specified selector (nevernull
) - Throws:
CertStoreException
- if an exception occurs
-
-