Package eu.europa.esig.dss.diagnostic
Class DiagnosticData
java.lang.Object
eu.europa.esig.dss.diagnostic.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.
-
Constructor Summary
Constructors Constructor Description DiagnosticData(XmlDiagnosticData wrapped)
-
Method Summary
Modifier and Type Method Description Set<SignatureWrapper>
getAllCounterSignatures()
This method returns counter-signatures (not signatures)Set<SignatureWrapper>
getAllCounterSignaturesForMasterSignature(SignatureWrapper masterSignatureWrapper)
Returns a set ofSignatureWrapper
s for a givenmasterSignatureWrapper
List<OrphanCertificateWrapper>
getAllOrphanCertificateObjects()
Returns a list of all foundOrphanCertificateWrapper
valuesList<OrphanTokenWrapper>
getAllOrphanCertificateReferences()
Returns a list of all found orphan certificate referencesList<OrphanRevocationWrapper>
getAllOrphanRevocationObjects()
Returns a list of all foundOrphanRevocationWrapper
valuesList<OrphanTokenWrapper>
getAllOrphanRevocationReferences()
Returns a list of all found orphan revocation referencesSet<RevocationWrapper>
getAllRevocationData()
This method returns all revocation dataSet<SignatureWrapper>
getAllSignatures()
This method returns signatures (not countersignatures)String
getCertificateDN(String dssCertificateId)
This method returns the subject distinguished name for the given dss certificate identifier.String
getCertificateIssuerDN(String dssCertificateId)
This method returns the issuer distinguished name for the given dss certificate identifier.RevocationReason
getCertificateRevocationReason(String dssCertificateId)
This method returns the revocation reason for the given certificate.RevocationType
getCertificateRevocationSource(String dssCertificateId)
This method returns the revocation source for the given certificate.CertificateStatus
getCertificateRevocationStatus(String dssCertificateId)
This method returns the revocation status for the given certificate.String
getCertificateSerialNumber(String dssCertificateId)
This method returns the serial number of the given dss certificate identifier.List<CertificateWrapper>
getCertificatesFromSource(CertificateSourceType certificateSourceType)
Returns a list of certificates by their origin sourceXmlContainerInfo
getContainerInfo()
ASiCContainerType
getContainerType()
This method returns the container typeList<CertificateWrapper>
getCrossCertificates(CertificateWrapper certificate)
Returns a list of cross-certificatesString
getDocumentName()
List<CertificateWrapper>
getEquivalentCertificates(CertificateWrapper certificate)
Returns a list of equivalent certificates (certificates with the same public key)String
getErrorMessage(String signatureId)
This method retrieves the error message for the given signature idString
getFirstPolicyId()
The identifier of the policy of the first signature.Date
getFirstSignatureDate()
This method returns the first signature time.DigestAlgorithm
getFirstSignatureDigestAlgorithm()
This method returns theDigestAlgorithm
of the first signature.EncryptionAlgorithm
getFirstSignatureEncryptionAlgorithm()
This method returns theEncryptionAlgorithm
of the first signature.SignatureLevel
getFirstSignatureFormat()
This method returns the signature format for the first signature.String
getFirstSignatureId()
This method returns the first signature id.XmlDiagnosticData
getJaxbModel()
This method returns the JAXB modelCertificateRevocationWrapper
getLatestRevocationDataForCertificate(CertificateWrapper certificate)
Returns the last actual revocation for the givencertificate
List<XmlTrustedList>
getListOfTrustedLists()
This method returns the JAXB model of the LOTLString
getMimetypeFileContent()
This method returns the content of the mimetype file (if container)List<SignerDataWrapper>
getOriginalSignerDocuments()
Returns a complete list of original signer documents signed by all signaturesString
getPolicyDescription(String signatureId)
The description of the policy.List<String>
getPolicyDocumentationReferences(String signatureId)
The documentation references of the policyString
getPolicyId(String signatureId)
The identifier of the policy.RevocationWrapper
getRevocationById(String id)
ReturnsRevocationWrapper
with the givenid
SignatureWrapper
getSignatureById(String id)
This method returns a signature wrapper for the given signature idList<String>
getSignatureCertificateChain(String signatureId)
This method returns the list of certificates in the chain of the main signature.Date
getSignatureDate(String signatureId)
This method returns the claimed signing time.DigestAlgorithm
getSignatureDigestAlgorithm(String signatureId)
This method returns theDigestAlgorithm
for the given signature.EncryptionAlgorithm
getSignatureEncryptionAlgorithm(String signatureId)
This method returns theDigestAlgorithm
for the given signature.SignatureLevel
getSignatureFormat(String signatureId)
This method returns the signature format for the given signature.List<String>
getSignatureIdList()
This method returns the list of the signature id.MaskGenerationFunction
getSignatureMaskGenerationFunction(String signatureId)
This method returns theMaskGenerationFunction
for the given signature.List<SignatureWrapper>
getSignatures()
This method retrieves a list of signature wrappers.List<XmlSignerRole>
getSignedAssertions(String signatureId)
This method returns the signed assertions for the given signature.List<XmlSignerRole>
getSignedAssertionsInFirstSignature()
This method returns the signed assertions for the first signature.String
getSigningCertificateId(String signatureId)
This method returns signing certificate dss id for the given signature.TimestampWrapper
getTimestampById(String id)
Returns the TimestampWrapper corresponding to the given id.List<String>
getTimestampIdList()
This method returns the list of identifier of the all timestamps found during the validation.List<String>
getTimestampIdList(String signatureId)
This method returns the list of identifier of the timestamps related to the given signature.List<TimestampWrapper>
getTimestampList()
This method retrieves a set of timestamp wrappersList<TimestampWrapper>
getTimestampList(String signatureId)
This method returns the list of timestamps wrappers which covers the given signature.Set<TimestampWrapper>
getTimestampSet()
This method returns timestampsString
getTimestampSigningCertificateId(String timestampId)
Returns the identifier of the timestamp signing certificate.TimestampType
getTimestampType(String timestampId)
This method returns the timestamp type of the given timestampList<XmlTrustedList>
getTrustedLists()
This method returns the JAXB model of the used trusted listsCertificateWrapper
getUsedCertificateById(String id)
This method returns a certificate wrapper for the given certificate idCertificateWrapper
getUsedCertificateByIdNullSafe(String id)
This method returns a certificate wrapper for the given certificate idList<CertificateWrapper>
getUsedCertificates()
This method retrieves a list of certificate wrappersDate
getValidationDate()
String
getZipComment()
This method returns the zip comment (if the document is a container)boolean
isALevelTechnicallyValid(String signatureId)
Indicates if the -A (-LTA) level is technically valid.boolean
isBLevelTechnicallyValid(String signatureId)
Indicates if the -B level is technically valid.boolean
isContainerInfoPresent()
This method checks if the document is a container (ASiC)boolean
isMimetypeFilePresent()
This method checks if the container has a mimetype fileboolean
isSigningCertificateIdentified(String signatureId)
This method indicates if the digest value and the issuer and serial match for the signing certificate .boolean
isThereALevel(String signatureId)
Indicates if there is an archive timestamp.boolean
isThereTLevel(String signatureId)
Indicates if there is a signature timestamp.boolean
isThereXLevel(String signatureId)
Indicates if there is an -X1 or -X2 timestamp.boolean
isTLevelTechnicallyValid(String signatureId)
Indicates if the -T level is technically valid.boolean
isValidCertificate(String dssCertificateId)
This method indicates if the certificate signature is valid and the revocation status is valid.boolean
isXLevelTechnicallyValid(String signatureId)
Indicates if the -X level is technically valid.
-
Constructor Details
-
Method Details
-
getDocumentName
-
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
This method returns the first signature id.- Returns:
- the first signature id
-
getFirstSignatureDate
This method returns the first signature time.- Returns:
- the first signature time
-
getSignatureDate
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
This method returns the signature format for the first signature.- Returns:
- The first signature format
-
getSignatureFormat
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
-
getSignedAssertionsInFirstSignature
This method returns the signed assertions for the first signature.- Returns:
- list of
XmlSignerRole
s
-
getSignedAssertions
This method returns the signed assertions for the given signature.- Parameters:
signatureId
- The identifier of the signature, for which the signed assertions are sought.- Returns:
- list of
XmlSignerRole
s
-
getFirstSignatureDigestAlgorithm
This method returns theDigestAlgorithm
of the first signature.- Returns:
- The
DigestAlgorithm
of the first signature
-
getSignatureDigestAlgorithm
This method returns theDigestAlgorithm
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
This method returns theEncryptionAlgorithm
of the first signature.- Returns:
- The
EncryptionAlgorithm
of the first signature
-
getSignatureEncryptionAlgorithm
This method returns theDigestAlgorithm
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
This method returns theMaskGenerationFunction
for the given signature.- Parameters:
signatureId
- The identifier of the signature, for which the algorithm is sought.- Returns:
- The
MaskGenerationFunction
for the given signature
-
getSigningCertificateId
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
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
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
The identifier of the policy of the first signature.- Returns:
- the policy identifier of the first signature
-
getPolicyId
The identifier of the policy.- Parameters:
signatureId
- The identifier of the signature.- Returns:
- the policy identifier
-
getPolicyDescription
The description of the policy.- Parameters:
signatureId
- The identifier of the signature.- Returns:
- the policy description
-
getPolicyDocumentationReferences
The documentation references of the policy- Parameters:
signatureId
- The identifier of the signature.- Returns:
- the policy documentation references
-
getTimestampIdList
This method returns the list of identifier of the all timestamps found during the validation.- Returns:
- The list of identifier of the timestamps
-
getTimestampIdList
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
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
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
Indicates if there is a signature timestamp.- Parameters:
signatureId
- The identifier of the signature.- Returns:
- true if the signature timestamp is present
-
isTLevelTechnicallyValid
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
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
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
Indicates if there is an archive timestamp.- Parameters:
signatureId
- The identifier of the signature.- Returns:
- true if the archive timestamp is present
-
isALevelTechnicallyValid
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
Returns the identifier of the timestamp signing certificate.- Parameters:
timestampId
- timestamp id- Returns:
- signing certificate id
-
getTimestampType
This method returns the timestamp type of the given timestamp- Parameters:
timestampId
- the timestamp id- Returns:
- the related timestamp type
-
isValidCertificate
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
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
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
This method returns the serial number of the given dss certificate identifier.- Parameters:
dssCertificateId
- DSS certificate identifier to be checked- Returns:
- serial number
-
getCertificateRevocationSource
This method returns the revocation source for the given certificate.- Parameters:
dssCertificateId
- DSS certificate identifier to be checked- Returns:
- revocation source
-
getCertificateRevocationStatus
This method returns the revocation status for the given certificate.- Parameters:
dssCertificateId
- DSS certificate identifier to be checked- Returns:
- certificate status
-
getCertificateRevocationReason
This method returns the revocation reason for the given certificate.- Parameters:
dssCertificateId
- DSS certificate identifier to be checked- Returns:
- revocation reason
-
getErrorMessage
This method retrieves the error message for the given signature id- Parameters:
signatureId
- the signature id- Returns:
- the error message
-
getSignatureById
This method returns a signature wrapper for the given signature id- Parameters:
id
- the signature id- Returns:
- a signature wrapper or null
-
getTimestampById
Returns the TimestampWrapper corresponding to the given id.- Parameters:
id
- timestamp id- Returns:
- timestamp wrapper or null
-
getUsedCertificateByIdNullSafe
This method returns a certificate wrapper for the given certificate id- Parameters:
id
- the certificate id- Returns:
- a certificate wrapper (or empty object)
-
getUsedCertificateById
This method returns a certificate wrapper for the given certificate id- Parameters:
id
- the certificate id- Returns:
- a certificate wrapper or null
-
getCertificatesFromSource
public List<CertificateWrapper> getCertificatesFromSource(CertificateSourceType certificateSourceType)Returns a list of certificates by their origin source- Parameters:
certificateSourceType
-CertificateSourceType
to get certificates with- Returns:
- list of
CertificateWrapper
s
-
getAllOrphanCertificateObjects
Returns a list of all foundOrphanCertificateWrapper
values- Returns:
- list of
OrphanCertificateWrapper
s
-
getAllOrphanCertificateReferences
Returns a list of all found orphan certificate references- Returns:
- list of
OrphanTokenWrapper
s
-
getAllOrphanRevocationObjects
Returns a list of all foundOrphanRevocationWrapper
values- Returns:
- list of
OrphanRevocationWrapper
s
-
getAllOrphanRevocationReferences
Returns a list of all found orphan revocation references- Returns:
- list of
OrphanTokenWrapper
s
-
getCrossCertificates
Returns a list of cross-certificates- Parameters:
certificate
-CertificateWrapper
to find cross certificates for- Returns:
- a list of cross certificate
CertificateWrapper
s
-
getEquivalentCertificates
Returns a list of equivalent certificates (certificates with the same public key)- Parameters:
certificate
-CertificateWrapper
to find equivalent certificates for- Returns:
- a list of equivalent certificates
-
getSignatures
This method retrieves a list of signature wrappers.- Returns:
- a list of
SignatureWrapper
s.
-
getTimestampList
This method retrieves a set of timestamp wrappers- Returns:
- a List of timestamp wrappers
-
getUsedCertificates
This method retrieves a list of certificate wrappers- Returns:
- a list of
CertificateWrapper
s.
-
getAllSignatures
This method returns signatures (not countersignatures)- Returns:
- a set of SignatureWrapper
-
getAllCounterSignatures
This method returns counter-signatures (not signatures)- Returns:
- a set of SignatureWrapper
-
getAllCounterSignaturesForMasterSignature
public Set<SignatureWrapper> getAllCounterSignaturesForMasterSignature(SignatureWrapper masterSignatureWrapper)Returns a set ofSignatureWrapper
s for a givenmasterSignatureWrapper
- Parameters:
masterSignatureWrapper
- -SignatureWrapper
to get counter signatures for- Returns:
- set of
SignatureWrapper
s
-
getTimestampSet
This method returns timestamps- Returns:
- a set of TimestampWrapper
-
getAllRevocationData
This method returns all revocation data- Returns:
- a set of revocation data
-
getLatestRevocationDataForCertificate
public CertificateRevocationWrapper getLatestRevocationDataForCertificate(CertificateWrapper certificate)Returns the last actual revocation for the givencertificate
- Parameters:
certificate
-CertificateWrapper
to find the latest revocation for- Returns:
CertificateRevocationWrapper
revocation
-
getRevocationById
ReturnsRevocationWrapper
with the givenid
- Parameters:
id
-String
identifier to getRevocationWrapper
with- Returns:
RevocationWrapper
-
getOriginalSignerDocuments
Returns a complete list of original signer documents signed by all signatures- Returns:
- list of
SignerDataWrapper
s
-
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
This method returns the container type- Returns:
- the container type (ASiC-S/E)
-
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
This method returns the content of the mimetype file (if container)- Returns:
- the content of the mimetype file
-
getContainerInfo
-
getTrustedLists
This method returns the JAXB model of the used trusted lists- Returns:
- the JAXB model of the used trusted lists
-
getListOfTrustedLists
This method returns the JAXB model of the LOTL- Returns:
- the JAXB model of the LOTL
-
getValidationDate
-