diff --git a/src/main/java/de/ozgcloud/nachrichten/postfach/muk/MukPostfachCallContextProvider.java b/src/main/java/de/ozgcloud/nachrichten/postfach/muk/MukPostfachCallContextProvider.java new file mode 100644 index 0000000000000000000000000000000000000000..b65237d4770a75b65c9b9553a11f4589318c8560 --- /dev/null +++ b/src/main/java/de/ozgcloud/nachrichten/postfach/muk/MukPostfachCallContextProvider.java @@ -0,0 +1,17 @@ +package de.ozgcloud.nachrichten.postfach.muk; + +import org.springframework.stereotype.Component; + +import de.ozgcloud.apilib.common.callcontext.CallContext; +import de.ozgcloud.apilib.common.callcontext.OzgCloudCallContextProvider; +import lombok.RequiredArgsConstructor; + +@Component +@RequiredArgsConstructor +class MukPostfachCallContextProvider implements OzgCloudCallContextProvider { + + @Override + public CallContext provideContext() { + return CallContext.builder().clientName(MukPostfachConfiguration.MUK_POSTFACH_CLIENT_NAME).build(); + } +} \ No newline at end of file diff --git a/src/main/java/de/ozgcloud/nachrichten/postfach/muk/MukPostfachConfiguration.java b/src/main/java/de/ozgcloud/nachrichten/postfach/muk/MukPostfachConfiguration.java new file mode 100644 index 0000000000000000000000000000000000000000..bc8640ffa40a231cd47e6faf0ecefbcabe130ee3 --- /dev/null +++ b/src/main/java/de/ozgcloud/nachrichten/postfach/muk/MukPostfachConfiguration.java @@ -0,0 +1,31 @@ +package de.ozgcloud.nachrichten.postfach.muk; + +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; + +import de.ozgcloud.apilib.file.OzgCloudFileService; +import de.ozgcloud.apilib.file.grpc.GrpcOzgCloudFileService; +import de.ozgcloud.apilib.file.grpc.OzgCloudFileMapper; +import de.ozgcloud.vorgang.grpc.binaryFile.BinaryFileServiceGrpc.BinaryFileServiceBlockingStub; +import de.ozgcloud.vorgang.grpc.binaryFile.BinaryFileServiceGrpc.BinaryFileServiceStub; +import net.devh.boot.grpc.client.inject.GrpcClient; + +@Configuration +public class MukPostfachConfiguration { + + public static final String OZG_CLOUD_FILE_SERVICE_NAME = "mukPostfach_OzgCloudFileService"; + + public static final String GRPC_FILE_MANAGER_FILE = "file-manager"; + + public static final String MUK_POSTFACH_CLIENT_NAME = "OzgCloud_MukPostfach"; + + @GrpcClient(GRPC_FILE_MANAGER_FILE) + private BinaryFileServiceBlockingStub fileServiceBlockingStub; + @GrpcClient(GRPC_FILE_MANAGER_FILE) + private BinaryFileServiceStub fileServiceAsyncServiceStub; + + @Bean(OZG_CLOUD_FILE_SERVICE_NAME) // NOSONAR + OzgCloudFileService grpcOzgCloudFileService(MukPostfachCallContextProvider contextProvider, OzgCloudFileMapper mapper) { + return new GrpcOzgCloudFileService(fileServiceBlockingStub, fileServiceAsyncServiceStub, contextProvider, mapper); + } +} diff --git a/src/main/java/de/ozgcloud/nachrichten/postfach/muk/transfer/AttachmentService.java b/src/main/java/de/ozgcloud/nachrichten/postfach/muk/transfer/AttachmentService.java index 5a259d19982ae9ed73df9280e9c76b1bca7cbc6e..09b376460edf735193f39cb3d84f4ddfb4891589 100644 --- a/src/main/java/de/ozgcloud/nachrichten/postfach/muk/transfer/AttachmentService.java +++ b/src/main/java/de/ozgcloud/nachrichten/postfach/muk/transfer/AttachmentService.java @@ -25,19 +25,20 @@ package de.ozgcloud.nachrichten.postfach.muk.transfer; import java.io.BufferedInputStream; import java.io.OutputStream; +import org.springframework.beans.factory.annotation.Qualifier; import org.springframework.stereotype.Service; import de.ozgcloud.apilib.file.OzgCloudFile; import de.ozgcloud.apilib.file.OzgCloudFileId; import de.ozgcloud.apilib.file.OzgCloudFileService; import de.ozgcloud.apilib.file.OzgCloudUploadFile; +import de.ozgcloud.nachrichten.postfach.muk.MukPostfachConfiguration; import lombok.RequiredArgsConstructor; -import lombok.extern.log4j.Log4j2; -@Log4j2 @Service @RequiredArgsConstructor public class AttachmentService { + @Qualifier(MukPostfachConfiguration.OZG_CLOUD_FILE_SERVICE_NAME) // NOSONAR private final OzgCloudFileService ozgCloudFileService; OzgCloudFile getCloudFile(String fileId) {