From 5244f88d11c205ded83ea52ef9cc65483473ec07 Mon Sep 17 00:00:00 2001 From: Jan Zickermann <jan.zickermann@dataport.de> Date: Wed, 27 Nov 2024 17:10:44 +0100 Subject: [PATCH] #4 OZG-7112 remote-it-case: Use dummy getAllMessages --- spec/postfach-api-facade.yaml | 3 +++ .../postfach/osiv2/OsiPostfachRemoteService.java | 4 ++-- .../osiv2/transfer/PostfachApiFacadeService.java | 14 ++++++++++++++ .../postfach/osiv2/transfer/ResponseMapper.java | 2 +- .../OsiPostfachRemoteServiceRemoteITCase.java | 9 +-------- 5 files changed, 21 insertions(+), 11 deletions(-) diff --git a/spec/postfach-api-facade.yaml b/spec/postfach-api-facade.yaml index ac32d8c..708f7e1 100644 --- a/spec/postfach-api-facade.yaml +++ b/spec/postfach-api-facade.yaml @@ -953,6 +953,7 @@ paths: nicht gefunden. /MessageExchange/v1/Receive/{messageId}/Attachment/{attachmentId}: get: + operationId: getMessageAttachment tags: - MessageExchange summary: Liefert den Inhalt eines hochgeladenen Attachments im Kontext einer @@ -1062,6 +1063,7 @@ paths: (GUIDs) wurde nicht gefunden. /MessageExchange/v1/Receive/{messageId}: get: + operationId: getMessage tags: - MessageExchange summary: Liefert den Inhalt einer Antwortnachricht. @@ -1161,6 +1163,7 @@ paths: nicht gefunden. /MessageExchange/v1/Receive: get: + operationId: receiveMessages tags: - MessageExchange summary: Liefert eine Liste von Antwortnachrichten inklusive der Anhänge. diff --git a/src/main/java/de/ozgcloud/nachrichten/postfach/osiv2/OsiPostfachRemoteService.java b/src/main/java/de/ozgcloud/nachrichten/postfach/osiv2/OsiPostfachRemoteService.java index aad81c5..88a7720 100644 --- a/src/main/java/de/ozgcloud/nachrichten/postfach/osiv2/OsiPostfachRemoteService.java +++ b/src/main/java/de/ozgcloud/nachrichten/postfach/osiv2/OsiPostfachRemoteService.java @@ -26,8 +26,8 @@ public record OsiPostfachRemoteService( @Override public Stream<PostfachNachricht> getAllMessages() { - // TODO - return Stream.empty(); + // TODO handle exceptions? + return postfachApiFacadeService.receiveMessages(); } @Override diff --git a/src/main/java/de/ozgcloud/nachrichten/postfach/osiv2/transfer/PostfachApiFacadeService.java b/src/main/java/de/ozgcloud/nachrichten/postfach/osiv2/transfer/PostfachApiFacadeService.java index c5af031..0e9a897 100644 --- a/src/main/java/de/ozgcloud/nachrichten/postfach/osiv2/transfer/PostfachApiFacadeService.java +++ b/src/main/java/de/ozgcloud/nachrichten/postfach/osiv2/transfer/PostfachApiFacadeService.java @@ -1,10 +1,14 @@ package de.ozgcloud.nachrichten.postfach.osiv2.transfer; +import java.util.stream.Stream; + import org.springframework.stereotype.Service; import de.ozgcloud.nachrichten.postfach.PostfachNachricht; import de.ozgcloud.nachrichten.postfach.osiv2.gen.api.MessageExchangeApi; +import lombok.extern.log4j.Log4j2; +@Log4j2 @Service public record PostfachApiFacadeService( MessageExchangeApi messageExchangeApi, @@ -17,4 +21,14 @@ public record PostfachApiFacadeService( requestMapper.mapOutSendMessageRequestV2(nachricht) ).block(); } + + public Stream<PostfachNachricht> receiveMessages() { + // TODO fetch message by guid and map to PostfachNachricht + var response = messageExchangeApi.receiveMessages(100, 0) + .block(); + LOG.info("receive-message-guids: {}", String.join(", ", + response.getMessages().stream().map(message -> message.getGuid().toString()).toList())); + return Stream.empty(); + } + } diff --git a/src/main/java/de/ozgcloud/nachrichten/postfach/osiv2/transfer/ResponseMapper.java b/src/main/java/de/ozgcloud/nachrichten/postfach/osiv2/transfer/ResponseMapper.java index 393327f..41c126a 100644 --- a/src/main/java/de/ozgcloud/nachrichten/postfach/osiv2/transfer/ResponseMapper.java +++ b/src/main/java/de/ozgcloud/nachrichten/postfach/osiv2/transfer/ResponseMapper.java @@ -4,6 +4,6 @@ import org.mapstruct.Mapper; import org.mapstruct.ReportingPolicy; @Mapper(unmappedTargetPolicy = ReportingPolicy.ERROR) -public class ResponseMapper { +public interface ResponseMapper { } diff --git a/src/test/java/de/ozgcloud/nachrichten/postfach/osiv2/OsiPostfachRemoteServiceRemoteITCase.java b/src/test/java/de/ozgcloud/nachrichten/postfach/osiv2/OsiPostfachRemoteServiceRemoteITCase.java index b85d522..78c6a2f 100644 --- a/src/test/java/de/ozgcloud/nachrichten/postfach/osiv2/OsiPostfachRemoteServiceRemoteITCase.java +++ b/src/test/java/de/ozgcloud/nachrichten/postfach/osiv2/OsiPostfachRemoteServiceRemoteITCase.java @@ -15,8 +15,6 @@ import org.springframework.test.context.ActiveProfiles; import org.springframework.test.context.DynamicPropertyRegistry; import org.springframework.test.context.DynamicPropertySource; -import de.ozgcloud.nachrichten.postfach.PostfachNachricht; - @SpringBootTest(classes = TestApplication.class, webEnvironment = SpringBootTest.WebEnvironment.NONE) @ActiveProfiles("itcase") @EnabledIfEnvironmentVariable(named = "SH_STAGE_CLIENT_SECRET", matches = ".+") @@ -25,11 +23,6 @@ public class OsiPostfachRemoteServiceRemoteITCase { @Autowired private OsiPostfachRemoteService osiPostfachRemoteService; - private static final String MESSAGE_ID = "message-id"; - private final PostfachNachricht postfachNachricht = PostfachNachricht.builder() - .messageId(MESSAGE_ID) - .build(); - @DynamicPropertySource static void dynamicProperties(DynamicPropertyRegistry registry) { registry.add( @@ -61,7 +54,7 @@ public class OsiPostfachRemoteServiceRemoteITCase { @DisplayName("should not fail") @Test void shouldNotFail() { - assertThatCode(() -> osiPostfachRemoteService.sendMessage(postfachNachricht)) + assertThatCode(() -> osiPostfachRemoteService.getAllMessages()) .doesNotThrowAnyException(); } -- GitLab