Class OCSPCachingClient
java.lang.Object
eu.emi.security.authn.x509.helpers.ocsp.OCSPCachingClient
OCSP client which adds a cache layer on top of
OCSPClientImpl
.
There are two caches (all of them are configurable) consulted in the given order:
unresponsive responders cache (per responder); OCSP responses cache (per responder and checked certificate tuple).
This class is thread safe.
- Author:
- K. Benedyczak
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
queryForCertificate
(URL responder, X509Certificate toCheckCert, X509Certificate issuerCert, X509Credential requester, boolean addNonce, int timeout) Returns the checked certificate status.queryForCertificate
(URL responder, X509Certificate toCheckCert, X509Certificate issuerCert, X509Credential requester, boolean addNonce, int timeout, OCSPClientImpl client) Returns the checked certificate status, using a custom client.
-
Constructor Details
-
OCSPCachingClient
- Parameters:
maxTtl
- maximum time after each cached response expires. Negative for no cache at all, 0 for no limit (i.e. caching time will be only controlled by the OCSP response validity period). In ms.diskPath
- if not null, cached responses will be stored on disk.prefix
- used if disk cache is enabled, as a common prefix for all files created in the cache directory.
-
-
Method Details
-
queryForCertificate
public OCSPResult queryForCertificate(URL responder, X509Certificate toCheckCert, X509Certificate issuerCert, X509Credential requester, boolean addNonce, int timeout) throws IOException, org.bouncycastle.cert.ocsp.OCSPException Returns the checked certificate status.- Parameters:
responder
- mandatory - URL of the responder. HTTP or HTTPs, however in https mode thetoCheckCert
- mandatory certificate to be checkedissuerCert
- mandatory certificate of the toCheckCert issuerrequester
- if not null, then it is assumed that request must be signed by the requester.addNonce
- if true nonce will be added to the request and required in responsetimeout
- timeout- Returns:
- raw result of the query
- Throws:
IOException
- IO exceptionorg.bouncycastle.cert.ocsp.OCSPException
- OCSP exception
-
queryForCertificate
public OCSPResult queryForCertificate(URL responder, X509Certificate toCheckCert, X509Certificate issuerCert, X509Credential requester, boolean addNonce, int timeout, OCSPClientImpl client) throws IOException, org.bouncycastle.cert.ocsp.OCSPException Returns the checked certificate status, using a custom client.- Parameters:
responder
- mandatory - URL of the responder. HTTP or HTTPs, however in https mode thetoCheckCert
- mandatory certificate to be checkedissuerCert
- mandatory certificate of the toCheckCert issuerrequester
- if not null, then it is assumed that request must be signed by the requester.addNonce
- if true nonce will be added to the request and required in responsetimeout
- timeoutclient
- client to be used for network calls- Returns:
- raw result of the query
- Throws:
IOException
- IO exceptionorg.bouncycastle.cert.ocsp.OCSPException
- OCSP exception
-
clearMemoryCache
public void clearMemoryCache()
-