Interface DocumentAnalyzer

All Known Subinterfaces:
EvidenceRecordAnalyzer
All Known Implementing Classes:
AbstractASiCContainerAnalyzer, AbstractJWSDocumentAnalyzer, ASiCContainerWithCAdESAnalyzer, ASiCContainerWithXAdESAnalyzer, ASiCWithCAdESTimestampAnalyzer, ASN1EvidenceRecordAnalyzer, CMSDocumentAnalyzer, DefaultDocumentAnalyzer, DefaultEvidenceRecordAnalyzer, DetachedTimestampAnalyzer, JWSCompactDocumentAnalyzer, JWSSerializationAnalyzerValidator, PDFADocumentAnalyzer, PDFDocumentAnalyzer, XMLDocumentAnalyzer, XMLEvidenceRecordAnalyzer

public interface DocumentAnalyzer
This class performs processing of a signature document, including extraction of signature and timestamp tokens, cryptographic validation, certificate chain building and revocation data validation. The class works exclusively with JAVA objects, and does not include ETSI EN 319 102-1 validation process, nor JAXB objects.
  • Method Details

    • getDocument

      DSSDocument getDocument()
      Gets document to be validated
      Returns:
      DSSDocument
    • getSignatures

      List<AdvancedSignature> getSignatures()
      Retrieves the signatures found in the document
      Returns:
      a list of AdvancedSignatures for validation purposes
    • getDetachedTimestamps

      List<TimestampToken> getDetachedTimestamps()
      Retrieves the detached timestamps found in the document
      Returns:
      a list of TimestampToken for validation purposes
    • getDetachedEvidenceRecords

      List<EvidenceRecord> getDetachedEvidenceRecords()
      Retrieves the detached evidence records found in the document
      Returns:
      a list of Evidence Records for validation purposes
    • setCertificateVerifier

      void setCertificateVerifier(CertificateVerifier certificateVerifier)
      Provides a CertificateVerifier to be used during the validation process.
      Parameters:
      certificateVerifier - CertificateVerifier
    • setValidationContextExecutor

      void setValidationContextExecutor(ValidationContextExecutor validationContextExecutor)
      This method sets ValidationContextExecutor for validation of the prepared ValidationContext Default: eu.europa.esig.dss.validation.executor.context.DefaultValidationContextExecutor (performs basic validation of tokens, including certificate chain building and revocation data extraction, without processing of validity checks)
      Parameters:
      validationContextExecutor - ValidationContextExecutor
    • getTokenIdentifierProvider

      TokenIdentifierProvider getTokenIdentifierProvider()
      Gets TokenIdentifierProvider
      Returns:
      TokenIdentifierProvider
    • setTokenIdentifierProvider

      void setTokenIdentifierProvider(TokenIdentifierProvider tokenIdentifierProvider)
      Sets the TokenIdentifierProvider
      Parameters:
      tokenIdentifierProvider - TokenIdentifierProvider
    • getValidationTime

      Date getValidationTime()
      Returns document validation time
      Returns:
      Date
    • setValidationTime

      void setValidationTime(Date validationTime)
      Allows to define a custom validation time
      Parameters:
      validationTime - Date
    • setDetachedContents

      void setDetachedContents(List<DSSDocument> detachedContent)
      Sets the List of DSSDocument containing the original contents to sign, for detached signature scenarios.
      Parameters:
      detachedContent - the List of DSSDocument to set
    • setDetachedEvidenceRecordDocuments

      void setDetachedEvidenceRecordDocuments(List<DSSDocument> detachedEvidenceRecordDocuments)
      Sets a List of DSSDocument containing the evidence record documents covering the signature document.
      Parameters:
      detachedEvidenceRecordDocuments - the List of DSSDocument to set
    • setContainerContents

      void setContainerContents(List<DSSDocument> archiveContents)
      Sets the List of DSSDocument containing the original container content for ASiC-S signatures.
      Parameters:
      archiveContents - the List of DSSDocument to set
    • setManifestFile

      void setManifestFile(ManifestFile manifestFile)
      Sets a related ManifestFile to the document to be validated.
      Parameters:
      manifestFile - a ManifestFile to set
    • isSupported

      boolean isSupported(DSSDocument dssDocument)
      Checks if the document is supported by the current validator
      Parameters:
      dssDocument - DSSDocument to check
      Returns:
      TRUE if the document is supported, FALSE otherwise
    • setSigningCertificateSource

      void setSigningCertificateSource(CertificateSource certificateSource)
      Set a certificate source which allows to find the signing certificate by kid or certificate's digest
      Parameters:
      certificateSource - the certificate source
    • setSignaturePolicyProvider

      void setSignaturePolicyProvider(SignaturePolicyProvider signaturePolicyProvider)
      This method allows to set a provider for Signature policies
      Parameters:
      signaturePolicyProvider - SignaturePolicyProvider
    • getOriginalDocuments

      List<DSSDocument> getOriginalDocuments(String signatureId)
      This method returns the signed document(s) without their signature(s)
      Parameters:
      signatureId - the DSS ID of the signature to extract original signer data for
      Returns:
      list of DSSDocuments
    • getOriginalDocuments

      List<DSSDocument> getOriginalDocuments(AdvancedSignature advancedSignature)
      This method returns the signed document(s) without their signature(s)
      Parameters:
      advancedSignature - AdvancedSignature to find signer documents for
      Returns:
      list of DSSDocuments
    • getValidationData

      <T extends AdvancedSignature> ValidationDataContainer getValidationData(Collection<T> signatures)
      Extracts a validation data for provided collection of signatures
      Type Parameters:
      T - AdvancedSignature implementation
      Parameters:
      signatures - a collection of AdvancedSignatures
      Returns:
      ValidationDataContainer
    • getValidationData

      <T extends AdvancedSignature> ValidationDataContainer getValidationData(Collection<T> signatures, Collection<TimestampToken> detachedTimestamps)
      Extracts a validation data for provided collection of signatures and/or timestamps
      Type Parameters:
      T - AdvancedSignature implementation
      Parameters:
      signatures - a collection of AdvancedSignatures
      detachedTimestamps - a collection of detached TimestampTokens
      Returns:
      ValidationDataContainer
    • validate

      ValidationContext validate()
      This method performs validation of the document
      Returns:
      ValidationContext