package at.gv.egiz.eaaf.modules.sigverify.moasig.api.data; import java.util.Date; import java.util.List; import javax.annotation.Nonnull; import org.springframework.lang.Nullable; import at.gv.egiz.eaaf.modules.sigverify.moasig.exceptions.MoaSigServiceException; import at.gv.egiz.eaaf.modules.sigverify.moasig.impl.data.GenericSignatureVerificationResponse.ExtendedCertificateValidation; import at.gv.egiz.eaaf.modules.sigverify.moasig.impl.data.GenericSignatureVerificationResponse.ExtendedResult; import iaik.x509.X509Certificate; public interface IGenericSignatureVerificationResponse { /** * Returns the signing time. * * @return Signing time, or null if signature contains no time information */ @Nullable Date getSigningDateTime(); /** * Returns the signatureCheckCode. * * @return int */ int getSignatureCheckCode(); /** * Returns the certificateCheckCode. * * @return int */ int getCertificateCheckCode(); /** * Returns the qualifiedCertificate. * * @return boolean */ boolean isQualifiedCertificate(); /** * Returns the X509 certificate. * * @return X509Certificate, or null if no certificate information exists * @throws MoaSigServiceException if X509 certificate can not be deserialized */ @Nullable X509Certificate getX509Certificate() throws MoaSigServiceException; /** * Returns the X509 certificate in serialized form. * * @return Serialized X509 certificate, or null if no certificate information * exists */ @Nullable byte[] getX509CertificateEncoded(); /** * Returns the publicAuthority. * * @return boolean */ boolean isPublicAuthority(); /** * Returns the publicAuthorityCode. * * @return String OID, or null if no OID exists */ @Nullable String getPublicAuthorityCode(); /** * Return the signature-algorithm that was used for signing or null if no result exists. *
*

This result requires extended validation.

* * @return */ @Nullable String getSignatureAlgorithmIdentifier(); /** * Return the extended certificate-validation result or null if no result exists. *
*

This result requires extended validation.

* * @return */ @Nullable ExtendedCertificateValidation getExtendedCertificateValidation(); /** * Return the form-validation result or an empty list if no result exists. *
*

This result requires extended validation.

* * @return */ @Nonnull List getFormValidationResults(); }