From 38b96b7f37c152ab66f2b65777dcaef04988c9ad Mon Sep 17 00:00:00 2001
From: OZGCloud <ozgcloud@mgm-tp.com>
Date: Sat, 18 May 2024 18:17:15 +0200
Subject: [PATCH] OZG-5681 init custom command service instead of using default

---
 bescheid-manager/pom.xml                         |  2 +-
 .../bescheid/BescheidManagerConfiguration.java   |  2 +-
 .../VorgangManagerServerConfiguration.java       | 16 ++++++++++++++++
 .../src/main/resources/application.yml           |  3 +++
 .../bescheid/BescheidEventListenerITCase.java    |  1 +
 .../document/DocumentEventListenerITCase.java    |  2 +-
 .../de/ozgcloud/processor/ProcessorITCase.java   |  4 ++--
 7 files changed, 25 insertions(+), 5 deletions(-)

diff --git a/bescheid-manager/pom.xml b/bescheid-manager/pom.xml
index 61d6f145b..dff8ab4e0 100644
--- a/bescheid-manager/pom.xml
+++ b/bescheid-manager/pom.xml
@@ -17,7 +17,7 @@
 	<properties>
 		<vorgang-manager.version>2.7.0</vorgang-manager.version>
 		<nachrichten-manager.version>2.7.0</nachrichten-manager.version>
-		<api-lib.version>0.8.0</api-lib.version>
+		<api-lib.version>0.9.0-SNAPSHOT</api-lib.version>
 	</properties>
 
 	<dependencies>
diff --git a/bescheid-manager/src/main/java/de/ozgcloud/bescheid/BescheidManagerConfiguration.java b/bescheid-manager/src/main/java/de/ozgcloud/bescheid/BescheidManagerConfiguration.java
index 8bae9d91b..4cf07e25e 100644
--- a/bescheid-manager/src/main/java/de/ozgcloud/bescheid/BescheidManagerConfiguration.java
+++ b/bescheid-manager/src/main/java/de/ozgcloud/bescheid/BescheidManagerConfiguration.java
@@ -36,7 +36,7 @@ import net.devh.boot.grpc.client.inject.GrpcClient;
 @Configuration
 public class BescheidManagerConfiguration {
 
-	@GrpcClient("ozgcloud-command-manager")
+	@GrpcClient("command-manager")
 	private CommandServiceGrpc.CommandServiceBlockingStub commandServiceStub;
 
 	@Bean("bescheid_OzgCloudCommandService")
diff --git a/vorgang-manager-server/src/main/java/de/ozgcloud/vorgang/VorgangManagerServerConfiguration.java b/vorgang-manager-server/src/main/java/de/ozgcloud/vorgang/VorgangManagerServerConfiguration.java
index 477496a0f..685b4dded 100644
--- a/vorgang-manager-server/src/main/java/de/ozgcloud/vorgang/VorgangManagerServerConfiguration.java
+++ b/vorgang-manager-server/src/main/java/de/ozgcloud/vorgang/VorgangManagerServerConfiguration.java
@@ -1,10 +1,17 @@
 package de.ozgcloud.vorgang;
 
+import org.springframework.context.annotation.Bean;
 import org.springframework.context.annotation.Configuration;
+import org.springframework.context.annotation.Primary;
 import org.springframework.data.elasticsearch.repository.config.EnableElasticsearchRepositories;
 import org.springframework.data.mongodb.repository.config.EnableMongoRepositories;
 
+import de.ozgcloud.apilib.common.command.OzgCloudCommandService;
+import de.ozgcloud.apilib.common.command.grpc.CommandMapper;
+import de.ozgcloud.apilib.common.command.grpc.GrpcOzgCloudCommandService;
+import de.ozgcloud.vorgang.grpc.command.CommandServiceGrpc;
 import io.mongock.runner.springboot.EnableMongock;
+import net.devh.boot.grpc.client.inject.GrpcClient;
 
 @Configuration
 @EnableMongock
@@ -12,4 +19,13 @@ import io.mongock.runner.springboot.EnableMongock;
 @EnableElasticsearchRepositories(basePackages = "de.ozgcloud.vorgang.common.search")
 public class VorgangManagerServerConfiguration {
 
+	@GrpcClient("command-manager")
+	private CommandServiceGrpc.CommandServiceBlockingStub commandServiceStub;
+
+	@Bean
+	@Primary
+	OzgCloudCommandService grpcOzgCloudCommandService(CommandMapper commandMapper, VorgangManagerCallContextProvider contextProvider) {
+		return new GrpcOzgCloudCommandService(commandServiceStub, commandMapper, contextProvider,
+				GrpcOzgCloudCommandService.DEFAULT_COMMAND_REQUEST_THRESHOLD_MILLIS);
+	}
 }
diff --git a/vorgang-manager-server/src/main/resources/application.yml b/vorgang-manager-server/src/main/resources/application.yml
index db486fba2..1c96d03c8 100644
--- a/vorgang-manager-server/src/main/resources/application.yml
+++ b/vorgang-manager-server/src/main/resources/application.yml
@@ -37,6 +37,9 @@ grpc:
       negotiationType: PLAINTEXT
     info-manager:
       negotiationType: TLS
+    command-manager:
+      address: self:self
+      negotiationType: PLAINTEXT
 
 management:
   server:
diff --git a/vorgang-manager-server/src/test/java/de/ozgcloud/bescheid/BescheidEventListenerITCase.java b/vorgang-manager-server/src/test/java/de/ozgcloud/bescheid/BescheidEventListenerITCase.java
index aaa96ef57..862bcfc0e 100644
--- a/vorgang-manager-server/src/test/java/de/ozgcloud/bescheid/BescheidEventListenerITCase.java
+++ b/vorgang-manager-server/src/test/java/de/ozgcloud/bescheid/BescheidEventListenerITCase.java
@@ -83,6 +83,7 @@ import de.ozgcloud.vorgang.vorgang.VorgangTestFactory;
 		"grpc.client.vorgang-manager.address=in-process:test",
 		"grpc.client.nachrichten-manager.address=in-process:test",
 		"grpc.client.pluto.address=in-process:test",
+		"grpc.client.command-manager.address=in-process:test",
 		"ozgcloud.feature.bescheid.enable-dummy-document-processor=true",
 })
 @DataITCase
