From 46445e3d9f82b8f766c39cb14d93869d99a0eb4b Mon Sep 17 00:00:00 2001
From: OZGCloud <ozgcloud@mgm-tp.com>
Date: Tue, 25 Apr 2023 08:24:06 +0200
Subject: [PATCH] OZG-3665 code cleanup

---
 .../xta/XtaZustaendigeStelleMapper.java       |  2 +-
 xta-adapter/pom.xml                           |  3 +++
 .../ozgcloud/eingang/xta/XtaProperties.java   |  7 ++++---
 .../xta/XtaRemoteServiceConfiguration.java    | 19 ++-----------------
 .../de/ozgcloud/eingang/xta/XtaRunner.java    |  9 ++++++---
 .../src/main/resources/application-local.yml  |  1 +
 .../src/main/resources/application.yml        |  2 +-
 7 files changed, 18 insertions(+), 25 deletions(-)

diff --git a/semantik-adapter/src/main/java/de/itvsh/kop/eingangsadapter/semantik/enginebased/xta/XtaZustaendigeStelleMapper.java b/semantik-adapter/src/main/java/de/itvsh/kop/eingangsadapter/semantik/enginebased/xta/XtaZustaendigeStelleMapper.java
index 6df7b7fe8..0d7d18e95 100644
--- a/semantik-adapter/src/main/java/de/itvsh/kop/eingangsadapter/semantik/enginebased/xta/XtaZustaendigeStelleMapper.java
+++ b/semantik-adapter/src/main/java/de/itvsh/kop/eingangsadapter/semantik/enginebased/xta/XtaZustaendigeStelleMapper.java
@@ -6,7 +6,7 @@ import de.itvsh.kop.eingangsadapter.common.formdata.FormData;
 import de.itvsh.kop.eingangsadapter.common.formdata.ZustaendigeStelle;
 
 @Component
