Package org.digidoc4j
Class DetachedXadesSignatureBuilder
java.lang.Object
org.digidoc4j.DetachedXadesSignatureBuilder
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionCreates data to be signed externally.finalizeSignature(byte[] signatureValue) Invokes a signing process on the container with a signature token (SeeSignatureToken).openAdESSignature(byte[] signatureDocument) Creates signature object from XadES signature xml.Set a city to the signature production place.withConfiguration(Configuration configuration) Specify configuration for the builder.withCountry(String country) Set a country name to the signature production place.withDataFile(DataFile dataFile) Add a data file to builder.withDataFileDigestAlgorithm(DigestAlgorithm digestAlgorithm) Set signature digest algorithm used to generate a signature.withEncryptionAlgorithm(EncryptionAlgorithm encryptionAlgorithm) Set encryption algorithm to be used in the signing process.withOwnSignaturePolicy(eu.europa.esig.dss.model.Policy signaturePolicy) Set signature policy parameters.withPostalCode(String postalCode) Set a postal code to the signature production place.Set roles to the signer.withSignatureDigestAlgorithm(DigestAlgorithm digestAlgorithm) Set signature digest algorithm used to generate a signature.withSignatureId(String signatureId) Set signature ID.withSignatureProfile(SignatureProfile signatureProfile) Set a signature profile: Time Stamp, Archive Time Stamp or no profile.withSignatureToken(SignatureToken signatureToken) Set signature token to be used in the signing process.withSigningCertificate(X509Certificate certificate) Set a signing certificate to be used when creating data to be signed.withStateOrProvince(String stateOrProvince) Set a state or province to the signature production place.
-
Constructor Details
-
DetachedXadesSignatureBuilder
public DetachedXadesSignatureBuilder()
-
-
Method Details
-
withConfiguration
Specify configuration for the builder.- Parameters:
configuration- configuration to be used for creating the signature.- Returns:
- builder for creating a signature.
-
withDataFile
Add a data file to builder.- Parameters:
dataFile- data file to be added to the builder.- Returns:
- builder for creating a signature.
-
withSigningCertificate
Set a signing certificate to be used when creating data to be signed.- Parameters:
certificate- X509 signer's certificate.- Returns:
- builder for creating a signature.
-
withSignatureDigestAlgorithm
Set signature digest algorithm used to generate a signature.- Parameters:
digestAlgorithm- signature digest algorithm.- Returns:
- builder for creating a signature.
-
withDataFileDigestAlgorithm
Set signature digest algorithm used to generate a signature.- Parameters:
digestAlgorithm- signature digest algorithm.- Returns:
- builder for creating a signature.
-
withCity
Set a city to the signature production place.- Parameters:
cityName- city to use on the signature production place.- Returns:
- builder for creating a signature
-
withStateOrProvince
Set a state or province to the signature production place.- Parameters:
stateOrProvince- name of the state or province on the signature production place.- Returns:
- builder for creating a signature.
-
withPostalCode
Set a postal code to the signature production place.- Parameters:
postalCode- postal code on the signature production place.- Returns:
- builder for creating a signature.
-
withCountry
Set a country name to the signature production place.- Parameters:
country- name of the country on the signature production place.- Returns:
- builder for creating a signature.
-
withRoles
Set roles to the signer.- Parameters:
roles- list of roles of a signer.- Returns:
- builder for creating a signature.
-
withSignatureId
Set signature ID.- Parameters:
signatureId- signature id.- Returns:
- builder for creating a signature.
-
withEncryptionAlgorithm
public DetachedXadesSignatureBuilder withEncryptionAlgorithm(EncryptionAlgorithm encryptionAlgorithm) Set encryption algorithm to be used in the signing process.- Parameters:
encryptionAlgorithm- encryption algorithm.- Returns:
- builder for creating a signature.
-
withSignatureProfile
Set a signature profile: Time Stamp, Archive Time Stamp or no profile. Default is Time Stamp.- Parameters:
signatureProfile- signature profile.- Returns:
- builder for creating a signature.
-
withOwnSignaturePolicy
public DetachedXadesSignatureBuilder withOwnSignaturePolicy(eu.europa.esig.dss.model.Policy signaturePolicy) Set signature policy parameters.The default implementation throws
NotSupportedException.- Parameters:
signaturePolicy- with defined parameters.- Returns:
- SignatureBuilder
-
withSignatureToken
Set signature token to be used in the signing process.- Parameters:
signatureToken- signature token.- Returns:
- builder for creating a signature.
-
buildDataToSign
public DataToSign buildDataToSign() throws SignerCertificateRequiredException, DataFileMissingExceptionCreates data to be signed externally.If the signing process involves signing the container externally (e.g. signing in the Web by a browser plugin), then
DataToSignprovides necessary data for creating a signature externally.- Returns:
- data to be signed externally.
- Throws:
SignerCertificateRequiredException- signer certificate must be provided usingwithSigningCertificate(X509Certificate)DataFileMissingException- builder must have at least one data file to be signed.
-
finalizeSignature
-
invokeSigning
Invokes a signing process on the container with a signature token (SeeSignatureToken). Signature token must be provided withwithSignatureToken(SignatureToken).- Returns:
- a new signature on the container.
- Throws:
SignatureTokenMissingException- if signature token is not provided withwithSignatureToken(SignatureToken)- See Also:
-
openAdESSignature
Creates signature object from XadES signature xml.- Parameters:
signatureDocument- XadES signature xml bytes.- Returns:
- builder for creating a signature.
-