Class DiagnosticData


  • public class DiagnosticData
    extends Object
    This class represents all static data extracted by the process analysing the signature. They are independent from the validation policy to be applied.
    • Method Detail

      • getDocumentName

        public String getDocumentName()
      • getSignatureIdList

        public List<String> getSignatureIdList()
        This method returns the list of the signature id. The result is stored in the local variable.
        Returns:
        list of signature ids, is never null, can be empty
      • getFirstSignatureId

        public String getFirstSignatureId()
        This method returns the first signature id.
        Returns:
        the first signature id
      • getFirstSignatureDate

        public Date getFirstSignatureDate()
        This method returns the first signature time.
        Returns:
        the first signature time
      • getSignatureDate

        public Date getSignatureDate​(String signatureId)
        This method returns the claimed signing time.
        Parameters:
        signatureId - The identifier of the signature, for which the date is sought.
        Returns:
        the signature time for the given signature
      • getFirstSignatureFormat

        public SignatureLevel getFirstSignatureFormat()
        This method returns the signature format for the first signature.
        Returns:
        The first signature format
      • getSignatureFormat

        public SignatureLevel getSignatureFormat​(String signatureId)
        This method returns the signature format for the given signature.
        Parameters:
        signatureId - The identifier of the signature, for which the format is sought.
        Returns:
        The signature format
      • getFirstSignatureDigestAlgorithm

        public DigestAlgorithm getFirstSignatureDigestAlgorithm()
        This method returns the DigestAlgorithm of the first signature.
        Returns:
        The DigestAlgorithm of the first signature
      • getSignatureDigestAlgorithm

        public DigestAlgorithm getSignatureDigestAlgorithm​(String signatureId)
        This method returns the DigestAlgorithm for the given signature.
        Parameters:
        signatureId - The identifier of the signature, for which the algorithm is sought.
        Returns:
        The DigestAlgorithm for the given signature
      • getFirstSignatureEncryptionAlgorithm

        public EncryptionAlgorithm getFirstSignatureEncryptionAlgorithm()
        This method returns the EncryptionAlgorithm of the first signature.
        Returns:
        The EncryptionAlgorithm of the first signature
      • getSignatureEncryptionAlgorithm

        public EncryptionAlgorithm getSignatureEncryptionAlgorithm​(String signatureId)
        This method returns the DigestAlgorithm for the given signature.
        Parameters:
        signatureId - The identifier of the signature, for which the algorithm is sought.
        Returns:
        The DigestAlgorithm for the given signature
      • getSignatureMaskGenerationFunction

        public MaskGenerationFunction getSignatureMaskGenerationFunction​(String signatureId)
        This method returns the MaskGenerationFunction for the given signature.
        Parameters:
        signatureId - The identifier of the signature, for which the algorithm is sought.
        Returns:
        The MaskGenerationFunction for the given signature
      • getFirstSigningCertificateId

        public String getFirstSigningCertificateId()
        This method returns signing certificate dss id for the first signature.
        Returns:
        signing certificate dss id.
      • getSigningCertificateId

        public String getSigningCertificateId​(String signatureId)
        This method returns signing certificate dss id for the given signature.
        Parameters:
        signatureId - The identifier of the signature, for which the signing certificate is sought.
        Returns:
        signing certificate dss id for the given signature.
      • isSigningCertificateIdentified

        public boolean isSigningCertificateIdentified​(String signatureId)
        This method indicates if the digest value and the issuer and serial match for the signing certificate .
        Parameters:
        signatureId - The identifier of the signature.
        Returns:
        true if the digest value and the issuer and serial match.
      • getSignatureCertificateChain

        public List<String> getSignatureCertificateChain​(String signatureId)
        This method returns the list of certificates in the chain of the main signature.
        Parameters:
        signatureId - The identifier of the signature.
        Returns:
        list of certificate's dss id for the given signature.
      • getFirstPolicyId

        public String getFirstPolicyId()
        The identifier of the policy of the first signature.
        Returns:
        the policy identifier of the first signature
      • getPolicyId

        public String getPolicyId​(String signatureId)
        The identifier of the policy.
        Parameters:
        signatureId - The identifier of the signature.
        Returns:
        the policy identifier
      • getPolicyDescription

        public String getPolicyDescription​(String signatureId)
        The description of the policy.
        Parameters:
        signatureId - The identifier of the signature.
        Returns:
        the policy description
      • getTimestampIdList

        public List<String> getTimestampIdList​(String signatureId)
        This method returns the list of identifier of the timestamps related to the given signature.
        Parameters:
        signatureId - The identifier of the signature.
        Returns:
        The list of identifier of the timestamps
      • getTimestampList

        public List<TimestampWrapper> getTimestampList​(String signatureId)
        This method returns the list of timestamps wrappers which covers the given signature.
        Parameters:
        signatureId - The identifier of the signature.
        Returns:
        The list of timestamp wrappers
      • isBLevelTechnicallyValid

        public boolean isBLevelTechnicallyValid​(String signatureId)
        Indicates if the -B level is technically valid. It means that the signature value is valid.
        Parameters:
        signatureId - The identifier of the signature.
        Returns:
        true if the signature value is valid
      • isThereTLevel

        public boolean isThereTLevel​(String signatureId)
        Indicates if there is a signature timestamp.
        Parameters:
        signatureId - The identifier of the signature.
        Returns:
        true if the signature timestamp is present
      • isTLevelTechnicallyValid

        public boolean isTLevelTechnicallyValid​(String signatureId)
        Indicates if the -T level is technically valid. It means that the signature and the digest are valid.
        Parameters:
        signatureId - The identifier of the signature.
        Returns:
        true if the signature and digest are valid
      • isThereXLevel

        public boolean isThereXLevel​(String signatureId)
        Indicates if there is an -X1 or -X2 timestamp.
        Parameters:
        signatureId - The identifier of the signature.
        Returns:
        true if the -X1 or -X2 is present
      • isXLevelTechnicallyValid

        public boolean isXLevelTechnicallyValid​(String signatureId)
        Indicates if the -X level is technically valid. It means that the signature and the digest are valid.
        Parameters:
        signatureId - The identifier of the signature.
        Returns:
        true if the signature and digest are valid
      • isThereALevel

        public boolean isThereALevel​(String signatureId)
        Indicates if there is an archive timestamp.
        Parameters:
        signatureId - The identifier of the signature.
        Returns:
        true if the archive timestamp is present
      • isALevelTechnicallyValid

        public boolean isALevelTechnicallyValid​(String signatureId)
        Indicates if the -A (-LTA) level is technically valid. It means that the signature of the archive timestamps are valid and their imprint is valid too.
        Parameters:
        signatureId - The identifier of the signature.
        Returns:
        true if the signature and digest are valid
      • getTimestampSigningCertificateId

        public String getTimestampSigningCertificateId​(String timestampId)
        Returns the identifier of the timestamp signing certificate.
        Parameters:
        timestampId - timestamp id
        Returns:
        signing certificate id
      • getTimestampType

        public TimestampType getTimestampType​(String timestampId)
        This method returns the timestamp type of the given timestamp
        Parameters:
        timestampId - the timestamp id
        Returns:
        the related timestamp type
      • isValidCertificate

        public boolean isValidCertificate​(String dssCertificateId)
        This method indicates if the certificate signature is valid and the revocation status is valid.
        Parameters:
        dssCertificateId - DSS certificate identifier to be checked
        Returns:
        certificate validity
      • getCertificateDN

        public String getCertificateDN​(String dssCertificateId)
        This method returns the subject distinguished name for the given dss certificate identifier.
        Parameters:
        dssCertificateId - DSS certificate identifier to be checked
        Returns:
        subject distinguished name
      • getCertificateIssuerDN

        public String getCertificateIssuerDN​(String dssCertificateId)
        This method returns the issuer distinguished name for the given dss certificate identifier.
        Parameters:
        dssCertificateId - DSS certificate identifier to be checked
        Returns:
        issuer distinguished name
      • getCertificateSerialNumber

        public String getCertificateSerialNumber​(String dssCertificateId)
        This method returns the serial number of the given dss certificate identifier.
        Parameters:
        dssCertificateId - DSS certificate identifier to be checked
        Returns:
        serial number
      • getCertificateRevocationSource

        public RevocationType getCertificateRevocationSource​(String dssCertificateId)
        This method returns the revocation source for the given certificate.
        Parameters:
        dssCertificateId - DSS certificate identifier to be checked
        Returns:
        revocation source
      • getCertificateRevocationStatus

        public boolean getCertificateRevocationStatus​(String dssCertificateId)
        This method returns the revocation status for the given certificate.
        Parameters:
        dssCertificateId - DSS certificate identifier to be checked
        Returns:
        revocation status
      • getCertificateRevocationReason

        public RevocationReason getCertificateRevocationReason​(String dssCertificateId)
        This method returns the revocation reason for the given certificate.
        Parameters:
        dssCertificateId - DSS certificate identifier to be checked
        Returns:
        revocation reason
      • getErrorMessage

        public String getErrorMessage​(String signatureId)
        This method retrieves the error message for the given signature id
        Parameters:
        signatureId - the signature id
        Returns:
        the error message
      • getSignatureById

        public SignatureWrapper getSignatureById​(String id)
        This method returns a signature wrapper for the given signature id
        Parameters:
        id - the signature id
        Returns:
        a signature wrapper or null
      • getTimestampById

        public TimestampWrapper getTimestampById​(String id)
        Returns the TimestampWrapper corresponding to the given id.
        Parameters:
        id - timestamp id
        Returns:
        timestamp wrapper or null
      • getUsedCertificateByIdNullSafe

        public CertificateWrapper getUsedCertificateByIdNullSafe​(String id)
        This method returns a certificate wrapper for the given certificate id
        Parameters:
        id - the certificate id
        Returns:
        a certificate wrapper (or empty object)
      • getUsedCertificateById

        public CertificateWrapper getUsedCertificateById​(String id)
        This method returns a certificate wrapper for the given certificate id
        Parameters:
        id - the certificate id
        Returns:
        a certificate wrapper or null
      • getTimestampList

        public List<TimestampWrapper> getTimestampList()
        This method retrieves a set of timestamp wrappers
        Returns:
        a List of timestamp wrappers
      • getAllSignatures

        public Set<SignatureWrapper> getAllSignatures()
        This method returns signatures (not countersignatures)
        Returns:
        a set of SignatureWrapper
      • getAllCounterSignatures

        public Set<SignatureWrapper> getAllCounterSignatures()
        This method returns counter-signatures (not signatures)
        Returns:
        a set of SignatureWrapper
      • getTimestampSet

        public Set<TimestampWrapper> getTimestampSet()
        This method returns timestamps
        Returns:
        a set of TimestampWrapper
      • getAllRevocationData

        public Set<RevocationWrapper> getAllRevocationData()
        This method returns all revocation data
        Returns:
        a set of revocation data
      • getOriginalSignerDocuments

        public List<XmlSignerData> getOriginalSignerDocuments()
        Returns a complete list of original signer documents signed by all signatures
        Returns:
        list of XmlSignerDatas
      • getJaxbModel

        public XmlDiagnosticData getJaxbModel()
        This method returns the JAXB model
        Returns:
        the jaxb model of the diagnostic data
      • isContainerInfoPresent

        public boolean isContainerInfoPresent()
        This method checks if the document is a container (ASiC)
        Returns:
        true if the document is a container
      • getContainerType

        public String getContainerType()
        This method returns the container type
        Returns:
        the container type (ASiC-S/E)
      • getZipComment

        public String getZipComment()
        This method returns the zip comment (if the document is a container)
        Returns:
        the zip comment for the current document (if container) or null
      • isMimetypeFilePresent

        public boolean isMimetypeFilePresent()
        This method checks if the container has a mimetype file
        Returns:
        true if the mimetype file is present
      • getMimetypeFileContent

        public String getMimetypeFileContent()
        This method returns the content of the mimetype file (if container)
        Returns:
        the content of the mimetype file
      • getTrustedLists

        public List<XmlTrustedList> getTrustedLists()
        This method returns the JAXB model of the used trusted lists
        Returns:
        the JAXB model of the used trusted lists
      • getListOfTrustedLists

        public XmlTrustedList getListOfTrustedLists()
        This method returns the JAXB model of the LOTL
        Returns:
        the JAXB model of the LOTL
      • getLOTLCountryCode

        public String getLOTLCountryCode()
        This method returns the LOTL country code
        Returns:
        the country code of the used LOTL
      • getValidationDate

        public Date getValidationDate()