Class VerifierRequest

java.lang.Object
br.ufsc.labsec.signature.conformanceVerifier.VerifierRequest

public class VerifierRequest
extends Object
Representa uma requisição de verificação de assinaturas Os valores padrões para os parâmetros de verificação são:
  • Verificação completa: true
  • Verificação incremental: true
  • Verificação de assinaturas não ancoradas: true
  • Tempo limite: 3 minutos
  • Unidade de tempo: segundos
  • Lista de SignatureDataWrapper: vazia
Devem ser adicionados os SignatureDataWrapper que serão verificados, senão será retornado um Optional.empty()
  • Constructor Details

    • VerifierRequest

      public VerifierRequest()
  • Method Details

    • withTimeout

      public VerifierRequest withTimeout​(Duration duration)
    • withCompleteVerification

      public VerifierRequest withCompleteVerification​(boolean isComplete)
    • withReceiptEmission

      public VerifierRequest withReceiptEmission​(boolean withReceipt)
    • verifyingIncrementalUpdates

      public VerifierRequest verifyingIncrementalUpdates​(boolean verifyIncremental)
    • onlyVerifyingAnchored

      public VerifierRequest onlyVerifyingAnchored​(boolean onlyVerifyingAnchored)
    • withUnrestrictedAttributeVerification

      public VerifierRequest withUnrestrictedAttributeVerification​(boolean unresVerif)
    • withSignatureDataWrappers

      public VerifierRequest withSignatureDataWrappers​(Collection<SignatureDataWrapper> signatureDataWrappers)
    • withSignatureDataWrapper

      public VerifierRequest withSignatureDataWrapper​(SignatureDataWrapper signatureDataWrapper)
    • withProfileOnly

      public VerifierRequest withProfileOnly​(boolean profileOnly)
    • withSignatures

      public VerifierRequest withSignatures​(Map<String,​InputStream> signatures)
      Adicionar assinaturas anexadas a serem verificadas.
      Parameters:
      signatures - Map de assinaturas com filename como chave e seu InputStream como valor
      Returns:
      Builder da requisição
    • withSignaturesAndDetachedFiles

      public VerifierRequest withSignaturesAndDetachedFiles​(Map<String,​org.apache.commons.lang3.tuple.Pair<InputStream,​InputStream>> signatures)
      Adicionar assinaturas destacadas a serem verificadas
      Parameters:
      signatures - Map de assinaturas com filename como chave e um Pair de InputStreams como valor (anexado e destacado, respectivamente)
      Returns:
      Builder da requisição
    • withSignaturesAndReceipts

      public VerifierRequest withSignaturesAndReceipts​(Map<String,​org.apache.commons.lang3.tuple.Triple<InputStream,​InputStream,​org.apache.commons.lang3.tuple.Pair<InputStream,​String>>> signatures)
      Adicionar assinaturas, destacadas ou não, com recibos a serem verificadas
      Parameters:
      signatures - Map de assinaturas com filename como chave e um Triple da seguinte forma: * InputStream: assinatura anexada * InputStream: assinatura destacada * Pair: * InputStream: assinatura do recibo * String: nome do arquivo de recibo
      Returns:
      Builder da requisição
    • withDefaultConfiguration

      public VerifierRequest withDefaultConfiguration()
      Configura a verificação com as configurações padrões do PBAD
      Returns:
      Builder da requisição
    • withConfiguration

      public VerifierRequest withConfiguration​(AbstractComponentConfiguration configuration)
    • addApplicationParameters

      public VerifierRequest addApplicationParameters​(Consumer<Application> applicationConfiguration)
    • addTrustAnchors

      public VerifierRequest addTrustAnchors​(List<URI> uris)
    • addTrustedLists

      public VerifierRequest addTrustedLists​(List<URI> uris)
    • getEmittedReceipt

      public Optional<ReceiptBundle> getEmittedReceipt()
    • verify

      public Optional<List<Report>> verify() throws ExecutionException
      Verifica os SignatureDataWrapper enviados com os parâmetros definidos
      Returns:
      Lista de relatórios de verificação
      Throws:
      ExecutionException - Exceção em caso de erro na execução