diff --git a/src/main/java/de/ozgcloud/eingang/xta/XtaRunner.java b/src/main/java/de/ozgcloud/eingang/xta/XtaRunner.java index 8601abbea6525fb5e0775011c9061360510e4138..1cc22ae3ea50d76b6efeb0a8765b6c3a07a5f250 100644 --- a/src/main/java/de/ozgcloud/eingang/xta/XtaRunner.java +++ b/src/main/java/de/ozgcloud/eingang/xta/XtaRunner.java @@ -23,7 +23,8 @@ */ package de.ozgcloud.eingang.xta; -import org.springframework.beans.factory.annotation.Autowired; +import lombok.NonNull; +import lombok.RequiredArgsConstructor; import org.springframework.context.ApplicationListener; import org.springframework.context.event.ContextRefreshedEvent; import org.springframework.stereotype.Component; @@ -34,13 +35,13 @@ import de.ozgcloud.xta.client.exception.XtaClientException; @Log4j2 @Component +@RequiredArgsConstructor class XtaRunner implements ApplicationListener<ContextRefreshedEvent> { - @Autowired - private XtaService service; + private final XtaService service; @Override - public void onApplicationEvent(ContextRefreshedEvent event) { + public void onApplicationEvent(@NonNull ContextRefreshedEvent event) { LOG.info("Fetching XTA Messages"); runGetXtaMessages(); } diff --git a/src/main/java/de/ozgcloud/eingang/xta/XtaService.java b/src/main/java/de/ozgcloud/eingang/xta/XtaService.java index d3cf1e2bae722d2874176223b62054f2132e0fee..db1eeac979c4d597f86f00cdd0054cf3bec29d19 100644 --- a/src/main/java/de/ozgcloud/eingang/xta/XtaService.java +++ b/src/main/java/de/ozgcloud/eingang/xta/XtaService.java @@ -30,10 +30,10 @@ import java.util.Optional; import java.util.function.Consumer; import lombok.NonNull; +import lombok.RequiredArgsConstructor; import lombok.extern.log4j.Log4j2; import org.apache.commons.collections.CollectionUtils; import org.apache.commons.lang3.StringUtils; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import de.ozgcloud.eingang.common.errorhandling.TechnicalException; @@ -54,6 +54,7 @@ import de.ozgcloud.xta.client.model.XtaTransportReport; @Service @Log4j2 +@RequiredArgsConstructor class XtaService { static final String XDOMEA_0201_MESSAGE_TYPE = "Geschaeftsgang.Geschaeftsgang.0201"; @@ -62,19 +63,13 @@ class XtaService { final Consumer<XtaMessage> messageProcessor = this::processMessage; - @Autowired - private XtaClient xtaClient; - @Autowired - private SemantikAdapter semantikAdapter; - - @Autowired - private XtaMessageMapper mapper; - @Autowired - private VorgangNummerSupplier vorgangNummerSupplier; - @Autowired - private XdomeaMessageDataMapper xdomeaMessageDataMapper; - @Autowired - private XtaIncomingFilesMapper xtaIncomingFilesMapper; + private final XtaClient xtaClient; + private final SemantikAdapter semantikAdapter; + + private final XtaMessageMapper mapper; + private final VorgangNummerSupplier vorgangNummerSupplier; + private final XdomeaMessageDataMapper xdomeaMessageDataMapper; + private final XtaIncomingFilesMapper xtaIncomingFilesMapper; public void fetchMessages() throws XtaClientException { diff --git a/src/test/java/de/ozgcloud/eingang/xta/RepresentationsAttachmentsPairTestFactory.java b/src/test/java/de/ozgcloud/eingang/xta/RepresentationsAttachmentsPairTestFactory.java index e88a8b47ea4624aaa6c5f6c3f4c53f2f12988f6d..8c08c71dfe32cb0cd879cc3196434f0d2ab958db 100644 --- a/src/test/java/de/ozgcloud/eingang/xta/RepresentationsAttachmentsPairTestFactory.java +++ b/src/test/java/de/ozgcloud/eingang/xta/RepresentationsAttachmentsPairTestFactory.java @@ -31,12 +31,12 @@ import de.ozgcloud.eingang.common.formdata.IncomingFileGroupTestFactory; import de.ozgcloud.eingang.common.formdata.IncomingFileTestFactory; public class RepresentationsAttachmentsPairTestFactory { - static List<IncomingFile> PAIR_REPRESENTATIONS = List.of( + static final List<IncomingFile> PAIR_REPRESENTATIONS = List.of( IncomingFileTestFactory.createBuilder().name("representation1.xml").build(), IncomingFileTestFactory.createBuilder().name("representation1.pdf").build() ); - static List<IncomingFileGroup> PAIR_ATTACHMENTS = List.of( + static final List<IncomingFileGroup> PAIR_ATTACHMENTS = List.of( IncomingFileGroupTestFactory.create(), IncomingFileGroupTestFactory.create(), IncomingFileGroupTestFactory.create() diff --git a/src/test/java/de/ozgcloud/eingang/xta/XtaITCase.java b/src/test/java/de/ozgcloud/eingang/xta/XtaITCase.java index 446fa54f65506d645464cac68c04f01e814eb28a..50b61961e91eb87374efd65cb3185ece714e5bcd 100644 --- a/src/test/java/de/ozgcloud/eingang/xta/XtaITCase.java +++ b/src/test/java/de/ozgcloud/eingang/xta/XtaITCase.java @@ -23,10 +23,6 @@ */ package de.ozgcloud.eingang.xta; -import static org.assertj.core.api.Assertions.*; -import static org.mockito.ArgumentMatchers.*; -import static org.mockito.Mockito.*; - import java.lang.annotation.ElementType; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; @@ -34,6 +30,8 @@ import java.lang.annotation.Target; import java.util.List; import java.util.function.Consumer; +import io.grpc.Channel; +import lombok.RequiredArgsConstructor; import lombok.SneakyThrows; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.DisplayName; @@ -48,6 +46,8 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.context.annotation.Bean; import org.springframework.test.context.ActiveProfiles; +import org.springframework.test.context.bean.override.mockito.MockitoBean; +import org.springframework.test.context.bean.override.mockito.MockitoSpyBean; import de.ozgcloud.eingang.Application; import de.ozgcloud.eingang.common.formdata.FormData; @@ -60,9 +60,9 @@ import de.ozgcloud.vorgang.vorgang.VorgangServiceGrpc.VorgangServiceBlockingStub import de.ozgcloud.xta.client.XtaClient; import de.ozgcloud.xta.client.model.XtaMessage; -import io.grpc.Channel; -import org.springframework.test.context.bean.override.mockito.MockitoBean; -import org.springframework.test.context.bean.override.mockito.MockitoSpyBean; +import static org.assertj.core.api.Assertions.assertThat; +import static org.mockito.ArgumentMatchers.any; +import static org.mockito.Mockito.*; @SpringBootTest(classes = { Application.class, @@ -346,10 +346,13 @@ class XtaITCase { @interface TestZipFileNames { } + @RequiredArgsConstructor static class ActivateXTARunnerConfig { + private final XtaService xtaService; + @Bean XtaRunner xtaRunner() { - return new XtaRunner(); + return new XtaRunner(xtaService); } } }