Module  java.base
软件包  java.security.cert

Class CertStoreSpi



  • public abstract class CertStoreSpi
    extends Object
    SPI )为CertStore类。 所有CertStore实现都必须包含扩展此类( CertStoreSpi )的类(SPI类),为具有类型为CertStoreParameters的单个参数提供构造函数,并实现其所有方法。 一般来说,这个类的实例只能通过CertStore类访问。 有关详细信息,请参阅Java加密体系结构。

    并发访问

    所有CertStoreSpi对象的公共方法必须是线程安全的。 也就是说,多个线程可以在单个CertStoreSpi对象(或多个)上同时调用这些方法,而不会产生不良影响。 例如,这允许CertPathBuilder搜索CRL同时搜索其他证书。

    简单的CertStoreSpi实现可能会通过向其engineGetCertificatesengineGetCRLs方法添加一个synchronized关键字来确保线程安全。 更复杂的可能允许真正的并发访问。

    从以下版本开始:
    1.4
    • 方法详细信息

      • engineGetCertificates

        public abstract Collection<? extends Certificate> engineGetCertificates​(CertSelector selector)
                                                                         throws CertStoreException
        返回匹配指定选择器的CollectionCertificate 如果没有Certificate匹配选择器,将返回一个空的Collection

        对于大约CertStore类型,产生的Collection可能不包含与选择器匹配的所有 Certificate 例如,LDAP CertStore可能不会搜索目录中的所有条目。 相反,它可能只是搜索可能包含它正在寻找的Certificate的条目。

        一些CertStore实现(特别是LDAP CertStore )可以抛出CertStoreException除非提供了包括可用于查找证书的特定标准的非空CertSelector 发行人和/或主题名称是特别有用的标准。

        参数
        selector - A CertSelector用于选择应该返回哪些Certificate 指定null以返回所有Certificate (如果支持)。
        结果
        A CollectionCertificate s匹配指定的选择器(从不 null
        异常
        CertStoreException - 如果发生异常
      • engineGetCRLs

        public abstract Collection<? extends CRL> engineGetCRLs​(CRLSelector selector)
                                                         throws CertStoreException
        返回匹配指定选择器的CollectionCRL 如果CRL与选择器匹配,则将返回一个空的Collection

        对于大约CertStore类型,结果Collection可能不包含与选择器匹配的所有 CRL 例如,LDAP CertStore可能不会搜索目录中的所有条目。 相反,它可能只是搜索可能包含它正在寻找的CRL的条目。

        一些CertStore实现(特别是LDAP CertStore )可以抛出CertStoreException除非提供了包括可用于查找CRL的特定标准的非空CRLSelector 发行人名称和/或要检查的证书特别有用。

        参数
        selector - A CRLSelector用于选择应该返回哪些CRL 指定null返回所有CRL s(如果支持)。
        结果
        A CollectionCRL s匹配指定的选择器(从不 null
        异常
        CertStoreException - 如果发生异常