diff options
Diffstat (limited to 'moaSig/moa-sig/src/main/java/at/gv/egovernment/moa/spss/server/webservice/binding/XMLCreateSignatureBindingImpl.java')
-rw-r--r-- | moaSig/moa-sig/src/main/java/at/gv/egovernment/moa/spss/server/webservice/binding/XMLCreateSignatureBindingImpl.java | 101 |
1 files changed, 0 insertions, 101 deletions
diff --git a/moaSig/moa-sig/src/main/java/at/gv/egovernment/moa/spss/server/webservice/binding/XMLCreateSignatureBindingImpl.java b/moaSig/moa-sig/src/main/java/at/gv/egovernment/moa/spss/server/webservice/binding/XMLCreateSignatureBindingImpl.java deleted file mode 100644 index 6656d51..0000000 --- a/moaSig/moa-sig/src/main/java/at/gv/egovernment/moa/spss/server/webservice/binding/XMLCreateSignatureBindingImpl.java +++ /dev/null @@ -1,101 +0,0 @@ -package at.gv.egovernment.moa.spss.server.webservice.binding; - -import java.io.IOException; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.Iterator; -import java.util.List; - -import javax.xml.transform.TransformerException; - -import at.gv.egiz.moasig.CreateXMLSignatureRequest; -import at.gv.egiz.moasig.CreateXMLSignatureResponseType; -import at.gv.egovernment.moa.spss.MOAApplicationException; -import at.gv.egovernment.moa.spss.api.SPSSFactory; -import at.gv.egovernment.moa.spss.api.xmlsign.CreateXMLSignatureResponse; -import at.gv.egovernment.moa.spss.api.xmlsign.CreateXMLSignatureResponseElement; -import at.gv.egovernment.moa.spss.api.xmlsign.ErrorResponse; -import at.gv.egovernment.moa.spss.api.xmlsign.SignatureEnvironmentResponse; -import at.gv.egovernment.moa.spss.server.webservice.XMLCreateSignatureBinding; -import at.gv.egovernment.moaspss.util.DOMUtils; - -public class XMLCreateSignatureBindingImpl implements XMLCreateSignatureBinding { - - /** The factory to create API objects. */ - private SPSSFactory factory; - - /** - * Create a new <code>CreateXMLSignatureRequestParser</code>. - */ - public XMLCreateSignatureBindingImpl() { - this.factory = SPSSFactory.getInstance(); - } - - @Override - public at.gv.egovernment.moa.spss.api.xmlsign.CreateXMLSignatureRequest buildXMLRequest( - CreateXMLSignatureRequest createXMLSignatureRequest) throws MOAApplicationException { - - String keyIdentifier = createXMLSignatureRequest.getKeyIdentifier(); - - TransformerUtils transformerUtils = new TransformerUtils(); - - List singleSignatureInfos = new ArrayList(); - - Iterator<at.gv.egiz.moasig.CreateXMLSignatureRequestType.SingleSignatureInfo> singleSignatureInfoIterator = createXMLSignatureRequest - .getSingleSignatureInfo().iterator(); - - while (singleSignatureInfoIterator.hasNext()) { - at.gv.egiz.moasig.CreateXMLSignatureRequestType.SingleSignatureInfo singleSignatureInfo = singleSignatureInfoIterator - .next(); - singleSignatureInfos.add(transformerUtils.buildSingleSignatureInfo(singleSignatureInfo)); - } - - return factory.createCreateXMLSignatureRequest(keyIdentifier, singleSignatureInfos); - } - - - - @Override - public CreateXMLSignatureResponseType buildXMLResponse(CreateXMLSignatureResponse response) throws MOAApplicationException { - CreateXMLSignatureResponseType createXMLSignatureResponseType = new CreateXMLSignatureResponseType(); - List responseObjects = response.getResponseElements(); - - Iterator responseIterator = responseObjects.iterator(); - - while(responseIterator.hasNext()) { - Object responseObject = responseIterator.next(); - - CreateXMLSignatureResponseElement responseElement = - (CreateXMLSignatureResponseElement) responseObject; - - switch (responseElement.getResponseType()) { - case CreateXMLSignatureResponseElement.SIGNATURE_ENVIRONMENT_RESPONSE : - SignatureEnvironmentResponse envResponse = - (SignatureEnvironmentResponse) responseElement; - byte[] signature; - try { - signature = DOMUtils.serializeNode(envResponse.getSignatureEnvironment(), "UTF-8"); - } catch (TransformerException e) { - throw new MOAApplicationException("Failed to write xml signature to response", null, e); - } catch (IOException e) { - throw new MOAApplicationException("Failed to write xml signature to response", null, e); - } - createXMLSignatureResponseType.getSignatureEnvironmentOrErrorResponse().add(signature); - break; - - case CreateXMLSignatureResponseElement.ERROR_RESPONSE : - ErrorResponse errorResponse = (ErrorResponse) responseElement; - - at.gv.egiz.moasig.ErrorResponseType errorResponseType = new at.gv.egiz.moasig.ErrorResponseType(); - errorResponseType.setErrorCode(BigInteger.valueOf(errorResponse.getErrorCode())); - errorResponseType.setInfo(errorResponse.getInfo()); - - createXMLSignatureResponseType.getSignatureEnvironmentOrErrorResponse().add(errorResponseType); - break; - } - } - - return createXMLSignatureResponseType; - } - -} |