diff --git a/api-lib-core/src/main/java/de/ozgcloud/apilib/vorgang/OzgCloudEingang.java b/api-lib-core/src/main/java/de/ozgcloud/apilib/vorgang/OzgCloudEingang.java index 44a7ef648bcca610b308301db58dbe9afd9b82ad..b77ede0a5c071a1960d6a3dacbf6269dd757c826 100644 --- a/api-lib-core/src/main/java/de/ozgcloud/apilib/vorgang/OzgCloudEingang.java +++ b/api-lib-core/src/main/java/de/ozgcloud/apilib/vorgang/OzgCloudEingang.java @@ -6,6 +6,7 @@ import de.ozgcloud.apilib.file.OzgCloudFile; import de.ozgcloud.apilib.file.OzgCloudFileGroup; import lombok.Builder; import lombok.Getter; +import lombok.Singular; import lombok.ToString; @Builder @@ -14,13 +15,17 @@ import lombok.ToString; public class OzgCloudEingang { @ToString.Include - private OzgCloudEingangHeader header; - private OzgCloudAntragsteller antragsteller; + @Builder.Default + private OzgCloudEingangHeader header = OzgCloudEingangHeader.builder().build(); + @Builder.Default + private OzgCloudAntragsteller antragsteller = OzgCloudAntragsteller.builder().build(); @ToString.Include private OzgCloudZustaendigeStelle zustaendigeStelle; private List<OzgCloudFormDataEntry> formDataEntrys; + @Singular private List<OzgCloudFileGroup> attachments; + @Singular private List<OzgCloudFile> representations; } diff --git a/ozg-cloud-spring-boot-starter/src/main/java/de/ozgcloud/client/autoconfigure/OzgCloudClientAutoConfiguration.java b/ozg-cloud-spring-boot-starter/src/main/java/de/ozgcloud/client/autoconfigure/OzgCloudClientAutoConfiguration.java index 0fada0b00719ab624172d3dad90f7f33f27e2dbb..de90768eab0aaaf249f37c15984fd4f19a08290d 100644 --- a/ozg-cloud-spring-boot-starter/src/main/java/de/ozgcloud/client/autoconfigure/OzgCloudClientAutoConfiguration.java +++ b/ozg-cloud-spring-boot-starter/src/main/java/de/ozgcloud/client/autoconfigure/OzgCloudClientAutoConfiguration.java @@ -25,13 +25,11 @@ import de.ozgcloud.apilib.common.command.grpc.CommandMapper; import de.ozgcloud.apilib.common.command.grpc.GrpcOzgCloudCommandService; import de.ozgcloud.apilib.file.dummy.DummyOzgCloudFileService; import de.ozgcloud.apilib.file.grpc.GrpcOzgCloudFileService; -import de.ozgcloud.apilib.vorgang.OzgCloudVorgangIdMapperImpl; +import de.ozgcloud.apilib.vorgang.OzgCloudVorgangIdMapper; import de.ozgcloud.apilib.vorgang.OzgCloudVorgangService; import de.ozgcloud.apilib.vorgang.dummy.DummyVorgangService; import de.ozgcloud.apilib.vorgang.grpc.GrpcOzgCloudVorgangService; -import de.ozgcloud.apilib.vorgang.grpc.OzgCloudEingangMapperImpl; import de.ozgcloud.apilib.vorgang.grpc.OzgCloudVorgangMapper; -import de.ozgcloud.apilib.vorgang.grpc.OzgCloudVorgangMapperImpl; import de.ozgcloud.apilib.vorgang.grpc.OzgCloudVorgangStubMapper; import net.devh.boot.grpc.client.autoconfigure.GrpcClientAutoConfiguration; import net.devh.boot.grpc.client.config.GrpcChannelProperties; @@ -41,10 +39,10 @@ import net.devh.boot.grpc.client.inject.GrpcClient; @AutoConfiguration(before = GrpcClientAutoConfiguration.class) @ComponentScan("de.ozgcloud.client.autoconfigure") @Import({ - GrpcOzgCloudFileService.class, DummyOzgCloudFileService.class, - OzgCloudCallContextAttachingInterceptor.class, - OzgCloudVorgangMapperImpl.class, OzgCloudEingangMapperImpl.class, OzgCloudVorgangIdMapperImpl.class + GrpcOzgCloudFileService.class, DummyOzgCloudFileService.class, + OzgCloudCallContextAttachingInterceptor.class }) + public class OzgCloudClientAutoConfiguration { private static final String CLIENT_NAME_VORGANG_MANAGER = "vorgang-manager"; @@ -58,10 +56,10 @@ public class OzgCloudClientAutoConfiguration { @Autowired private OzgCloudCommandManagerProperties commandManagerProperties; - @Bean - @ConditionalOnProperty("ozgcloud.vorgang-manager.address") - GrpcChannelsProperties channelProperties() { - var properties = new GrpcChannelsProperties(); + // @Bean + // @ConditionalOnProperty("ozgcloud.vorgang-manager.address") + GrpcChannelsProperties channelProperties(GrpcChannelsProperties properties) { + // var properties = new GrpcChannelsProperties(); var clientMap = properties.getClient(); addVorgangManager(clientMap); @@ -71,6 +69,15 @@ public class OzgCloudClientAutoConfiguration { return properties; } + @Bean + @ConditionalOnProperty("ozgcloud.command-manager.address") + GrpcChannelsProperties commandProperties() { + var properties = new GrpcChannelsProperties(); + var clientMap = properties.getClient(); + addCommandManager(clientMap); + return properties; + } + private void addVorgangManager(Map<String, GrpcChannelProperties> clientMap) { var channelProps = new GrpcChannelProperties(); channelProps.setAddress(vorgangManagerProperties.getAddress()); @@ -101,9 +108,39 @@ public class OzgCloudClientAutoConfiguration { return new DefaultOzgCloudCallContextProvider(ctxt); } + @Bean("ozgCloudVorgangService") + @ConditionalOnProperty("ozgcloud.vorgang-manager.address") + OzgCloudVorgangService grpcOzgCloudVorgangService(VorgangServiceBlockingStub vorgangServiceStub, + OzgCloudVorgangMapper mapper, + OzgCloudVorgangStubMapper stubMapper, OzgCloudCallContextProvider contextProvider) { + + return new GrpcOzgCloudVorgangService(vorgangServiceStub, mapper, stubMapper, contextProvider); + } + + @Bean + OzgCloudVorgangMapper ozgCloudVorgangMapper() { + return Mappers.getMapper(OzgCloudVorgangMapper.class); + } + + @Bean + OzgCloudVorgangStubMapper ozgCloudVorgangStubMapper() { + return Mappers.getMapper(OzgCloudVorgangStubMapper.class); + } + + @Bean("ozgCloudVorgangService") + @ConditionalOnMissingBean(OzgCloudVorgangService.class) + OzgCloudVorgangService dummyOzgCloudVorgangService() { + return new DummyVorgangService(); + } + + @Bean + OzgCloudVorgangIdMapper ozgCloudVorgangIdMapper() { + return Mappers.getMapper(OzgCloudVorgangIdMapper.class); + } + @Bean @ConditionalOnProperty("ozgcloud.command-manager.address") - OzgCloudCommandService grpcCommandService(@GrpcClient("command-manager") CommandServiceBlockingStub commandServiceStub, + OzgCloudCommandService grpcOzgCloudCommandService(@GrpcClient("command-manager") CommandServiceBlockingStub commandServiceStub, CommandMapper commandMapper, OzgCloudCallContextProvider contextProvider) { return new GrpcOzgCloudCommandService(commandServiceStub, commandMapper, contextProvider, GrpcOzgCloudCommandService.DEFAULT_COMMAND_REQUEST_THRESHOLD_MILLIS); @@ -126,17 +163,4 @@ public class OzgCloudClientAutoConfiguration { AlfaService alfaService() { return new DummyAlfaService(); } - - @Bean("ozgCloudVorgangService") - @ConditionalOnProperty("ozgcloud.vorgang-manager.address") - public OzgCloudVorgangService grpcOzgCloudVorgangService(VorgangServiceBlockingStub vorgangServiceStub, OzgCloudVorgangMapper mapper, - OzgCloudVorgangStubMapper stubMapper, OzgCloudCallContextProvider contextProvider) { - return new GrpcOzgCloudVorgangService(vorgangServiceStub, mapper, stubMapper, contextProvider); - } - - @Bean("ozgCloudVorgangService") - @ConditionalOnMissingBean(OzgCloudVorgangService.class) - public OzgCloudVorgangService dummyOzgCloudVorgangService() { - return new DummyVorgangService(); - } }