Class CompleteSigner<Info extends ExtraInformation,​Encod,​Sig extends Signature<Encod>>

java.lang.Object
br.ufsc.labsec.signature.CompleteSigner<Info,​Encod,​Sig>
Type Parameters:
Info - Tipo de informação extra a ser carregada na assinatura.
Encod - Tipo de codificação da assinatura.
Sig - Tipo de assinatura.
All Implemented Interfaces:
CoSigner<Info>, CounterSigner<Info>, Signer<Info>, ContainerBuilder<Info,​Encod,​Sig>
Direct Known Subclasses:
AbstractCadesSigner, AbstractXadesSigner, JadesSigner, PadesSigner

public abstract class CompleteSigner<Info extends ExtraInformation,​Encod,​Sig extends Signature<Encod>>
extends Object
implements Signer<Info>, CoSigner<Info>, CounterSigner<Info>, ContainerBuilder<Info,​Encod,​Sig>
Classe abstrata que representa um assinador completo, podendo realizar assinatura simples, co-assinatura ou contra-assinatura.
  • Field Details

  • Constructor Details

  • Method Details

    • save

      public boolean save()
      Specified by:
      save in interface CoSigner<Info extends ExtraInformation>
    • supports

      public abstract boolean supports​(FileToBeSigned<? extends Info> fileToBeSigned) throws br.ufsc.labsec.pbad.ykue_utils.exceptions.SignerException, CertificationPathException
      Método abstrato para verificar se o assinador suporta o arquivo a ser assinado.
      Specified by:
      supports in interface Signer<Info extends ExtraInformation>
      Parameters:
      fileToBeSigned - O arquivo a ser assinado.
      Returns:
      Verdadeiro se o assinador suporta o arquivo a ser assinado, falso caso contrário.
      Throws:
      br.ufsc.labsec.pbad.ykue_utils.exceptions.SignerException - Exceção em caso de erro no assinador.
      CertificationPathException - Exceção em caso de erro na cadeia de certificação.
    • sign

      public boolean sign​(FileToBeSigned<? extends Info> fileToBeSigned) throws br.ufsc.labsec.pbad.ykue_utils.exceptions.SignerException
      Assina um arquivo, alterando o modo a partir do modo de assinatura do arquivo.
      Parameters:
      fileToBeSigned - O arquivo a ser assinado
      Returns:
      Indica se a assinatura foi realizada com sucesso
      Throws:
      br.ufsc.labsec.pbad.ykue_utils.exceptions.SignerException - Exceção em caso de erro no assinador
    • getSignature

      public SignatureDataWrapper getSignature​(FileToBeSigned<? extends Info> fileToBeSigned) throws br.ufsc.labsec.pbad.ykue_utils.exceptions.SignerException
      Realiza a assinatura de um arquivo.
      Specified by:
      getSignature in interface Signer<Info extends ExtraInformation>
      Parameters:
      fileToBeSigned - O arquivo a ser assinado.
      Returns:
      Indica se a assinatura foi realizada com sucesso.
      Throws:
      br.ufsc.labsec.pbad.ykue_utils.exceptions.SignerException - Exceção em caso de erro no assinador.
    • getSignature

      protected SignatureContainer<Sig> getSignature()
      Returns:
      O objeto que representa a assinatura.
    • getSignatureStream

      public InputStream getSignatureStream()
      Retorna o arquivo assinado
      Specified by:
      getSignatureStream in interface Signer<Info extends ExtraInformation>
      Returns:
      O InputStream do arquivo assinado
    • counterSign

      public boolean counterSign​(FileToBeSigned<? extends Info> fileToBeSigned)
      Realiza a contra-assinatura de um arquivo, utilizando o conteúdo assinado.
      Specified by:
      counterSign in interface CounterSigner<Info extends ExtraInformation>
      Parameters:
      fileToBeSigned - O arquivo a ser contra-assinado.
      Returns:
      Indica se a contra-assinatura foi realizada com sucesso.