/* * Copyright (C) 2024 Das Land Schleswig-Holstein vertreten durch den * Ministerpräsidenten des Landes Schleswig-Holstein * Staatskanzlei * Abteilung Digitalisierung und zentrales IT-Management der Landesregierung * * Lizenziert unter der EUPL, Version 1.2 oder - sobald * diese von der Europäischen Kommission genehmigt wurden - * Folgeversionen der EUPL ("Lizenz"); * Sie dürfen dieses Werk ausschließlich gemäß * dieser Lizenz nutzen. * Eine Kopie der Lizenz finden Sie hier: * * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12 * * Sofern nicht durch anwendbare Rechtsvorschriften * gefordert oder in schriftlicher Form vereinbart, wird * die unter der Lizenz verbreitete Software "so wie sie * ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN - * ausdrücklich oder stillschweigend - verbreitet. * Die sprachspezifischen Genehmigungen und Beschränkungen * unter der Lizenz sind dem Lizenztext zu entnehmen. */ package de.ozgcloud.document; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import de.ozgcloud.apilib.common.callcontext.OzgCloudCallContextProvider; 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.apilib.user.GrpcOzgCloudUserProfileService; import de.ozgcloud.apilib.user.OzgCloudUserProfileService; import de.ozgcloud.apilib.user.UserProfileMapper; import de.ozgcloud.document.bescheid.common.callcontext.BescheidManagerCallContextProvider; import de.ozgcloud.user.grpc.userprofile.UserProfileServiceGrpc; import de.ozgcloud.vorgang.grpc.command.CommandServiceGrpc; import net.devh.boot.grpc.client.inject.GrpcClient; @Configuration public class DocumentManagerConfiguration { private static final String GRPC_USER_MANAGER_NAME = "user-manager"; private static final String GRPC_COMMAND_MANAGER_NAME = "command-manager"; public static final String COMMAND_SERVICE_NAME = "bescheid_OzgCloudCommandService"; public static final String USER_PROFILE_SERVICE_NAME = "bescheid_OzgCloudUserProfileService"; @GrpcClient(GRPC_COMMAND_MANAGER_NAME) private CommandServiceGrpc.CommandServiceBlockingStub commandServiceStub; @GrpcClient(GRPC_USER_MANAGER_NAME) private UserProfileServiceGrpc.UserProfileServiceBlockingStub userProfileServiceStub; @Bean(COMMAND_SERVICE_NAME) OzgCloudCommandService grpcOzgCloudCommandService(CommandMapper commandMapper, BescheidManagerCallContextProvider contextProvider) { return new GrpcOzgCloudCommandService(commandServiceStub, commandMapper, contextProvider, GrpcOzgCloudCommandService.DEFAULT_COMMAND_REQUEST_THRESHOLD_MILLIS); } @Bean(USER_PROFILE_SERVICE_NAME) OzgCloudUserProfileService grpcOzgCloudUserProfileService(UserProfileMapper mapper, OzgCloudCallContextProvider contextProvider) { return new GrpcOzgCloudUserProfileService(userProfileServiceStub, mapper, contextProvider); } }