-public class XtaZustaendigeStelleMapper implements XtaEngineBasedMapper {
+class XtaZustaendigeStelleMapper implements XtaEngineBasedMapper {
 
 	static final String ORGAID_FOERDERBANK = "9797773";
 
diff --git a/xta-adapter/pom.xml b/xta-adapter/pom.xml
index 11396424c..c6eae8e48 100644
--- a/xta-adapter/pom.xml
+++ b/xta-adapter/pom.xml
@@ -8,9 +8,11 @@
 	<artifactId>xta-adapter</artifactId>
 	<name>Eingangs Adapter - XTA</name>
 	<packaging>jar</packaging>
+	
 	<properties>
 		<spring-boot.build-image.imageName>docker.ozg-sh.de/xta-adapter:build-latest</spring-boot.build-image.imageName>
 	</properties>
+	
 	<dependencies>
 		<dependency>
 			<groupId>org.springframework.boot</groupId>
@@ -84,6 +86,7 @@
 			<optional>true</optional>
 		</dependency>
 	</dependencies>
+	
 	<build>
 		<plugins>
 			<plugin>
diff --git a/xta-adapter/src/main/java/de/ozgcloud/eingang/xta/XtaProperties.java b/xta-adapter/src/main/java/de/ozgcloud/eingang/xta/XtaProperties.java
index 4f06606c7..82660abaa 100644
--- a/xta-adapter/src/main/java/de/ozgcloud/eingang/xta/XtaProperties.java
+++ b/xta-adapter/src/main/java/de/ozgcloud/eingang/xta/XtaProperties.java
@@ -3,14 +3,15 @@ package de.ozgcloud.eingang.xta;
 import java.math.BigInteger;
 import java.net.URI;
 
+import jakarta.validation.constraints.NotEmpty;
+import jakarta.validation.constraints.NotNull;
+
 import org.springframework.boot.context.properties.ConfigurationProperties;
 import org.springframework.context.annotation.Configuration;
 import org.springframework.core.io.Resource;
 import org.springframework.stereotype.Component;
 import org.springframework.validation.annotation.Validated;
 
-import jakarta.validation.constraints.NotEmpty;
-import jakarta.validation.constraints.NotNull;
 import lombok.Getter;
 import lombok.Setter;
 import lombok.ToString;
@@ -29,7 +30,7 @@ class XtaProperties {
 
 	private KeyStore keyStore;
 	private Actions actions;
-
+	@NotEmpty
 	private String identifier;
 }
 
diff --git a/xta-adapter/src/main/java/de/ozgcloud/eingang/xta/XtaRemoteServiceConfiguration.java b/xta-adapter/src/main/java/de/ozgcloud/eingang/xta/XtaRemoteServiceConfiguration.java
index 501eafac9..e180c5c82 100644
--- a/xta-adapter/src/main/java/de/ozgcloud/eingang/xta/XtaRemoteServiceConfiguration.java
+++ b/xta-adapter/src/main/java/de/ozgcloud/eingang/xta/XtaRemoteServiceConfiguration.java
@@ -8,10 +8,8 @@ import java.security.KeyStore;
 import java.security.KeyStoreException;
 import java.security.NoSuchAlgorithmException;
 import java.security.cert.CertificateException;
-import java.security.cert.X509Certificate;
 
 import javax.net.ssl.KeyManagerFactory;
-import javax.net.ssl.X509TrustManager;
 
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.boot.webservices.client.WebServiceTemplateCustomizer;
@@ -97,7 +95,8 @@ public class XtaRemoteServiceConfiguration {
 
 			var messageSender1 = new HttpsUrlConnectionMessageSender();
 			messageSender1.setKeyManagers(keyManagerFactory.getKeyManagers());
-			messageSender1.setHostnameVerifier((hostname, session) -> true); // NOSONAR only for test/local
+			messageSender1.setHostnameVerifier((hostname, session) -> true); // NOSONAR hostname verification is senseless due missing DNS for
+																				// Dataport XTA Server
 
 			return messageSender1;
 		} catch (Exception e) {
@@ -116,18 +115,4 @@ public class XtaRemoteServiceConfiguration {
 		return keyStore;
 	}
 
-	static class UnTrustworthyTrustManager implements X509TrustManager {
-		@Override
-		public void checkClientTrusted(X509Certificate[] arg0, String arg1) throws CertificateException { // NOSONAR only for test/local
-		}
-
-		@Override
-		public void checkServerTrusted(X509Certificate[] arg0, String arg1) throws CertificateException { // NOSONAR only for test/local
-		}
-
-		@Override
-		public X509Certificate[] getAcceptedIssuers() {
-			return new X509Certificate[0];
-		}
-	}
 }
diff --git a/xta-adapter/src/main/java/de/ozgcloud/eingang/xta/XtaRunner.java b/xta-adapter/src/main/java/de/ozgcloud/eingang/xta/XtaRunner.java
index 65a292e9e..6b8ea3cc6 100644
--- a/xta-adapter/src/main/java/de/ozgcloud/eingang/xta/XtaRunner.java
+++ b/xta-adapter/src/main/java/de/ozgcloud/eingang/xta/XtaRunner.java
@@ -2,7 +2,6 @@ package de.ozgcloud.eingang.xta;
 
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.context.ApplicationListener;
-import org.springframework.context.annotation.Profile;
 import org.springframework.context.event.ContextRefreshedEvent;
 import org.springframework.stereotype.Component;
 
@@ -13,7 +12,6 @@ import lombok.extern.log4j.Log4j2;
 
 @Log4j2
 @Component
-@Profile("!itcase")
 class XtaRunner implements ApplicationListener<ContextRefreshedEvent> {
 
 	@Autowired
@@ -28,11 +26,16 @@ class XtaRunner implements ApplicationListener<ContextRefreshedEvent> {
 	}
 
 	void runGetXtaMessages() {
-		service.getMessagesAsFormData().forEach(this::processAndAcknowledge);
+		try {
+			service.getMessagesAsFormData().forEach(this::processAndAcknowledge);
+		} catch (RuntimeException e) {
+			LOG.error("Error fetch XTA Message List.", e);
+		}
 	}
 
 	private void processAndAcknowledge(@NonNull FormData formData) {
 		try {
+			LOG.info("Process XTA-Message '{}'.", formData.getHeader().getRequestId());
 			semantikAdapter.processFormData(formData);
 			service.acknowledgeReceive(XtaMessageId.from(formData.getHeader().getRequestId()));
 		} catch (RuntimeException e) {
diff --git a/xta-adapter/src/main/resources/application-local.yml b/xta-adapter/src/main/resources/application-local.yml
index 366b83675..e5fa8058a 100644
--- a/xta-adapter/src/main/resources/application-local.yml
+++ b/xta-adapter/src/main/resources/application-local.yml
@@ -1,5 +1,6 @@
 ozgcloud:
   xta:
+    identifier: gae:jens.reese@mgm-tp.com
     server:
       address: localhost:3000
       name: LI33-0005
diff --git a/xta-adapter/src/main/resources/application.yml b/xta-adapter/src/main/resources/application.yml
index 54136df49..007ad9139 100644
--- a/xta-adapter/src/main/resources/application.yml
+++ b/xta-adapter/src/main/resources/application.yml
@@ -1,6 +1,6 @@
 logging:
   level:
-    ROOT: INFO
+    ROOT: WARN
     '[de.ozgcloud]': INFO
     '[org.springframework.ws]': WARN
   config: classpath:log4j2-local.xml
-- 
GitLab