diff --git a/src/main/java/de/ozgcloud/xta/test/app/mapper/RequestMapper.java b/src/main/java/de/ozgcloud/xta/test/app/mapper/RequestMapper.java index b8c7ff6a103d896ff8b295fe34e9313ad929ccd5..2aef8550f2c785f6765d5d8c802f060754bbc803 100644 --- a/src/main/java/de/ozgcloud/xta/test/app/mapper/RequestMapper.java +++ b/src/main/java/de/ozgcloud/xta/test/app/mapper/RequestMapper.java @@ -6,20 +6,15 @@ import java.io.IOException; import jakarta.activation.DataHandler; +import org.apache.cxf.ws.addressing.AttributedURIType; import org.mapstruct.Mapper; import org.mapstruct.Mapping; import org.mapstruct.Named; import org.mapstruct.ReportingPolicy; import de.ozgcloud.xta.test.app.exception.TechnicalException; -import de.ozgcloud.xta.test.app.model.XtaCloseRequest; -import de.ozgcloud.xta.test.app.model.XtaFile; -import de.ozgcloud.xta.test.app.model.XtaGetMessageRequest; -import de.ozgcloud.xta.test.app.model.XtaIdentifier; -import de.ozgcloud.xta.test.app.model.XtaLookupServiceRequest; -import de.ozgcloud.xta.test.app.model.XtaMessage; -import de.ozgcloud.xta.test.app.model.XtaMessageMetaData; -import de.ozgcloud.xta.test.app.model.XtaMessageMetaDataListingRequest; +import de.ozgcloud.xta.test.app.model.*; + import genv3.de.xoev.transport.xta.x211.ContentType; import genv3.de.xoev.transport.xta.x211.GenericContentContainer; import genv3.de.xoev.transport.xta.x211.LookupServiceRequest; @@ -99,4 +94,8 @@ public interface RequestMapper { @Mapping(target = "readerIdentifier", source = "lookupServiceRequest.lookupServiceRequestList.first.lookupService.reader.identifier") @Mapping(target = "authorIdentifier", source = "authorIdentifier.identifier") XtaLookupServiceRequest mapXtaLookupServiceRequest(LookupServiceRequest lookupServiceRequest, PartyType authorIdentifier); + + @Mapping(target = "messageId", source = "messageId.value") + @Mapping(target = "clientIdentifier", source = "authorIdentifier.identifier") + XtaGetTransportReportRequest mapXtaGetTransportReportRequest(AttributedURIType messageId, PartyType authorIdentifier); } diff --git a/src/test/java/de/ozgcloud/xta/test/app/mapper/RequestMapperTest.java b/src/test/java/de/ozgcloud/xta/test/app/mapper/RequestMapperTest.java index 0e6128c38f8ef5ffe70927050d5bb0715c4c8c3b..8cbd627c415bc7b8111ab3483f6afa33df9034d9 100644 --- a/src/test/java/de/ozgcloud/xta/test/app/mapper/RequestMapperTest.java +++ b/src/test/java/de/ozgcloud/xta/test/app/mapper/RequestMapperTest.java @@ -26,12 +26,8 @@ import de.ozgcloud.xta.test.app.factory.MsgBoxFetchRequestTestFactory; import de.ozgcloud.xta.test.app.factory.MsgBoxStatusListRequestTypeTestFactory; import de.ozgcloud.xta.test.app.factory.PartyTypeTestFactory; import de.ozgcloud.xta.test.app.factory.QualifierTypeBusinessScenarioTestFactory; -import de.ozgcloud.xta.test.app.model.XtaCloseRequest; -import de.ozgcloud.xta.test.app.model.XtaFile; -import de.ozgcloud.xta.test.app.model.XtaGetMessageRequest; -import de.ozgcloud.xta.test.app.model.XtaIdentifier; -import de.ozgcloud.xta.test.app.model.XtaLookupServiceRequest; -import de.ozgcloud.xta.test.app.model.XtaMessageMetaDataListingRequest; +import de.ozgcloud.xta.test.app.model.*; + import genv3.de.xoev.transport.xta.x211.ContentType; import genv3.de.xoev.transport.xta.x211.GenericContentContainer; import genv3.eu.osci.ws.x2008.x05.transport.MsgBoxFetchRequest; @@ -325,4 +321,32 @@ public class RequestMapperTest { } } + @DisplayName("map xta get transport report request") + @Nested + class TestMapXtaGetTransportReportRequest { + public static final String MESSAGE_ID = "urn:de:xta:messageid:1"; + + @DisplayName("should map message id") + @Test + void shouldMapMessageId() { + var result = doMapping(); + + assertThat(result.messageId()).isEqualTo(MESSAGE_ID); + } + + @DisplayName("should map client identifier") + @Test + void shouldMapReaderIdentifier() { + var result = doMapping(); + + assertThat(result.clientIdentifier()) + .usingRecursiveComparison() + .isEqualTo(READER_IDENTIFIER); + } + + private XtaGetTransportReportRequest doMapping() { + return mapper.mapXtaGetTransportReportRequest(AttributedURITypeTestFactory.create(MESSAGE_ID), + PartyTypeTestFactory.create()); + } + } }