From cb8c5762c12170c3a059a367dad37f5e930cf877 Mon Sep 17 00:00:00 2001 From: OZGCloud <ozgcloud@mgm-tp.com> Date: Fri, 28 Jun 2024 10:06:02 +0200 Subject: [PATCH] OZG-5156 Accept FIM messages in XTA adapter --- .../de/ozgcloud/eingang/xta/XtaService.java | 7 +++++- ...ersammlungsanzeigeMetaDataTestFactory.java | 22 +++++++++++++++++++ .../ozgcloud/eingang/xta/XtaServiceTest.java | 7 ++++++ 3 files changed, 35 insertions(+), 1 deletion(-) create mode 100644 xta-adapter/src/test/java/de/ozgcloud/eingang/xta/VersammlungsanzeigeMetaDataTestFactory.java diff --git a/xta-adapter/src/main/java/de/ozgcloud/eingang/xta/XtaService.java b/xta-adapter/src/main/java/de/ozgcloud/eingang/xta/XtaService.java index 2341fbf6d..a08710f9a 100644 --- a/xta-adapter/src/main/java/de/ozgcloud/eingang/xta/XtaService.java +++ b/xta-adapter/src/main/java/de/ozgcloud/eingang/xta/XtaService.java @@ -6,7 +6,6 @@ import java.util.stream.StreamSupport; import de.ozgcloud.eingang.common.vorgang.VorgangNummerSupplier; import de.ozgcloud.eingang.xdomea.XdomeaMessageDataMapper; -import lombok.RequiredArgsConstructor; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -21,6 +20,8 @@ class XtaService { static final String XDOMEA_0201_MESSAGE_TYPE = "Geschaeftsgang.Geschaeftsgang.0201"; + static final String ALL_FIM_MESSAGES_PREFIX = "fim."; + @Autowired private XtaRemoteService remoteService; @Autowired @@ -46,6 +47,10 @@ class XtaService { return true; } + if (StringUtils.startsWith(metaData.getMessageType(), ALL_FIM_MESSAGES_PREFIX)) { + return true; + } + LOG.warn("Ignoring XTA-Message of type '{}'.", metaData.getMessageType()); return false; } diff --git a/xta-adapter/src/test/java/de/ozgcloud/eingang/xta/VersammlungsanzeigeMetaDataTestFactory.java b/xta-adapter/src/test/java/de/ozgcloud/eingang/xta/VersammlungsanzeigeMetaDataTestFactory.java new file mode 100644 index 000000000..d7eb0f230 --- /dev/null +++ b/xta-adapter/src/test/java/de/ozgcloud/eingang/xta/VersammlungsanzeigeMetaDataTestFactory.java @@ -0,0 +1,22 @@ +package de.ozgcloud.eingang.xta; + +import java.time.ZonedDateTime; + +import static de.ozgcloud.eingang.xta.XtaMessageTestFactory.MESSAGE_ID; + +class VersammlungsanzeigeMetaDataTestFactory { + + private static final String VERSAMMLUNGSANZEIGE_MESSAGE_TYPE = "fim.S17000652.17000652001004"; + static final ZonedDateTime ORIGIN = ZonedDateTime.parse("2024-06-28T09:49:52.4942149+02:00"); + + static XtaMessageMetaData create() { + return createBuilder().build(); + } + + static XtaMessageMetaData.XtaMessageMetaDataBuilder createBuilder() { + return XtaMessageMetaData.builder() + .messageId(MESSAGE_ID) + .messageType(VERSAMMLUNGSANZEIGE_MESSAGE_TYPE) + .origin(ORIGIN); + } +} diff --git a/xta-adapter/src/test/java/de/ozgcloud/eingang/xta/XtaServiceTest.java b/xta-adapter/src/test/java/de/ozgcloud/eingang/xta/XtaServiceTest.java index 75a00a661..9546bb7ae 100644 --- a/xta-adapter/src/test/java/de/ozgcloud/eingang/xta/XtaServiceTest.java +++ b/xta-adapter/src/test/java/de/ozgcloud/eingang/xta/XtaServiceTest.java @@ -106,6 +106,13 @@ class XtaServiceTest { assertThat(service.isSupportedMessageType(metaDataDFoerder)).isTrue(); } + @Test + void shouldAcceptFimMessageType() { + var metaDataVersammlungsanzeige = VersammlungsanzeigeMetaDataTestFactory.create(); + + assertThat(service.isSupportedMessageType(metaDataVersammlungsanzeige)).isTrue(); + } + @Test void shouldNotAcceptOtherMessageType() { var metaDataDFoerder = XtaMessageMetaDataTestFactory.createBuilder().messageType(MESSAGE_TYPE_OTHER).build(); -- GitLab