package org.bouncycastle.operator;
import org.bouncycastle.asn1.x509.AlgorithmIdentifier;
import org.bouncycastle.cert.X509CertificateHolder;
General interface for providers of ContentVerifier objects.
/**
* General interface for providers of ContentVerifier objects.
*/
public interface ContentVerifierProvider
{
Return whether or not this verifier has a certificate associated with it.
Returns: true if there is an associated certificate, false otherwise.
/**
* Return whether or not this verifier has a certificate associated with it.
*
* @return true if there is an associated certificate, false otherwise.
*/
boolean hasAssociatedCertificate();
Return the associated certificate if there is one.
Returns: a holder containing the associated certificate if there is one, null if there is not.
/**
* Return the associated certificate if there is one.
*
* @return a holder containing the associated certificate if there is one, null if there is not.
*/
X509CertificateHolder getAssociatedCertificate();
Return a ContentVerifier that matches the passed in algorithm identifier,
Params: - verifierAlgorithmIdentifier – the algorithm and parameters required.
Throws: - OperatorCreationException – if the required ContentVerifier cannot be created.
Returns: a matching ContentVerifier
/**
* Return a ContentVerifier that matches the passed in algorithm identifier,
*
* @param verifierAlgorithmIdentifier the algorithm and parameters required.
* @return a matching ContentVerifier
* @throws OperatorCreationException if the required ContentVerifier cannot be created.
*/
ContentVerifier get(AlgorithmIdentifier verifierAlgorithmIdentifier)
throws OperatorCreationException;
}