aboutsummaryrefslogtreecommitdiff
path: root/moaSig/moa-sig-lib/src/main/java/at/gv/egovernment/moa/spss/server/invoke/XMLSignatureCreationInvoker.java
diff options
context:
space:
mode:
Diffstat (limited to 'moaSig/moa-sig-lib/src/main/java/at/gv/egovernment/moa/spss/server/invoke/XMLSignatureCreationInvoker.java')
-rw-r--r--moaSig/moa-sig-lib/src/main/java/at/gv/egovernment/moa/spss/server/invoke/XMLSignatureCreationInvoker.java532
1 files changed, 269 insertions, 263 deletions
diff --git a/moaSig/moa-sig-lib/src/main/java/at/gv/egovernment/moa/spss/server/invoke/XMLSignatureCreationInvoker.java b/moaSig/moa-sig-lib/src/main/java/at/gv/egovernment/moa/spss/server/invoke/XMLSignatureCreationInvoker.java
index ecdd811..e039cb9 100644
--- a/moaSig/moa-sig-lib/src/main/java/at/gv/egovernment/moa/spss/server/invoke/XMLSignatureCreationInvoker.java
+++ b/moaSig/moa-sig-lib/src/main/java/at/gv/egovernment/moa/spss/server/invoke/XMLSignatureCreationInvoker.java
@@ -21,18 +21,8 @@
* that you distribute must include a readable copy of the "NOTICE" text file.
*/
-
package at.gv.egovernment.moa.spss.server.invoke;
-import iaik.server.modules.IAIKException;
-import iaik.server.modules.IAIKRuntimeException;
-import iaik.server.modules.xml.DataObject;
-import iaik.server.modules.xml.XMLDataObject;
-import iaik.server.modules.xml.XMLSignature;
-import iaik.server.modules.xmlsign.XMLSignatureCreationModule;
-import iaik.server.modules.xmlsign.XMLSignatureCreationModuleFactory;
-import iaik.server.modules.xmlsign.XMLSignatureCreationProfile;
-
import java.util.ArrayList;
import java.util.Collections;
import java.util.HashMap;
@@ -71,17 +61,25 @@ import at.gv.egovernment.moaspss.logging.LoggingContext;
import at.gv.egovernment.moaspss.logging.LoggingContextManager;
import at.gv.egovernment.moaspss.util.Constants;
import at.gv.egovernment.moaspss.util.XPathUtils;
+import iaik.server.modules.IAIKException;
+import iaik.server.modules.IAIKRuntimeException;
+import iaik.server.modules.xml.DataObject;
+import iaik.server.modules.xml.XMLDataObject;
+import iaik.server.modules.xml.XMLSignature;
+import iaik.server.modules.xmlsign.XMLSignatureCreationModule;
+import iaik.server.modules.xmlsign.XMLSignatureCreationModuleFactory;
+import iaik.server.modules.xmlsign.XMLSignatureCreationProfile;
/**
* A class providing an API based interface to the
* <code>XMLSignatureCreationModule</code>.
- *
- * This class performs the invocation of the
+ *
+ * This class performs the invocation of the
* <code>iaik.server.modules.xmlsign.XMLSignatureCreationModule</code> from a
* <code>CreateXMLSignatureRequest</code> given as an API object. The result of
* the invocation is integrated into a <code>CreateXMLSignatureResponse</code>
* and returned.
- *
+ *
* @author Patrick Peck
* @version $Id$
*/
@@ -92,7 +90,7 @@ public class XMLSignatureCreationInvoker {
/**
* Get the only instance of this class.
- *
+ *
* @return The only instance of this class.
*/
public static synchronized XMLSignatureCreationInvoker getInstance() {
@@ -104,7 +102,7 @@ public class XMLSignatureCreationInvoker {
/**
* Create a new <code>XMLSignatureCreationInvoker</code>.
- *
+ *
* Protected to disallow multiple instances.
*/
protected XMLSignatureCreationInvoker() {
@@ -114,31 +112,31 @@ public class XMLSignatureCreationInvoker {
* Process the <code>CreateXMLSignatureRequest<code> message and invoke the
* <code>XMLSignatureCreationModule</code> for every
* <code>SingleSignatureInfo</code> contained in the request.
- *
+ *
* @param request A <code>CreateXMLSignatureRequest<code> API object
* containing the information for creating the signature(s).
- * @param reserved A <code>Set</code> of reserved object IDs.
- *
- * @return A <code>CreateXMLSignatureResponse</code> API object containing
- * the created signature(s). The response contains either a
- * <code>SignatureEnvironment</code> or a <code>ErrorResponse</code>
- * for each <code>SingleSignatureInfo</code> in the request.
- * @throws MOAException An error occurred during signature creation.
+ * &#64;param reserved A <code>Set</code> of reserved object IDs.
+ *
+ * @return A <code>CreateXMLSignatureResponse</code> API object containing the
+ * created signature(s). The response contains either a
+ * <code>SignatureEnvironment</code> or a <code>ErrorResponse</code> for
+ * each <code>SingleSignatureInfo</code> in the request.
+ * @throws MOAException An error occurred during signature creation.
*/
public CreateXMLSignatureResponse createXMLSignature(
- CreateXMLSignatureRequest request,
- Set reserved)
- throws MOAException {
-
- TransactionContext context =
- TransactionContextManager.getInstance().getTransactionContext();
- LoggingContext loggingCtx =
- LoggingContextManager.getInstance().getLoggingContext();
+ CreateXMLSignatureRequest request,
+ Set reserved)
+ throws MOAException {
+
+ final TransactionContext context =
+ TransactionContextManager.getInstance().getTransactionContext();
+ final LoggingContext loggingCtx =
+ LoggingContextManager.getInstance().getLoggingContext();
reserved = new HashSet(reserved);
- XMLSignatureCreationProfileFactory profileFactory =
- new XMLSignatureCreationProfileFactory(request, reserved);
- CreateXMLSignatureResponseBuilder responseBuilder =
- new CreateXMLSignatureResponseBuilder();
+ final XMLSignatureCreationProfileFactory profileFactory =
+ new XMLSignatureCreationProfileFactory(request, reserved);
+ final CreateXMLSignatureResponseBuilder responseBuilder =
+ new CreateXMLSignatureResponseBuilder();
int createCount = 1;
IdGenerator refIdGen;
XMLSignatureCreationModule module;
@@ -153,8 +151,8 @@ public class XMLSignatureCreationInvoker {
// iterate over all the SingleSignatureInfo elements in the request
while (singleSignatureInfoIter.hasNext()) {
- SingleSignatureInfo singleSignatureInfo =
- (SingleSignatureInfo) singleSignatureInfoIter.next();
+ final SingleSignatureInfo singleSignatureInfo =
+ (SingleSignatureInfo) singleSignatureInfoIter.next();
CreateSignatureInfo createSignatureInfo;
List dataObjectList;
XMLSignatureCreationProfile profile;
@@ -170,44 +168,47 @@ public class XMLSignatureCreationInvoker {
// build the signature environment
createSignatureInfo = singleSignatureInfo.getCreateSignatureInfo();
if (createSignatureInfo != null) {
- DataObjectFactory dataObjFactory = DataObjectFactory.getInstance();
+ final DataObjectFactory dataObjFactory = DataObjectFactory.getInstance();
signatureEnvironment =
- dataObjFactory.createSignatureEnvironment(
- createSignatureInfo.getCreateSignatureEnvironment(),
- getCreateSignatureEnvironmentProfileSupplements(singleSignatureInfo));
+ dataObjFactory.createSignatureEnvironment(
+ createSignatureInfo.getCreateSignatureEnvironment(),
+ getCreateSignatureEnvironmentProfileSupplements(singleSignatureInfo));
} else {
signatureEnvironment = null;
}
-
- HashSet sigInfoReservedIDs = new HashSet();
- if (signatureEnvironment != null)
- {
+
+ final HashSet sigInfoReservedIDs = new HashSet();
+ if (signatureEnvironment != null) {
// Find Id attributes of existing XML signatures in signature environment
- HashMap nSMap = new HashMap();
- String dsp = Constants.DSIG_PREFIX;
- nSMap.put(dsp, Constants.DSIG_NS_URI);
- String xPathExpr = "//" + dsp + ":Signature/@Id | //" + dsp + ":Reference/@Id | //"
- + dsp + ":Object/@Id | //" + dsp + ":Manifest/@Id";
- NodeList idAttrs = XPathUtils.selectNodeList(signatureEnvironment.getElement(), nSMap, xPathExpr);
-
- // Add found Id attributes to set of reserved IDs
- for (int i = 0; i < idAttrs.getLength(); i++) sigInfoReservedIDs.add(idAttrs.item(i).getNodeValue());
+ final HashMap nSMap = new HashMap();
+ final String dsp = Constants.DSIG_PREFIX;
+ nSMap.put(dsp, Constants.DSIG_NS_URI);
+ final String xPathExpr = "//" + dsp + ":Signature/@Id | //" + dsp + ":Reference/@Id | //"
+ + dsp + ":Object/@Id | //" + dsp + ":Manifest/@Id";
+ final NodeList idAttrs = XPathUtils.selectNodeList(signatureEnvironment.getElement(), nSMap,
+ xPathExpr);
+
+ // Add found Id attributes to set of reserved IDs
+ for (int i = 0; i < idAttrs.getLength(); i++) {
+ sigInfoReservedIDs.add(idAttrs.item(i).getNodeValue());
+ }
}
// create the reference id generator
- HashSet allReservedIDs = new HashSet(reserved);
+ final HashSet allReservedIDs = new HashSet(reserved);
allReservedIDs.addAll(sigInfoReservedIDs);
refIdGen = new IdGenerator("reference-" + createCount++, allReservedIDs);
// build the list of DataObjects
- List createTransformsProfiles = profileFactory.getCreateTransformsInfoProfiles(singleSignatureInfo);
+ final List createTransformsProfiles = profileFactory.getCreateTransformsInfoProfiles(
+ singleSignatureInfo);
dataObjectList =
- buildDataObjectList(
- singleSignatureInfo,
- createTransformsProfiles,
- signatureEnvironment,
- refIdGen);
+ buildDataObjectList(
+ singleSignatureInfo,
+ createTransformsProfiles,
+ signatureEnvironment,
+ refIdGen);
// build the XMLSignatureCreationProfile
profile = profileFactory.createProfile(singleSignatureInfo, sigInfoReservedIDs);
@@ -218,78 +219,78 @@ public class XMLSignatureCreationInvoker {
// build the signatureParentElement
if (signatureEnvironment != null) {
signatureParent =
- buildSignatureParentElement(
- signatureEnvironment.getElement(),
- singleSignatureInfo);
+ buildSignatureParentElement(
+ signatureEnvironment.getElement(),
+ singleSignatureInfo);
} else {
signatureParent = null;
}
- // make the signature environment the root of the document, if it is
- // not a separate document anyway; this is done to assure that
- // canonicalization of the signature environment contains the correct
+ // make the signature environment the root of the document, if it is
+ // not a separate document anyway; this is done to assure that
+ // canonicalization of the signature environment contains the correct
// namespace declarations
if (signatureEnvironment != null) {
- Document requestDoc =
- signatureEnvironment.getElement().getOwnerDocument();
+ final Document requestDoc =
+ signatureEnvironment.getElement().getOwnerDocument();
requestElement = requestDoc.getDocumentElement();
if (requestElement != signatureEnvironment.getElement()) {
signatureEnvironmentParent =
- signatureEnvironment.getElement().getParentNode();
+ signatureEnvironment.getElement().getParentNode();
requestElement.getOwnerDocument().replaceChild(
- signatureEnvironment.getElement(),
- requestElement);
+ signatureEnvironment.getElement(),
+ requestElement);
}
}
try {
- ConfigurationProvider config = context.getConfiguration();
- String xadesVersion = config.getXAdESVersion();
-
- if (xadesVersion!= null && xadesVersion.compareTo(XMLSignatureCreationModule.XADES_VERSION_1_4_2) == 0) {
- // create the signature (XAdES 1.4.2)
- signature =
- module.createSignature(
+ final ConfigurationProvider config = context.getConfiguration();
+ final String xadesVersion = config.getXAdESVersion();
+
+ if (xadesVersion != null && xadesVersion.compareTo(
+ XMLSignatureCreationModule.XADES_VERSION_1_4_2) == 0) {
+ // create the signature (XAdES 1.4.2)
+ signature =
+ module.createSignature(
dataObjectList,
profile,
additionalSignedProperties,
signatureParent,
XMLSignatureCreationModule.XADES_VERSION_1_4_2,
new TransactionId(context.getTransactionID()));
- }
- else {
- // create the signature (XAdES 1.1.1 = default)
- signature =
- module.createSignature(
+ } else {
+ // create the signature (XAdES 1.1.1 = default)
+ signature =
+ module.createSignature(
dataObjectList,
profile,
additionalSignedProperties,
signatureParent,
XMLSignatureCreationModule.XADES_VERSION_1_1_1,
new TransactionId(context.getTransactionID()));
- }
+ }
// insert the result into the response
if (signatureParent != null) {
responseBuilder.addSignatureEnvironment(
- signatureEnvironment.getElement());
+ signatureEnvironment.getElement());
} else {
responseBuilder.addSignatureEnvironment(signature.getElement());
}
- } catch (IAIKException e) {
- MOAException moaException = IaikExceptionMapper.getInstance().map(e);
+ } catch (final IAIKException e) {
+ final MOAException moaException = IaikExceptionMapper.getInstance().map(e);
responseBuilder.addError(
- moaException.getMessageId(),
- moaException.getMessage());
+ moaException.getMessageId(),
+ moaException.getMessage());
Logger.warn(moaException.getMessage(), e);
- } catch (IAIKRuntimeException e) {
- MOAException moaException = IaikExceptionMapper.getInstance().map(e);
+ } catch (final IAIKRuntimeException e) {
+ final MOAException moaException = IaikExceptionMapper.getInstance().map(e);
responseBuilder.addError(
- moaException.getMessageId(),
- moaException.getMessage());
+ moaException.getMessageId(),
+ moaException.getMessage());
Logger.warn(moaException.getMessage(), e);
}
@@ -297,14 +298,14 @@ public class XMLSignatureCreationInvoker {
if (signatureEnvironment != null) {
if (requestElement != signatureEnvironment.getElement()) {
requestElement.getOwnerDocument().replaceChild(
- requestElement,
- signatureEnvironment.getElement());
+ requestElement,
+ signatureEnvironment.getElement());
signatureEnvironmentParent.appendChild(
- signatureEnvironment.getElement());
+ signatureEnvironment.getElement());
}
}
- } catch (MOAException e) {
+ } catch (final MOAException e) {
responseBuilder.addError(e.getMessageId(), e.getMessage());
Logger.warn(e.getMessage(), e);
}
@@ -317,85 +318,88 @@ public class XMLSignatureCreationInvoker {
/**
* Build the list of <code>DataObject</code>s from the given
* <code>SingleSignatureInfo</code> object.
- *
+ *
* <p>
- * Only the following cases of <code>DataObject</code>s are
- * valid in case of an enveloping signature:
- *
+ * Only the following cases of <code>DataObject</code>s are valid in case of an
+ * enveloping signature:
+ *
* <ul>
- * <li><code>Reference == null && Content != null</code>: The
+ * <li><code>Reference == null && Content != null</code>: The
* <code>Content</code> will be used in the <code>DataObject</code>.</li>
* <li><code>Reference != null && Content == null</code>: Resolve the
- * <code>Reference</code> and use it as <code>DataObject</code>.
- * Set the <code>Reference</code> in the <code>DataObject</code> as well.</li>
+ * <code>Reference</code> and use it as <code>DataObject</code>. Set the
+ * <code>Reference</code> in the <code>DataObject</code> as well.</li>
* </ul>
* </p>
- *
+ *
* <p>
- * Only the following cases of <code>DataObject</code>s are valid in case
- * of a detached signature:
- *
+ * Only the following cases of <code>DataObject</code>s are valid in case of a
+ * detached signature:
+ *
* <ul>
* <li><code>Reference != null && Content == null</code>: Resolve the
- * <code>Reference</code> and use it as <code>DataObject</code>.
- * Set the <code>Reference</code> in the <code>DataObject</code> as well.</li>
+ * <code>Reference</code> and use it as <code>DataObject</code>. Set the
+ * <code>Reference</code> in the <code>DataObject</code> as well.</li>
* <li><code>Reference != null && Content != null</code>: The
- * <code>Content</code> will be used in the <code>DataObject</code>.
- * Set the <code>Reference</code> in the <code>DataObject</code> as well.</li>
+ * <code>Content</code> will be used in the <code>DataObject</code>. Set the
+ * <code>Reference</code> in the <code>DataObject</code> as well.</li>
* </ul>
* </p>
- *
+ *
* <p>
* All other cases will lead to an error.
* </p>
- *
- * @param singleSignatureInfo The <code>SingleSignatureInfo</code> object
- * containing the <code>DataObjectInfo</code> objects.
- * @param createTransformsProfiles A list of objects of type {@link CreateTransformsInfoProfileExplicit},
- * each representing the transforms info profile information for the corresponding <code>DataObject</code>.
- * @param signatureEnvironment The
- * @param idGen The ID generator for <code>DataObject</code> references.
+ *
+ * @param singleSignatureInfo The <code>SingleSignatureInfo</code> object
+ * containing the <code>DataObjectInfo</code>
+ * objects.
+ * @param createTransformsProfiles A list of objects of type
+ * {@link CreateTransformsInfoProfileExplicit},
+ * each representing the transforms info profile
+ * information for the corresponding
+ * <code>DataObject</code>.
+ * @param signatureEnvironment The
+ * @param idGen The ID generator for <code>DataObject</code>
+ * references.
* @return The <code>List</code> of <code>DataObject</code>s contained in the
- * given <code>singleSignatureInfo</code>.
- * @throws MOASystemException A system error occurred building the data
- * objects.
- * @throws MOAApplicationException An error occurred building the data
- * objects.
+ * given <code>singleSignatureInfo</code>.
+ * @throws MOASystemException A system error occurred building the data
+ * objects.
+ * @throws MOAApplicationException An error occurred building the data objects.
*/
private List buildDataObjectList(
- SingleSignatureInfo singleSignatureInfo,
- List createTransformsProfiles,
- XMLDataObject signatureEnvironment,
- IdGenerator idGen)
- throws MOASystemException, MOAApplicationException {
-
- List dataObjInfos = singleSignatureInfo.getDataObjectInfos();
- List dataObjects = new ArrayList();
+ SingleSignatureInfo singleSignatureInfo,
+ List createTransformsProfiles,
+ XMLDataObject signatureEnvironment,
+ IdGenerator idGen)
+ throws MOASystemException, MOAApplicationException {
+
+ final List dataObjInfos = singleSignatureInfo.getDataObjectInfos();
+ final List dataObjects = new ArrayList();
Iterator dtIter;
- Iterator ctpIter = createTransformsProfiles.iterator();
+ final Iterator ctpIter = createTransformsProfiles.iterator();
- for (dtIter = dataObjInfos.iterator(); dtIter.hasNext();)
- {
- DataObjectInfo dataObjInfo = (DataObjectInfo) dtIter.next();
- String structure = dataObjInfo.getStructure();
-
- CreateTransformsInfoProfileExplicit transformsProfile =
- (CreateTransformsInfoProfileExplicit) ctpIter.next();
- MetaInfo finalDataMetaInfo = transformsProfile.getCreateTransformsInfo().getFinalDataMetaInfo();
+ for (dtIter = dataObjInfos.iterator(); dtIter.hasNext();) {
+ final DataObjectInfo dataObjInfo = (DataObjectInfo) dtIter.next();
+ final String structure = dataObjInfo.getStructure();
+
+ final CreateTransformsInfoProfileExplicit transformsProfile =
+ (CreateTransformsInfoProfileExplicit) ctpIter.next();
+ final MetaInfo finalDataMetaInfo = transformsProfile.getCreateTransformsInfo().getFinalDataMetaInfo();
if (DataObjectInfo.STRUCTURE_ENVELOPING.equals(structure)) {
dataObjects.add(
- buildEnvelopingDataObject(
- dataObjInfo.getDataObject(),
- finalDataMetaInfo,
- idGen.uniqueId()));
+ buildEnvelopingDataObject(
+ dataObjInfo.getDataObject(),
+ finalDataMetaInfo,
+ idGen.uniqueId()));
} else if (DataObjectInfo.STRUCTURE_DETACHED.equals(structure)) {
dataObjects.add(
- buildDetachedDataObject(
- dataObjInfo.getDataObject(),
- finalDataMetaInfo,
- signatureEnvironment,
- idGen.uniqueId()));
+ buildDetachedDataObject(
+ dataObjInfo.getDataObject(),
+ finalDataMetaInfo,
+ signatureEnvironment,
+ idGen.uniqueId()));
} else {
throw new MOAApplicationException("1103", new Object[] { structure });
}
@@ -406,126 +410,128 @@ public class XMLSignatureCreationInvoker {
}
/**
- * Build a <code>DataObject</code> to be used in an enveloping
- * signature.
- *
- * @param content The <code>Content</code> object containing the data object.
- * <code>ContentOptionalRefType</code>.
- * @param finalDataMetaInfo The meta information corresponding with <code>content</code>.
- * @param referenceID The reference ID to use in the signature for the
- * <code>DataObject</code> created.
+ * Build a <code>DataObject</code> to be used in an enveloping signature.
+ *
+ * @param content The <code>Content</code> object containing the data
+ * object. <code>ContentOptionalRefType</code>.
+ * @param finalDataMetaInfo The meta information corresponding with
+ * <code>content</code>.
+ * @param referenceID The reference ID to use in the signature for the
+ * <code>DataObject</code> created.
* @return The <code>DataObject</code> representing the data contained in
- * <code>dataObjectElem</code>.
- * @throws MOAApplicationException An error occurred during the creation of
- * the <code>DataObject</code>.
- * @throws MOASystemException A system error occurred during the creation of
- * the <code>DataObject</code>.
+ * <code>dataObjectElem</code>.
+ * @throws MOAApplicationException An error occurred during the creation of the
+ * <code>DataObject</code>.
+ * @throws MOASystemException A system error occurred during the creation
+ * of the <code>DataObject</code>.
*/
private DataObject buildEnvelopingDataObject(
- Content content,
- MetaInfo finalDataMetaInfo,
- String referenceID)
- throws MOASystemException, MOAApplicationException {
+ Content content,
+ MetaInfo finalDataMetaInfo,
+ String referenceID)
+ throws MOASystemException, MOAApplicationException {
- DataObjectFactory factory = DataObjectFactory.getInstance();
+ final DataObjectFactory factory = DataObjectFactory.getInstance();
DataObject dataObject;
dataObject =
- factory.createFromContentOptionalRefType(
- content,
- finalDataMetaInfo,
- referenceID,
- false,
- false,
- true,
- false);
+ factory.createFromContentOptionalRefType(
+ content,
+ finalDataMetaInfo,
+ referenceID,
+ false,
+ false,
+ true,
+ false);
return dataObject;
}
/**
* Build a <code>DataObject</code> to be used in a detached signature.
- *
- * @param content The <code>Content</code> object containing an the data.
- * @param finalDataMetaInfo The meta information corresponding with <code>content</code>.
+ *
+ * @param content The <code>Content</code> object containing an the
+ * data.
+ * @param finalDataMetaInfo The meta information corresponding with
+ * <code>content</code>.
* @param signatureEnvironment The signature environment where the signature
- * will be inserted.
- * @param referenceID The reference ID to use in the signature for the
- * <code>DataObject</code> created.
+ * will be inserted.
+ * @param referenceID The reference ID to use in the signature for the
+ * <code>DataObject</code> created.
* @return The <code>DataObject</code> representing the data contained in
- * <code>dataObjectElem</code>.
- * @throws MOAApplicationException An error occurred during the creation of
- * the <code>DataObject</code>.
- * @throws MOASystemException A system error occurred during the creation of
- * the <code>DataObject</code>.
+ * <code>dataObjectElem</code>.
+ * @throws MOAApplicationException An error occurred during the creation of the
+ * <code>DataObject</code>.
+ * @throws MOASystemException A system error occurred during the creation
+ * of the <code>DataObject</code>.
*/
private DataObject buildDetachedDataObject(
- Content content,
- MetaInfo finalDataMetaInfo,
- XMLDataObject signatureEnvironment,
- String referenceID)
- throws MOASystemException, MOAApplicationException {
-
- String reference = content.getReference();
- DataObjectFactory factory = DataObjectFactory.getInstance();
+ Content content,
+ MetaInfo finalDataMetaInfo,
+ XMLDataObject signatureEnvironment,
+ String referenceID)
+ throws MOASystemException, MOAApplicationException {
+
+ final String reference = content.getReference();
+ final DataObjectFactory factory = DataObjectFactory.getInstance();
DataObject dataObject;
if (reference == null) {
throw new MOAApplicationException("1102", null);
} else if ("".equals(reference) || reference.startsWith("#")) {
dataObject =
- factory.createFromSignatureEnvironment(
- signatureEnvironment.getElement(),
- reference,
- referenceID);
+ factory.createFromSignatureEnvironment(
+ signatureEnvironment.getElement(),
+ reference,
+ referenceID);
} else {
dataObject =
- factory.createFromContentOptionalRefType(
- content,
- finalDataMetaInfo,
- referenceID,
- true,
- false,
- true,
- false);
+ factory.createFromContentOptionalRefType(
+ content,
+ finalDataMetaInfo,
+ referenceID,
+ true,
+ false,
+ true,
+ false);
}
return dataObject;
}
/**
* Build the signature parent element.
- *
- * @param signatureEnvironment The signature environment containing the
- * document in which to insert the signature.
- * @param singleSignatureInfo The <code>SingleSignatureInfo</code>
- * containing the signature parent element.
- * @return An <code>XMLDataObject</code> containing the signature parent
- * element or <code>null</code>, if the <code>CreateSignatureInfo</code> is
- * <code>null</code>.
- * @throws MOAApplicationException An error occurred during the creation of
- * the signature parent.
+ *
+ * @param signatureEnvironment The signature environment containing the document
+ * in which to insert the signature.
+ * @param singleSignatureInfo The <code>SingleSignatureInfo</code> containing
+ * the signature parent element.
+ * @return An <code>XMLDataObject</code> containing the signature parent element
+ * or <code>null</code>, if the <code>CreateSignatureInfo</code> is
+ * <code>null</code>.
+ * @throws MOAApplicationException An error occurred during the creation of the
+ * signature parent.
*/
private XMLDataObject buildSignatureParentElement(
- Element signatureEnvironment,
- SingleSignatureInfo singleSignatureInfo)
- throws MOAApplicationException {
+ Element signatureEnvironment,
+ SingleSignatureInfo singleSignatureInfo)
+ throws MOAApplicationException {
- CreateSignatureInfo createInfo =
- singleSignatureInfo.getCreateSignatureInfo();
+ final CreateSignatureInfo createInfo =
+ singleSignatureInfo.getCreateSignatureInfo();
// evaluate the CreateSignatureLocation
if (createInfo != null) {
- TransactionContext context =
- TransactionContextManager.getInstance().getTransactionContext();
- ConfigurationProvider config = context.getConfiguration();
- CreateSignatureEnvironmentProfileExplicit createProfile =
- ProfileMapper.mapCreateSignatureEnvironmentProfile(
- createInfo.getCreateSignatureEnvironmentProfile(),
- config);
- CreateSignatureLocation location =
- createProfile.getCreateSignatureLocation();
- Element signatureParent =
- InvokerUtils.evaluateSignatureLocation(signatureEnvironment, location);
+ final TransactionContext context =
+ TransactionContextManager.getInstance().getTransactionContext();
+ final ConfigurationProvider config = context.getConfiguration();
+ final CreateSignatureEnvironmentProfileExplicit createProfile =
+ ProfileMapper.mapCreateSignatureEnvironmentProfile(
+ createInfo.getCreateSignatureEnvironmentProfile(),
+ config);
+ final CreateSignatureLocation location =
+ createProfile.getCreateSignatureLocation();
+ final Element signatureParent =
+ InvokerUtils.evaluateSignatureLocation(signatureEnvironment, location);
return new XMLDataObjectImpl(signatureParent);
} else {
@@ -534,31 +540,31 @@ public class XMLSignatureCreationInvoker {
}
/**
- * Get the supplements contained in the
- * <code>CreateSignatureEnvironmentProfile</code> of the given
+ * Get the supplements contained in the
+ * <code>CreateSignatureEnvironmentProfile</code> of the given
* <code>SingleSignatureInfo</code>.
- *
- * @param singleSigInfo The <code>SingleSignatureInfo</code> from which
- * to extract the supplements.
- * @return A <code>List</code> of <code>XMLDataObjectAssociation</code>s
- * or <code>null</code>, if the <code>singleSigInfo</code> does not contain
- * supplements.
- * @throws MOAApplicationException An error occurred parsing the
- * <code>CreateSignatureEnvironmentProfile</code>.
+ *
+ * @param singleSigInfo The <code>SingleSignatureInfo</code> from which to
+ * extract the supplements.
+ * @return A <code>List</code> of <code>XMLDataObjectAssociation</code>s or
+ * <code>null</code>, if the <code>singleSigInfo</code> does not contain
+ * supplements.
+ * @throws MOAApplicationException An error occurred parsing the
+ * <code>CreateSignatureEnvironmentProfile</code>.
*/
private List getCreateSignatureEnvironmentProfileSupplements(SingleSignatureInfo singleSigInfo)
- throws MOAApplicationException {
- CreateSignatureInfo sigInfo = singleSigInfo.getCreateSignatureInfo();
+ throws MOAApplicationException {
+ final CreateSignatureInfo sigInfo = singleSigInfo.getCreateSignatureInfo();
if (sigInfo != null) {
- TransactionContext context =
- TransactionContextManager.getInstance().getTransactionContext();
- ConfigurationProvider config = context.getConfiguration();
- CreateSignatureEnvironmentProfileExplicit profile =
- ProfileMapper.mapCreateSignatureEnvironmentProfile(
- sigInfo.getCreateSignatureEnvironmentProfile(),
- config);
- List supplements = profile.getSupplements();
+ final TransactionContext context =
+ TransactionContextManager.getInstance().getTransactionContext();
+ final ConfigurationProvider config = context.getConfiguration();
+ final CreateSignatureEnvironmentProfileExplicit profile =
+ ProfileMapper.mapCreateSignatureEnvironmentProfile(
+ sigInfo.getCreateSignatureEnvironmentProfile(),
+ config);
+ final List supplements = profile.getSupplements();
return supplements;
}
@@ -567,18 +573,18 @@ public class XMLSignatureCreationInvoker {
/**
* Build the list of additional signed properties.
- *
+ *
* Based on the generic configuration setting
- * <code>ConfigurationProvider.TEST_SIGNING_TIME_PROPERTY</code>, a
- * constant <code>SigningTime</code> will be added to the properties.
- *
+ * <code>ConfigurationProvider.TEST_SIGNING_TIME_PROPERTY</code>, a constant
+ * <code>SigningTime</code> will be added to the properties.
+ *
* @return The <code>List</code> of additional signed properties.
*/
private List buildAdditionalSignedProperties() {
- TransactionContext context =
- TransactionContextManager.getInstance().getTransactionContext();
- ConfigurationProvider config = context.getConfiguration();
- List additionalSignedProperties = Collections.EMPTY_LIST;
+ final TransactionContext context =
+ TransactionContextManager.getInstance().getTransactionContext();
+ final ConfigurationProvider config = context.getConfiguration();
+ final List additionalSignedProperties = Collections.EMPTY_LIST;
return additionalSignedProperties;
}