diff --git a/vorgang-manager-server/src/test/java/de/ozgcloud/document/DocumentEventListenerITCase.java b/vorgang-manager-server/src/test/java/de/ozgcloud/document/DocumentEventListenerITCase.java
index 5f4b31816..f922e36a2 100644
--- a/vorgang-manager-server/src/test/java/de/ozgcloud/document/DocumentEventListenerITCase.java
+++ b/vorgang-manager-server/src/test/java/de/ozgcloud/document/DocumentEventListenerITCase.java
@@ -57,7 +57,7 @@ import de.ozgcloud.vorgang.command.CommandTestFactory;
 @SpringBootTest(classes = VorgangManagerServerApplication.class, properties = {
 		"grpc.server.inProcessName=test",
 		"grpc.server.port=-1",
-		"grpc.client.ozgcloud-command-manager.address=in-process:test",
+		"grpc.client.command-manager.address=in-process:test",
 		"grpc.client.vorgang-manager.address=in-process:test"
 })
 @DataITCase
diff --git a/vorgang-manager-server/src/test/java/de/ozgcloud/processor/ProcessorITCase.java b/vorgang-manager-server/src/test/java/de/ozgcloud/processor/ProcessorITCase.java
index 268864036..3c4371f19 100644
--- a/vorgang-manager-server/src/test/java/de/ozgcloud/processor/ProcessorITCase.java
+++ b/vorgang-manager-server/src/test/java/de/ozgcloud/processor/ProcessorITCase.java
@@ -39,8 +39,8 @@ import de.ozgcloud.vorgang.vorgang.VorgangTestFactory;
 		"ozgcloud.processors.0.address=http://localhost:8090/testprocessor",
 		"ozgcloud.processors.0.forms.0.formEngineName=testFormEngine",
 		"ozgcloud.processors.0.forms.0.formId=testForm",
-		"grpc.server.port=9091",
-		"ozgcloud.command-manager.address=static://127.0.0.1:9091"
+		"grpc.server.inProcessName=test",
+		"grpc.client.command-manager.address=in-process:test",
 }, classes = { VorgangManagerServerApplication.class })
 @ActiveProfiles({ "local", "itcase" })
 @WithMockCustomUser
-- 
GitLab