aboutsummaryrefslogtreecommitdiff
path: root/pdf-as-lib/src/main/java/at/knowcenter/wag/egov/egiz/sig/connectors/MOAConnector.java
diff options
context:
space:
mode:
Diffstat (limited to 'pdf-as-lib/src/main/java/at/knowcenter/wag/egov/egiz/sig/connectors/MOAConnector.java')
-rw-r--r--pdf-as-lib/src/main/java/at/knowcenter/wag/egov/egiz/sig/connectors/MOAConnector.java20
1 files changed, 19 insertions, 1 deletions
diff --git a/pdf-as-lib/src/main/java/at/knowcenter/wag/egov/egiz/sig/connectors/MOAConnector.java b/pdf-as-lib/src/main/java/at/knowcenter/wag/egov/egiz/sig/connectors/MOAConnector.java
index d413a29..a56f807 100644
--- a/pdf-as-lib/src/main/java/at/knowcenter/wag/egov/egiz/sig/connectors/MOAConnector.java
+++ b/pdf-as-lib/src/main/java/at/knowcenter/wag/egov/egiz/sig/connectors/MOAConnector.java
@@ -646,6 +646,13 @@ public class MOAConnector implements Connector
Pattern cert_qualified_p = Pattern.compile("<QualifiedCertificate/>");
Matcher cert_qualified_m = cert_qualified_p.matcher(xmlResponse);
// [tknall] stop qualified certificate
+
+ String secureSignatureCreationDevice_certificate = "<SecureSignatureCreationDevice Source=\"Certificate\"/>";//TODO use XPATH
+ String secureSignatureCreationDevice_tsl = "<SecureSignatureCreationDevice Source=\"TSL\"/>";//TODO use XPATH
+ Pattern issuerCountryCode_p_s = Pattern.compile("<IssuerCountryCode>");
+ Pattern issuerCountryCode_p_e = Pattern.compile("</IssuerCountryCode>");
+ Matcher issuerCountryCode_m_s = issuerCountryCode_p_s.matcher(xmlResponse);
+ Matcher issuerCountryCode_m_e = issuerCountryCode_p_e.matcher(xmlResponse);
Pattern sig_chk_p_s = Pattern.compile("<SignatureCheck>");
Pattern sig_chk_p_e = Pattern.compile("</SignatureCheck>");
@@ -682,7 +689,18 @@ public class MOAConnector implements Connector
// [tknall] start qualified certificate
sig_res.setQualifiedCertificate(cert_qualified_m.find());
// [tknall] stop qualified certificate
-
+
+ sig_res.setSecureSignatureCreationDevice(null);//TODO use XPATH
+ if(xmlResponse.contains(secureSignatureCreationDevice_tsl))
+ sig_res.setSecureSignatureCreationDevice("TSL");
+ if(xmlResponse.contains(secureSignatureCreationDevice_certificate))
+ sig_res.setSecureSignatureCreationDevice("Certificate");
+
+ try{
+ String issuerCountry = xmlResponse.substring(issuerCountryCode_m_s.end(), issuerCountryCode_m_e.start());
+ sig_res.setIssuerCountryCode(issuerCountry);
+ }catch(Exception e){logger_.debug("IssuerCountryCode not found in MOA response");}
+
// public authority
Pattern publicAuthority_p = Pattern.compile("<PublicAuthority/>");
Matcher publicAuthority_m = publicAuthority_p.matcher(xmlResponse);