Package br.ufsc.labsec.signature
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.
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
CompleteSigner.Mode
-
Field Summary
Fields Modifier and Type Field Description protected AttributeFactory<Info,Encod,Sig>
attributeFactory
protected SignatureContainer<Sig>
signatureContainer
-
Constructor Summary
Constructors Constructor Description CompleteSigner(AttributeFactory<Info,Encod,Sig> attributeFactory)
-
Method Summary
Modifier and Type Method Description boolean
counterSign(FileToBeSigned<? extends Info> fileToBeSigned)
Realiza a contra-assinatura de um arquivo, utilizando o conteúdo assinado.protected SignatureContainer<Sig>
getSignature()
SignatureDataWrapper
getSignature(FileToBeSigned<? extends Info> fileToBeSigned)
Realiza a assinatura de um arquivo.InputStream
getSignatureStream()
Retorna o arquivo assinadoboolean
save()
boolean
sign(FileToBeSigned<? extends Info> fileToBeSigned)
Assina um arquivo, alterando o modo a partir do modo de assinatura do arquivo.abstract boolean
supports(FileToBeSigned<? extends Info> fileToBeSigned)
Método abstrato para verificar se o assinador suporta o arquivo a ser assinado.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface br.ufsc.labsec.signature.signer.common.ContainerBuilder
buildContainer, buildContainer, getCounterSignatureIdentifier, getLastSignature
Methods inherited from interface br.ufsc.labsec.signature.CounterSigner
canCounterSign
Methods inherited from interface br.ufsc.labsec.signature.Signer
getPoliciesAvailable, getSignedAttributesAvailable, getUnsignedAttributesAvailable, simpleSign, supportsCertPath
-
Field Details
-
attributeFactory
protected AttributeFactory<Info extends ExtraInformation,Encod,Sig extends Signature<Encod>> attributeFactory -
signatureContainer
-
-
Constructor Details
-
CompleteSigner
-
-
Method Details
-
save
public boolean save()- Specified by:
save
in interfaceCoSigner<Info extends ExtraInformation>
-
supports
public abstract boolean supports(FileToBeSigned<? extends Info> fileToBeSigned) throws br.ufsc.labsec.pbad.ykue_utils.exceptions.SignerException, CertificationPathExceptionMétodo abstrato para verificar se o assinador suporta o arquivo a ser assinado.- Specified by:
supports
in interfaceSigner<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.SignerExceptionAssina 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.SignerExceptionRealiza a assinatura de um arquivo.- Specified by:
getSignature
in interfaceSigner<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
- Returns:
- O objeto que representa a assinatura.
-
getSignatureStream
Retorna o arquivo assinado- Specified by:
getSignatureStream
in interfaceSigner<Info extends ExtraInformation>
- Returns:
- O
InputStream
do arquivo assinado
-
counterSign
Realiza a contra-assinatura de um arquivo, utilizando o conteúdo assinado.- Specified by:
counterSign
in interfaceCounterSigner<Info extends ExtraInformation>
- Parameters:
fileToBeSigned
- O arquivo a ser contra-assinado.- Returns:
- Indica se a contra-assinatura foi realizada com sucesso.
-