From 61a2d23ef72630934c603fe9ffb96ebebff6ee09 Mon Sep 17 00:00:00 2001 From: netconomy Date: Thu, 29 Nov 2007 12:00:22 +0000 Subject: PDF-AS API git-svn-id: https://joinup.ec.europa.eu/svn/pdf-as/trunk@233 7b5415b0-85f9-ee4d-85bd-d5d0c3b42d1c --- .../moa/MOASoapWithAttachmentConnector.java | 64 +++++++++++++++------- 1 file changed, 43 insertions(+), 21 deletions(-) (limited to 'src/main/java/at/knowcenter/wag/egov/egiz/sig/connectors/moa/MOASoapWithAttachmentConnector.java') diff --git a/src/main/java/at/knowcenter/wag/egov/egiz/sig/connectors/moa/MOASoapWithAttachmentConnector.java b/src/main/java/at/knowcenter/wag/egov/egiz/sig/connectors/moa/MOASoapWithAttachmentConnector.java index 34bcdc6..4cb4ec2 100644 --- a/src/main/java/at/knowcenter/wag/egov/egiz/sig/connectors/moa/MOASoapWithAttachmentConnector.java +++ b/src/main/java/at/knowcenter/wag/egov/egiz/sig/connectors/moa/MOASoapWithAttachmentConnector.java @@ -4,12 +4,19 @@ package at.knowcenter.wag.egov.egiz.sig.connectors.moa; import java.security.cert.X509Certificate; +import java.text.DateFormat; +import java.text.ParseException; +import java.text.SimpleDateFormat; +import java.util.Date; import java.util.Properties; +import java.util.SimpleTimeZone; +import java.util.TimeZone; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import at.gv.egiz.pdfas.exceptions.ErrorCode; +import at.gv.egiz.pdfas.framework.ConnectorParameters; import at.knowcenter.wag.egov.egiz.cfg.SettingsReader; import at.knowcenter.wag.egov.egiz.exceptions.ConnectorException; import at.knowcenter.wag.egov.egiz.exceptions.SettingsException; @@ -25,7 +32,6 @@ import at.knowcenter.wag.egov.egiz.sig.connectors.bku.SignSignatureObject; import at.knowcenter.wag.egov.egiz.sig.sigid.DetachedLocRefMOAIdFormatter; import at.knowcenter.wag.egov.egiz.sig.sigkz.SigKZIDHelper; import at.knowcenter.wag.egov.egiz.tools.CodingHelper; -import at.knowcenter.wag.egov.egiz.tools.DebugHelper; import at.knowcenter.wag.egov.egiz.tools.FileHelper; /** @@ -46,12 +52,20 @@ public class MOASoapWithAttachmentConnector implements Connector protected static final String MULTIPART_LOC_REF_CONTENT = "formdata:fileupload"; //$NON-NLS-1$ + protected static final String RETURN_HASH_INPUT_DATA = ""; //$NON-NLS-1$ + + /** + * The connector parameters. + */ + protected ConnectorParameters params = null; + /** * The environemnt configuration of this connector containing templates and * other configurable elements. */ protected Environment environment = null; - + + /** * Constructor that builds the configuration environment for this connector * according to the given profile. @@ -61,17 +75,15 @@ public class MOASoapWithAttachmentConnector implements Connector * parameters defined in the configuration are used. *

* - * @param profile - * The profile from which the Environment should be assembled. - * @throws SettingsException - * f.e. - * @throws SignatureException + * @param connectorParameters + * The parameters for this connector. + * @throws ConnectorException * f.e. */ - public MOASoapWithAttachmentConnector(String profile) throws ConnectorException + public MOASoapWithAttachmentConnector(ConnectorParameters connectorParameters) throws ConnectorException { - - this.environment = new Environment(profile, MULTIPART_LOC_REF_CONTENT); + this.params = connectorParameters; + this.environment = new Environment(this.params.getProfileId(), MULTIPART_LOC_REF_CONTENT); } protected String prepareSignRequest(SignatureData data) throws ConnectorException @@ -176,7 +188,7 @@ public class MOASoapWithAttachmentConnector implements Connector String xml_content = null; if (!SigKZIDHelper.isMOASigned(so)) { - DetachedBKUConnector bku_connector = new DetachedBKUConnector(this.environment.getProfile(), "not needed here"); + DetachedBKUConnector bku_connector = new DetachedBKUConnector(this.params, "not needed here"); xml_content = bku_connector.prepareXMLContent(data, so); } else @@ -187,12 +199,22 @@ public class MOASoapWithAttachmentConnector implements Connector String verify_request_xml = verify_request_template.replaceFirst(TemplateReplaces.XML_CONTENT_REPLACE, xml_content); verify_request_xml = verify_request_xml.replaceFirst(TemplateReplaces.TRUST_PROFILE_ID_REPLACE, this.environment.getVerifyTrustProfileId()); verify_request_xml = verify_request_xml.replaceFirst(TemplateReplaces.LOC_REF_CONTENT_REPLACE, this.environment.getSignatureDataUrl()); + + String returnHashInputDataElement = ""; + if (this.params.isReturnHashInputData()) + { + returnHashInputDataElement = RETURN_HASH_INPUT_DATA; + } + verify_request_xml = verify_request_xml.replaceFirst(TemplateReplaces.RETURN_HASH_INPUT_DATA_REPLACE, returnHashInputDataElement); + + verify_request_xml = verify_request_xml.replaceFirst(TemplateReplaces.DATE_TIME_REPLACE, BKUHelper.formDateTimeElement(this.params.getVerificationTime())); + log.debug("\r\n\r\n" + verify_request_xml + "\r\n\r\n"); return verify_request_xml; } - + /** * Analyzes the verify response string. * @@ -297,20 +319,20 @@ public class MOASoapWithAttachmentConnector implements Connector try { // for performance measurement - long startTime = 0; - if (log.isInfoEnabled()) { - startTime = System.currentTimeMillis(); - } +// long startTime = 0; +// if (log.isInfoEnabled()) { +// startTime = System.currentTimeMillis(); +// } // Properties response_properties = MOASoapConnection.connectMOA(request_string, MOASoapConnection.SERVICE_SIGN, url); Properties response_properties = MOASoapConnection.doPostRequestMultipart(url,mode, request_string, data ); // for performance measurement - if (log.isInfoEnabled()) { - long endTime = System.currentTimeMillis(); - String toReport = "MOA-PROCESSING;-;-;" + (endTime - startTime) + ";"; - log.info(toReport); - } +// if (log.isInfoEnabled()) { +// long endTime = System.currentTimeMillis(); +// String toReport = "MOA-PROCESSING;-;-;" + (endTime - startTime) + ";"; +// log.info(toReport); +// } return response_properties; } -- cgit v1.2.3