eu.emi.security.authn.x509.helpers.crl
Class LazyOpensslCRLStoreSpi

java.lang.Object
  extended by java.security.cert.CertStoreSpi
      extended by eu.emi.security.authn.x509.helpers.crl.AbstractCRLStoreSPI
          extended by eu.emi.security.authn.x509.helpers.crl.LazyOpensslCRLStoreSpi

public class LazyOpensslCRLStoreSpi
extends AbstractCRLStoreSPI

Handles an Openssl-like CRL store. CRLs are loaded on demand from disk and cached in memory, for no longer then updateInterval parameter.

This class is thread safe.

Author:
K. Benedyczak

Field Summary
 
Fields inherited from class eu.emi.security.authn.x509.helpers.crl.AbstractCRLStoreSPI
factory, observers, params, updateInterval
 
Constructor Summary
LazyOpensslCRLStoreSpi(String path, long crlUpdateInterval, ObserversHandler observers, boolean openssl1Mode)
          Creates a new CRL store.
 
Method Summary
 void dispose()
           
protected  Collection<X509CRL> getCRLForIssuer(X500Principal issuer)
           
 long getUpdateInterval()
           
protected  X509CRL loadCRL(File file)
           
protected  X509CRL reloadCRL(File location)
           
 void setUpdateInterval(long newInterval)
           
 
Methods inherited from class eu.emi.security.authn.x509.helpers.crl.AbstractCRLStoreSPI
engineGetCertificates, engineGetCRLs, notifyObservers
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

LazyOpensslCRLStoreSpi

public LazyOpensslCRLStoreSpi(String path,
                              long crlUpdateInterval,
                              ObserversHandler observers,
                              boolean openssl1Mode)
                       throws InvalidAlgorithmParameterException
Creates a new CRL store.

Parameters:
params -
observers -
Throws:
InvalidAlgorithmParameterException
Method Detail

loadCRL

protected X509CRL loadCRL(File file)
                   throws IOException,
                          CRLException,
                          URISyntaxException
Throws:
IOException
CRLException
URISyntaxException

setUpdateInterval

public void setUpdateInterval(long newInterval)
Specified by:
setUpdateInterval in class AbstractCRLStoreSPI

getUpdateInterval

public long getUpdateInterval()

dispose

public void dispose()
Specified by:
dispose in class AbstractCRLStoreSPI

reloadCRL

protected X509CRL reloadCRL(File location)

getCRLForIssuer

protected Collection<X509CRL> getCRLForIssuer(X500Principal issuer)
Specified by:
getCRLForIssuer in class AbstractCRLStoreSPI


Copyright © 2012-2013 European Middleware Initiative. All Rights Reserved.