From cdba05ec2b9386baa5ee247472f60c91c8c2ec2c Mon Sep 17 00:00:00 2001
From: OZG-Cloud Team <noreply@ozg-sh.de>
Date: Wed, 3 Apr 2024 12:25:42 +0200
Subject: [PATCH] OZG-4770 pass trust level

---
 .../eingang/common/formdata/ServiceKonto.java      |  1 +
 .../common/formdata/ServiceKontoTestFactory.java   |  4 +++-
 pom.xml                                            |  2 +-
 .../eingang/router/ServiceKontoMapper.java         |  4 ++++
 .../eingang/router/ServiceKontoMapperTest.java     | 14 ++++++++++++++
 5 files changed, 23 insertions(+), 2 deletions(-)

diff --git a/common/src/main/java/de/ozgcloud/eingang/common/formdata/ServiceKonto.java b/common/src/main/java/de/ozgcloud/eingang/common/formdata/ServiceKonto.java
index 79357045..ab2f7588 100644
--- a/common/src/main/java/de/ozgcloud/eingang/common/formdata/ServiceKonto.java
+++ b/common/src/main/java/de/ozgcloud/eingang/common/formdata/ServiceKonto.java
@@ -13,6 +13,7 @@ public class ServiceKonto {
 	private String type;
 	@Singular
 	private List<PostfachAddress> postfachAddresses;
+	private String trustLevel;
 
 	@Getter
 	@Builder
diff --git a/common/src/test/java/de/ozgcloud/eingang/common/formdata/ServiceKontoTestFactory.java b/common/src/test/java/de/ozgcloud/eingang/common/formdata/ServiceKontoTestFactory.java
index eaa45e45..9cc248f5 100644
--- a/common/src/test/java/de/ozgcloud/eingang/common/formdata/ServiceKontoTestFactory.java
+++ b/common/src/test/java/de/ozgcloud/eingang/common/formdata/ServiceKontoTestFactory.java
@@ -3,14 +3,16 @@ package de.ozgcloud.eingang.common.formdata;
 public class ServiceKontoTestFactory {
 
 	public static final String TYPE = "OSI";
+	public static final String TRUST_LEVEL = "STORK-QAA-Level-2";
 
 	public static ServiceKonto create() {
 		return createBuilder().build();
 	}
 
-	private static ServiceKonto.ServiceKontoBuilder createBuilder() {
+	public static ServiceKonto.ServiceKontoBuilder createBuilder() {
 		return ServiceKonto.builder()
 				.type(TYPE)
+				.trustLevel(TRUST_LEVEL)
 				.postfachAddress(PostfachAddressTestFactory.create());
 	}
 }
diff --git a/pom.xml b/pom.xml
index 0129beaf..f923b6f8 100644
--- a/pom.xml
+++ b/pom.xml
@@ -54,7 +54,7 @@
 	</modules>
 
 	<properties>
-		<vorgang-manager.version>2.4.0</vorgang-manager.version>
+		<vorgang-manager.version>2.6.0-SNAPSHOT</vorgang-manager.version>
 
 		<jsoup.version>1.14.3</jsoup.version>
 		<xmlschema.version>2.3.0</xmlschema.version>
diff --git a/router/src/main/java/de/ozgcloud/eingang/router/ServiceKontoMapper.java b/router/src/main/java/de/ozgcloud/eingang/router/ServiceKontoMapper.java
index e2f2ac24..d822731a 100644
--- a/router/src/main/java/de/ozgcloud/eingang/router/ServiceKontoMapper.java
+++ b/router/src/main/java/de/ozgcloud/eingang/router/ServiceKontoMapper.java
@@ -2,6 +2,7 @@ package de.ozgcloud.eingang.router;
 
 import java.util.List;
 import java.util.Map;
+import java.util.Optional;
 
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
@@ -18,6 +19,8 @@ import de.ozgcloud.vorgang.vorgang.GrpcServiceKonto;
 @Component
 class ServiceKontoMapper {
 
+	static final String DEFAULT_TRUST_LEVEL = "STORK-QAA-Level-1";
+
 	@Autowired
 	private GrpcObjectMapper grpcObjectMapper;
 
@@ -25,6 +28,7 @@ class ServiceKontoMapper {
 		return GrpcServiceKonto.newBuilder()
 				.setType(serviceKonto.getType())
 				.addAllPostfachAddresses(getPostfachAddresses(serviceKonto))
+				.setTrustLevel(Optional.ofNullable(serviceKonto.getTrustLevel()).orElse(DEFAULT_TRUST_LEVEL))
 				.build();
 	}
 
diff --git a/router/src/test/java/de/ozgcloud/eingang/router/ServiceKontoMapperTest.java b/router/src/test/java/de/ozgcloud/eingang/router/ServiceKontoMapperTest.java
index 8eacf40f..3b521610 100644
--- a/router/src/test/java/de/ozgcloud/eingang/router/ServiceKontoMapperTest.java
+++ b/router/src/test/java/de/ozgcloud/eingang/router/ServiceKontoMapperTest.java
@@ -64,6 +64,20 @@ class ServiceKontoMapperTest {
 			assertThat(serviceKonto.getType()).isEqualTo(ServiceKontoTestFactory.TYPE);
 		}
 
+		@Test
+		void shouldContainsDefaultTrustLevel() {
+			var serviceKonto = mapper.toServiceKonto(ServiceKontoTestFactory.createBuilder().trustLevel(null).build());
+
+			assertThat(serviceKonto.getTrustLevel()).isEqualTo(ServiceKontoMapper.DEFAULT_TRUST_LEVEL);
+		}
+
+		@Test
+		void shouldContainsTrustLevel() {
+			var serviceKonto = getServiceKontoFromMappedEingang();
+
+			assertThat(serviceKonto.getTrustLevel()).isEqualTo(ServiceKontoTestFactory.TRUST_LEVEL);
+		}
+
 		@DisplayName("postfach address")
 		@Nested
 		class TestPostfachAddress {
-- 
GitLab