From 36df570f6c24d60498bb8c040ffbaa4ad0f7583f Mon Sep 17 00:00:00 2001 From: gregor Date: Tue, 26 Jul 2005 14:43:17 +0000 Subject: =?UTF-8?q?L=C3=B6sung=20f=C3=BCr=20Bug=20232=20implementiert.=20N?= =?UTF-8?q?och=20nicht=20final=20getestet.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: https://joinup.ec.europa.eu/svn/moa-idspss/trunk@406 d688527b-c9ab-4aba-bd8d-4036d912da1d --- .../xmlbind/VerifyXMLSignatureResponseBuilder.java | 40 ++++++++++++++-------- 1 file changed, 25 insertions(+), 15 deletions(-) (limited to 'spss.server/src/at/gv/egovernment/moa/spss/api/xmlbind/VerifyXMLSignatureResponseBuilder.java') diff --git a/spss.server/src/at/gv/egovernment/moa/spss/api/xmlbind/VerifyXMLSignatureResponseBuilder.java b/spss.server/src/at/gv/egovernment/moa/spss/api/xmlbind/VerifyXMLSignatureResponseBuilder.java index 56bcf63fa..960d9571d 100644 --- a/spss.server/src/at/gv/egovernment/moa/spss/api/xmlbind/VerifyXMLSignatureResponseBuilder.java +++ b/spss.server/src/at/gv/egovernment/moa/spss/api/xmlbind/VerifyXMLSignatureResponseBuilder.java @@ -17,6 +17,7 @@ import at.gv.egovernment.moa.spss.MOASystemException; import at.gv.egovernment.moa.spss.api.common.Content; import at.gv.egovernment.moa.spss.api.common.ContentBinary; import at.gv.egovernment.moa.spss.api.common.ContentXML; +import at.gv.egovernment.moa.spss.api.common.InputData; import at.gv.egovernment.moa.spss.api.xmlverify.ManifestRefsCheckResult; import at.gv.egovernment.moa.spss.api.xmlverify.ReferencesCheckResult; import at.gv.egovernment.moa.spss.api.xmlverify.VerifyXMLSignatureResponse; @@ -78,8 +79,8 @@ public class VerifyXMLSignatureResponseBuilder { responseData = response.getHashInputDatas(); if (responseData != null && !responseData.isEmpty()) { for (iter = responseData.iterator(); iter.hasNext();) { - Content content = (Content) iter.next(); - addContent("HashInputData", content); + InputData inputData = (InputData) iter.next(); + addContent("HashInputData", inputData); } } @@ -87,8 +88,8 @@ public class VerifyXMLSignatureResponseBuilder { responseData = response.getReferenceInputDatas(); if (responseData != null && !responseData.isEmpty()) { for (iter = responseData.iterator(); iter.hasNext();) { - Content content = (Content) iter.next(); - addContent("ReferenceInputData", content); + InputData inputData = (InputData) iter.next(); + addContent("ReferenceInputData", inputData); } } @@ -127,23 +128,32 @@ public class VerifyXMLSignatureResponseBuilder { * Add an element of type ContentBaseType to the response. * * @param elementName The name of the element. - * @param content The Content to add. Based on the type of - * the Content, either a Base64Content element - * or a XMLContent subelement will be added. A - * ContentBinary of type BinaryDataObject will be - * added as a Base64Content child element. - * ContentXML will be added as XMLContent child - * element. + * + * @param inputData The InputData to add. Based on the type of + * + * the InputData, either a Base64Content element + * or a XMLContent subelement will be added. An + * InputDataBinaryImpl will be added as a Base64Content + * child element. AnInputDataXMLImpl will be added as + * XMLContent child element. + * * @throws MOAApplicationException An error occurred adding the content. */ - private void addContent(String elementName, Content content) + private void addContent(String elementName, InputData inputData) throws MOAApplicationException { Element contentElem = responseDoc.createElementNS(MOA_NS_URI, elementName); - switch (content.getContentType()) { + contentElem.setAttributeNS(null, "PartOf", inputData.getPartOf()); + if (inputData.getReferringReferenceNumber() != InputData.REFERER_NONE_) + contentElem.setAttributeNS( + null, + "ReferringSigReference", + Integer.toString(inputData.getReferringReferenceNumber())); + + switch (inputData.getContentType()) { case Content.XML_CONTENT : - ContentXML contentXml = (ContentXML) content; + ContentXML contentXml = (ContentXML) inputData; NodeList nodes = contentXml.getXMLContent(); Element xmlElem; int i; @@ -161,7 +171,7 @@ public class VerifyXMLSignatureResponseBuilder { case Content.BINARY_CONTENT : Element binaryElem = responseDoc.createElementNS(MOA_NS_URI, "Base64Content"); - ContentBinary contentBinary = (ContentBinary) content; + ContentBinary contentBinary = (ContentBinary) inputData; String base64Str; try { -- cgit v1.2.3