From aafd78e9847806744ff5923a23958a33d87faaad Mon Sep 17 00:00:00 2001 From: OZGCloud <ozgcloud@mgm-tp.com> Date: Thu, 30 Nov 2023 13:17:03 +0100 Subject: [PATCH] OZG-4606 complete configuration of user service --- .../OzgCloudClientAutoConfiguration.java | 20 ++++++++++++++++ .../OzgCloudUserManagerProperties.java | 24 +++++++++++++++++++ 2 files changed, 44 insertions(+) create mode 100644 ozg-cloud-spring-boot-starter/src/main/java/de/ozgcloud/client/autoconfigure/OzgCloudUserManagerProperties.java diff --git a/ozg-cloud-spring-boot-starter/src/main/java/de/ozgcloud/client/autoconfigure/OzgCloudClientAutoConfiguration.java b/ozg-cloud-spring-boot-starter/src/main/java/de/ozgcloud/client/autoconfigure/OzgCloudClientAutoConfiguration.java index 689a862..b0089ec 100644 --- a/ozg-cloud-spring-boot-starter/src/main/java/de/ozgcloud/client/autoconfigure/OzgCloudClientAutoConfiguration.java +++ b/ozg-cloud-spring-boot-starter/src/main/java/de/ozgcloud/client/autoconfigure/OzgCloudClientAutoConfiguration.java @@ -52,6 +52,7 @@ public class OzgCloudClientAutoConfiguration { private static final String CLIENT_NAME_VORGANG_MANAGER = "vorgang-manager"; private static final String CLIENT_NAME_FILE_MANAGER = "file-manager"; private static final String CLIENT_NAME_COMMAND_MANAGER = "command-manager"; + private static final String CLIENT_NAME_USER_MANAGER = "user-manager"; @Autowired private OzgCloudVorgangManagerProperties vorgangManagerProperties; @@ -59,6 +60,8 @@ public class OzgCloudClientAutoConfiguration { private OzgCloudFileManagerProperties fileManagerProperties; @Autowired private OzgCloudCommandManagerProperties commandManagerProperties; + @Autowired + private OzgCloudUserManagerProperties userManagerProperties; // @Bean // @ConditionalOnProperty("ozgcloud.vorgang-manager.address") @@ -82,6 +85,23 @@ public class OzgCloudClientAutoConfiguration { return properties; } + @Bean + @ConditionalOnProperty("ozgcloud.user-manager.address") + GrpcChannelsProperties userManagerProperties() { + var properties = new GrpcChannelsProperties(); + var clientMap = properties.getClient(); + addUserManager(clientMap); + return properties; + } + + private void addUserManager(Map<String, GrpcChannelProperties> clientMap) { + var channelProps = new GrpcChannelProperties(); + channelProps.setAddress(userManagerProperties.getAddress()); + channelProps.setNegotiationType(userManagerProperties.getNegotiationType()); + + clientMap.put(CLIENT_NAME_USER_MANAGER, channelProps); + } + private void addVorgangManager(Map<String, GrpcChannelProperties> clientMap) { var channelProps = new GrpcChannelProperties(); channelProps.setAddress(vorgangManagerProperties.getAddress()); diff --git a/ozg-cloud-spring-boot-starter/src/main/java/de/ozgcloud/client/autoconfigure/OzgCloudUserManagerProperties.java b/ozg-cloud-spring-boot-starter/src/main/java/de/ozgcloud/client/autoconfigure/OzgCloudUserManagerProperties.java new file mode 100644 index 0000000..0686b02 --- /dev/null +++ b/ozg-cloud-spring-boot-starter/src/main/java/de/ozgcloud/client/autoconfigure/OzgCloudUserManagerProperties.java @@ -0,0 +1,24 @@ +package de.ozgcloud.client.autoconfigure; + +import org.springframework.boot.context.properties.ConfigurationProperties; +import org.springframework.context.annotation.Configuration; + +import lombok.Getter; +import lombok.Setter; +import net.devh.boot.grpc.client.config.NegotiationType; + +@Getter +@Setter +@Configuration +@ConfigurationProperties("ozgcloud.vorgang-manager") +public class OzgCloudUserManagerProperties { + /** + * Network-Address of the User-Manager instance, starting with resolving + * protocoll. + */ + private String address; + /** + * Negotiation Type for the gRPC connection - possible Values: PLAINTEXT, TLS + */ + private NegotiationType negotiationType = NegotiationType.valueOf("TLS"); +} -- GitLab