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
DataToSign
provides 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.
-