From: PatrikBuhr Date: Wed, 5 Jan 2022 09:56:56 +0000 (+0100) Subject: Migrated to springboot 2.6.2 X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=commitdiff_plain;h=21c2d3065fdf0d8b8c8680d292b524248622875f;p=nonrtric.git Migrated to springboot 2.6.2 All springboot components except r-app catlogue. Signed-off-by: PatrikBuhr Issue-ID: NONRTRIC-703 Change-Id: I1bdfdbac4166d7293fcd9f074c55c4be63200c47 --- diff --git a/a1-policy-management-service/pom.xml b/a1-policy-management-service/pom.xml index 8a6d584c..b90bb886 100644 --- a/a1-policy-management-service/pom.xml +++ b/a1-policy-management-service/pom.xml @@ -26,7 +26,7 @@ org.springframework.boot spring-boot-starter-parent - 2.5.3 + 2.6.2 org.o-ran-sc.nonrtric @@ -50,19 +50,23 @@ 3.0.0 2.8.2 1.1.6 - 2.1.6 + 2.1.12 20190722 3.8.0 2.12.2 1.18.0 0.30.0 - 1.1.11 2.1.1 3.7.0.1746 0.8.5 3.0.0 + + commons-io + commons-io + 2.11.0 + com.google.guava guava @@ -71,7 +75,7 @@ org.springdoc springdoc-openapi-ui - 1.5.2 + 1.6.3 org.springframework.boot @@ -143,11 +147,6 @@ lombok provided - - org.onap.dmaap.messagerouter.dmaapclient - dmaapClient - ${version.dmaap} - javax.ws.rs javax.ws.rs-api @@ -407,4 +406,4 @@ JIRA https://jira.o-ran-sc.org/ - + \ No newline at end of file diff --git a/dmaap-adaptor-java/api/api.json b/dmaap-adaptor-java/api/api.json index 04c4ab00..88fed46b 100644 --- a/dmaap-adaptor-java/api/api.json +++ b/dmaap-adaptor-java/api/api.json @@ -109,7 +109,7 @@ "paths": { "/actuator/threaddump": {"get": { "summary": "Actuator web endpoint 'threaddump'", - "operationId": "handle_2_1_3", + "operationId": "threaddump_4", "responses": {"200": { "description": "OK", "content": {"*/*": {"schema": {"type": "object"}}} @@ -118,7 +118,7 @@ }}, "/actuator/info": {"get": { "summary": "Actuator web endpoint 'info'", - "operationId": "handle_9", + "operationId": "info_2", "responses": {"200": { "description": "OK", "content": {"*/*": {"schema": {"type": "object"}}} @@ -194,7 +194,7 @@ }, "/actuator/loggers": {"get": { "summary": "Actuator web endpoint 'loggers'", - "operationId": "handle_6", + "operationId": "loggers_2", "responses": {"200": { "description": "OK", "content": {"*/*": {"schema": {"type": "object"}}} @@ -203,7 +203,7 @@ }}, "/actuator/health/**": {"get": { "summary": "Actuator web endpoint 'health-path'", - "operationId": "handle_12", + "operationId": "health-path_2", "responses": {"200": { "description": "OK", "content": {"*/*": {"schema": {"type": "object"}}} @@ -262,7 +262,7 @@ }}, "/actuator/metrics/{requiredMetricName}": {"get": { "summary": "Actuator web endpoint 'metrics-requiredMetricName'", - "operationId": "handle_5", + "operationId": "metrics-requiredMetricName_2", "responses": {"200": { "description": "OK", "content": {"*/*": {"schema": {"type": "object"}}} @@ -292,7 +292,7 @@ }}, "/actuator/logfile": {"get": { "summary": "Actuator web endpoint 'logfile'", - "operationId": "handle_8", + "operationId": "logfile_2", "responses": {"200": { "description": "OK", "content": {"*/*": {"schema": {"type": "object"}}} @@ -302,7 +302,7 @@ "/actuator/loggers/{name}": { "post": { "summary": "Actuator web endpoint 'loggers-name'", - "operationId": "handle_0", + "operationId": "loggers-name_3", "responses": {"200": { "description": "OK", "content": {"*/*": {"schema": {"type": "object"}}} @@ -317,7 +317,7 @@ }, "get": { "summary": "Actuator web endpoint 'loggers-name'", - "operationId": "handle_7", + "operationId": "loggers-name_4", "responses": {"200": { "description": "OK", "content": {"*/*": {"schema": {"type": "object"}}} @@ -333,7 +333,7 @@ }, "/actuator/health": {"get": { "summary": "Actuator web endpoint 'health'", - "operationId": "handle_11", + "operationId": "health_2", "responses": {"200": { "description": "OK", "content": {"*/*": {"schema": {"type": "object"}}} @@ -366,7 +366,7 @@ }}, "/actuator/metrics": {"get": { "summary": "Actuator web endpoint 'metrics'", - "operationId": "handle_4", + "operationId": "metrics_2", "responses": {"200": { "description": "OK", "content": {"*/*": {"schema": {"type": "object"}}} @@ -375,7 +375,7 @@ }}, "/actuator/heapdump": {"get": { "summary": "Actuator web endpoint 'heapdump'", - "operationId": "handle_10", + "operationId": "heapdump_2", "responses": {"200": { "description": "OK", "content": {"*/*": {"schema": {"type": "object"}}} @@ -392,12 +392,18 @@ "title": "Generic Dmaap and Kafka Information Producer", "version": "1.0" }, - "tags": [{ - "name": "Actuator", - "description": "Monitor and interact", - "externalDocs": { - "description": "Spring Boot Actuator Web API Documentation", - "url": "https://docs.spring.io/spring-boot/docs/current/actuator-api/html/" + "tags": [ + {"name": "Information Coordinator Service Simulator (exists only in test)"}, + {"name": "Producer job control API"}, + {"name": "Test Consumer Simulator (exists only in test)"}, + {"name": "DMAAP Simulator (exists only in test)"}, + { + "name": "Actuator", + "description": "Monitor and interact", + "externalDocs": { + "description": "Spring Boot Actuator Web API Documentation", + "url": "https://docs.spring.io/spring-boot/docs/current/actuator-api/html/" + } } - }] + ] } \ No newline at end of file diff --git a/dmaap-adaptor-java/api/api.yaml b/dmaap-adaptor-java/api/api.yaml index 1fb78fa3..f6eb1f7f 100644 --- a/dmaap-adaptor-java/api/api.yaml +++ b/dmaap-adaptor-java/api/api.yaml @@ -10,6 +10,10 @@ info: servers: - url: / tags: +- name: Information Coordinator Service Simulator (exists only in test) +- name: Producer job control API +- name: Test Consumer Simulator (exists only in test) +- name: DMAAP Simulator (exists only in test) - name: Actuator description: Monitor and interact externalDocs: @@ -21,7 +25,7 @@ paths: tags: - Actuator summary: Actuator web endpoint 'threaddump' - operationId: handle_2_1_3 + operationId: threaddump_4 responses: 200: description: OK @@ -34,7 +38,7 @@ paths: tags: - Actuator summary: Actuator web endpoint 'info' - operationId: handle_9 + operationId: info_2 responses: 200: description: OK @@ -136,7 +140,7 @@ paths: tags: - Actuator summary: Actuator web endpoint 'loggers' - operationId: handle_6 + operationId: loggers_2 responses: 200: description: OK @@ -149,7 +153,7 @@ paths: tags: - Actuator summary: Actuator web endpoint 'health-path' - operationId: handle_12 + operationId: health-path_2 responses: 200: description: OK @@ -230,7 +234,7 @@ paths: tags: - Actuator summary: Actuator web endpoint 'metrics-requiredMetricName' - operationId: handle_5 + operationId: metrics-requiredMetricName_2 parameters: - name: requiredMetricName in: path @@ -268,7 +272,7 @@ paths: tags: - Actuator summary: Actuator web endpoint 'logfile' - operationId: handle_8 + operationId: logfile_2 responses: 200: description: OK @@ -281,7 +285,7 @@ paths: tags: - Actuator summary: Actuator web endpoint 'loggers-name' - operationId: handle_7 + operationId: loggers-name_4 parameters: - name: name in: path @@ -301,7 +305,7 @@ paths: tags: - Actuator summary: Actuator web endpoint 'loggers-name' - operationId: handle_0 + operationId: loggers-name_3 parameters: - name: name in: path @@ -322,7 +326,7 @@ paths: tags: - Actuator summary: Actuator web endpoint 'health' - operationId: handle_11 + operationId: health_2 responses: 200: description: OK @@ -370,7 +374,7 @@ paths: tags: - Actuator summary: Actuator web endpoint 'metrics' - operationId: handle_4 + operationId: metrics_2 responses: 200: description: OK @@ -383,7 +387,7 @@ paths: tags: - Actuator summary: Actuator web endpoint 'heapdump' - operationId: handle_10 + operationId: heapdump_2 responses: 200: description: OK diff --git a/dmaap-adaptor-java/pom.xml b/dmaap-adaptor-java/pom.xml index 9c1dd447..71f2bb82 100644 --- a/dmaap-adaptor-java/pom.xml +++ b/dmaap-adaptor-java/pom.xml @@ -26,7 +26,7 @@ org.springframework.boot spring-boot-starter-parent - 2.5.3 + 2.6.2 org.o-ran-sc.nonrtric @@ -65,7 +65,7 @@ org.springdoc springdoc-openapi-ui - 1.5.4 + 1.6.3 org.springframework.boot @@ -93,7 +93,6 @@ swagger-jaxrs2-servlet-initializer ${swagger.version} - org.immutables value @@ -363,4 +362,4 @@ JIRA https://jira.o-ran-sc.org/ - + \ No newline at end of file diff --git a/helm-manager/pom.xml b/helm-manager/pom.xml index 607a6adc..7188c015 100644 --- a/helm-manager/pom.xml +++ b/helm-manager/pom.xml @@ -26,7 +26,7 @@ org.springframework.boot spring-boot-starter-parent - 2.3.8.RELEASE + 2.6.2 org.o-ran-sc.nonrtric @@ -53,9 +53,9 @@ - org.onap.policy.clamp.participant - policy-clamp-participant-impl-kubernetes - ${policy-clamp-participant-impl-kubernetes.version} + org.onap.policy.clamp.participant + policy-clamp-participant-impl-kubernetes + ${policy-clamp-participant-impl-kubernetes.version} @@ -65,26 +65,26 @@ org.apache.maven.plugins maven-dependency-plugin - - copy - package - - copy - - - - - org.onap.policy.clamp.participant - policy-clamp-participant-impl-kubernetes - ${policy-clamp-participant-impl-kubernetes.version} - jar - true - ${basedir}/target - app.jar - - - - + + copy + package + + copy + + + + + org.onap.policy.clamp.participant + policy-clamp-participant-impl-kubernetes + ${policy-clamp-participant-impl-kubernetes.version} + jar + true + ${basedir}/target + app.jar + + + + @@ -148,4 +148,4 @@ JIRA https://jira.o-ran-sc.org/ - + \ No newline at end of file diff --git a/information-coordinator-service/api/ics-api.json b/information-coordinator-service/api/ics-api.json index 2fe34745..69ad473b 100644 --- a/information-coordinator-service/api/ics-api.json +++ b/information-coordinator-service/api/ics-api.json @@ -378,7 +378,7 @@ }}, "/actuator/threaddump": {"get": { "summary": "Actuator web endpoint 'threaddump'", - "operationId": "handle_2_1_3", + "operationId": "threaddump_4", "responses": {"200": { "description": "OK", "content": {"*/*": {"schema": {"type": "object"}}} @@ -556,7 +556,7 @@ }, "/actuator/loggers": {"get": { "summary": "Actuator web endpoint 'loggers'", - "operationId": "handle_6", + "operationId": "loggers_2", "responses": {"200": { "description": "OK", "content": {"*/*": {"schema": {"type": "object"}}} @@ -565,7 +565,7 @@ }}, "/actuator/health/**": {"get": { "summary": "Actuator web endpoint 'health-path'", - "operationId": "handle_12", + "operationId": "health-path_2", "responses": {"200": { "description": "OK", "content": {"*/*": {"schema": {"type": "object"}}} @@ -586,7 +586,7 @@ }}, "/actuator/metrics/{requiredMetricName}": {"get": { "summary": "Actuator web endpoint 'metrics-requiredMetricName'", - "operationId": "handle_5", + "operationId": "metrics-requiredMetricName_2", "responses": {"200": { "description": "OK", "content": {"*/*": {"schema": {"type": "object"}}} @@ -652,7 +652,7 @@ "/actuator/loggers/{name}": { "post": { "summary": "Actuator web endpoint 'loggers-name'", - "operationId": "handle_0", + "operationId": "loggers-name_3", "responses": {"200": { "description": "OK", "content": {"*/*": {"schema": {"type": "object"}}} @@ -667,7 +667,7 @@ }, "get": { "summary": "Actuator web endpoint 'loggers-name'", - "operationId": "handle_7", + "operationId": "loggers-name_4", "responses": {"200": { "description": "OK", "content": {"*/*": {"schema": {"type": "object"}}} @@ -766,7 +766,7 @@ }}, "/actuator/metrics": {"get": { "summary": "Actuator web endpoint 'metrics'", - "operationId": "handle_4", + "operationId": "metrics_2", "responses": {"200": { "description": "OK", "content": {"*/*": {"schema": {"type": "object"}}} @@ -775,7 +775,7 @@ }}, "/actuator/info": {"get": { "summary": "Actuator web endpoint 'info'", - "operationId": "handle_9", + "operationId": "info_2", "responses": {"200": { "description": "OK", "content": {"*/*": {"schema": {"type": "object"}}} @@ -1001,7 +1001,7 @@ }, "/actuator/logfile": {"get": { "summary": "Actuator web endpoint 'logfile'", - "operationId": "handle_8", + "operationId": "logfile_2", "responses": {"200": { "description": "OK", "content": {"*/*": {"schema": {"type": "object"}}} @@ -1148,7 +1148,7 @@ }}, "/actuator/health": {"get": { "summary": "Actuator web endpoint 'health'", - "operationId": "handle_11", + "operationId": "health_2", "responses": {"200": { "description": "OK", "content": {"*/*": {"schema": {"type": "object"}}} @@ -1231,7 +1231,7 @@ }}, "/actuator/heapdump": {"get": { "summary": "Actuator web endpoint 'heapdump'", - "operationId": "handle_10", + "operationId": "heapdump_2", "responses": {"200": { "description": "OK", "content": {"*/*": {"schema": {"type": "object"}}} @@ -1249,6 +1249,13 @@ "version": "1.0" }, "tags": [ + {"name": "A1-EI (callbacks)"}, + { + "name": "Data producer (callbacks)", + "description": "API implemented by data producers" + }, + {"name": "Data consumer"}, + {"name": "Data consumer (callbacks)"}, { "name": "A1-EI (registration)", "description": "Data consumer EI job registration" @@ -1257,22 +1264,22 @@ "name": "A1-EI (callbacks)", "description": "Data consumer EI job status callbacks" }, - { - "name": "Data producer (callbacks)", - "description": "API implemented by data producers" - }, + {"name": "Service status"}, + {"name": "A1-EI (registration)"}, + {"name": "Data producer (registration)"}, + {"name": "Data producer (callbacks)"}, { "name": "Data producer (registration)", "description": "API for data producers" }, - { - "name": "Service status", - "description": "API for monitoring of the service" - }, { "name": "Data consumer", "description": "API for data consumers" }, + { + "name": "Service status", + "description": "API for monitoring of the service" + }, { "name": "Actuator", "description": "Monitor and interact", diff --git a/information-coordinator-service/api/ics-api.yaml b/information-coordinator-service/api/ics-api.yaml index 03de106a..dafb0ffd 100644 --- a/information-coordinator-service/api/ics-api.yaml +++ b/information-coordinator-service/api/ics-api.yaml @@ -30,18 +30,25 @@ info: servers: - url: / tags: +- name: A1-EI (callbacks) +- name: Data producer (callbacks) + description: API implemented by data producers +- name: Data consumer +- name: Data consumer (callbacks) - name: A1-EI (registration) description: Data consumer EI job registration - name: A1-EI (callbacks) description: Data consumer EI job status callbacks +- name: Service status +- name: A1-EI (registration) +- name: Data producer (registration) - name: Data producer (callbacks) - description: API implemented by data producers - name: Data producer (registration) description: API for data producers -- name: Service status - description: API for monitoring of the service - name: Data consumer description: API for data consumers +- name: Service status + description: API for monitoring of the service - name: Actuator description: Monitor and interact externalDocs: @@ -118,7 +125,7 @@ paths: tags: - Actuator summary: Actuator web endpoint 'threaddump' - operationId: handle_2_1_3 + operationId: threaddump_4 responses: 200: description: OK @@ -348,7 +355,7 @@ paths: tags: - Actuator summary: Actuator web endpoint 'loggers' - operationId: handle_6 + operationId: loggers_2 responses: 200: description: OK @@ -361,7 +368,7 @@ paths: tags: - Actuator summary: Actuator web endpoint 'health-path' - operationId: handle_12 + operationId: health-path_2 responses: 200: description: OK @@ -389,7 +396,7 @@ paths: tags: - Actuator summary: Actuator web endpoint 'metrics-requiredMetricName' - operationId: handle_5 + operationId: metrics-requiredMetricName_2 parameters: - name: requiredMetricName in: path @@ -466,7 +473,7 @@ paths: tags: - Actuator summary: Actuator web endpoint 'loggers-name' - operationId: handle_7 + operationId: loggers-name_4 parameters: - name: name in: path @@ -486,7 +493,7 @@ paths: tags: - Actuator summary: Actuator web endpoint 'loggers-name' - operationId: handle_0 + operationId: loggers-name_3 parameters: - name: name in: path @@ -617,7 +624,7 @@ paths: tags: - Actuator summary: Actuator web endpoint 'metrics' - operationId: handle_4 + operationId: metrics_2 responses: 200: description: OK @@ -630,7 +637,7 @@ paths: tags: - Actuator summary: Actuator web endpoint 'info' - operationId: handle_9 + operationId: info_2 responses: 200: description: OK @@ -923,7 +930,7 @@ paths: tags: - Actuator summary: Actuator web endpoint 'logfile' - operationId: handle_8 + operationId: logfile_2 responses: 200: description: OK @@ -1107,7 +1114,7 @@ paths: tags: - Actuator summary: Actuator web endpoint 'health' - operationId: handle_11 + operationId: health_2 responses: 200: description: OK @@ -1211,7 +1218,7 @@ paths: tags: - Actuator summary: Actuator web endpoint 'heapdump' - operationId: handle_10 + operationId: heapdump_2 responses: 200: description: OK diff --git a/information-coordinator-service/pom.xml b/information-coordinator-service/pom.xml index d66992de..eb5d6627 100644 --- a/information-coordinator-service/pom.xml +++ b/information-coordinator-service/pom.xml @@ -26,7 +26,7 @@ org.springframework.boot spring-boot-starter-parent - 2.5.3 + 2.6.2 org.o-ran-sc.nonrtric @@ -56,8 +56,6 @@ 1.24.3 3.0.11 0.30.0 - 1.1.11 - 2.1.1 3.7.0.1746 0.8.5 true @@ -66,7 +64,7 @@ org.springdoc springdoc-openapi-ui - 1.5.4 + 1.6.3 org.springframework.boot @@ -209,7 +207,7 @@ - com,java,javax,org + com,java,org @@ -359,4 +357,4 @@ JIRA https://jira.o-ran-sc.org/ - + \ No newline at end of file diff --git a/information-coordinator-service/src/main/java/org/oransc/ics/clients/AsyncRestClientFactory.java b/information-coordinator-service/src/main/java/org/oransc/ics/clients/AsyncRestClientFactory.java index cfac5cf1..0b47733c 100644 --- a/information-coordinator-service/src/main/java/org/oransc/ics/clients/AsyncRestClientFactory.java +++ b/information-coordinator-service/src/main/java/org/oransc/ics/clients/AsyncRestClientFactory.java @@ -38,7 +38,6 @@ import java.security.cert.X509Certificate; import java.util.Collections; import java.util.List; import java.util.stream.Collectors; - import javax.net.ssl.KeyManagerFactory; import org.oransc.ics.configuration.WebClientConfig; diff --git a/information-coordinator-service/src/main/java/org/oransc/ics/controllers/a1e/A1eCallbacks.java b/information-coordinator-service/src/main/java/org/oransc/ics/controllers/a1e/A1eCallbacks.java index d0fda941..b3692613 100644 --- a/information-coordinator-service/src/main/java/org/oransc/ics/controllers/a1e/A1eCallbacks.java +++ b/information-coordinator-service/src/main/java/org/oransc/ics/controllers/a1e/A1eCallbacks.java @@ -53,26 +53,24 @@ public class A1eCallbacks { private final AsyncRestClient restClient; private final InfoJobs eiJobs; - private final InfoProducers eiProducers; @Autowired - public A1eCallbacks(ApplicationConfig config, InfoJobs eiJobs, InfoProducers eiProducers) { + public A1eCallbacks(ApplicationConfig config, InfoJobs eiJobs) { AsyncRestClientFactory restClientFactory = new AsyncRestClientFactory(config.getWebClientConfig()); this.restClient = restClientFactory.createRestClientUseHttpProxy(""); this.eiJobs = eiJobs; - this.eiProducers = eiProducers; } - public Flux notifyJobStatus(Collection eiTypes) { + public Flux notifyJobStatus(Collection eiTypes, InfoProducers eiProducers) { return Flux.fromIterable(eiTypes) // .flatMap(eiType -> Flux.fromIterable(this.eiJobs.getJobsForType(eiType))) // .filter(eiJob -> !eiJob.getJobStatusUrl().isEmpty()) // - .filter(eiJob -> this.eiProducers.isJobEnabled(eiJob) != eiJob.isLastStatusReportedEnabled()) - .flatMap(this::noifyStatusToJobOwner); + .filter(eiJob -> eiProducers.isJobEnabled(eiJob) != eiJob.isLastStatusReportedEnabled()) + .flatMap(eiJob -> noifyStatusToJobOwner(eiJob, eiProducers)); } - private Mono noifyStatusToJobOwner(InfoJob job) { - boolean isJobEnabled = this.eiProducers.isJobEnabled(job); + private Mono noifyStatusToJobOwner(InfoJob job, InfoProducers eiProducers) { + boolean isJobEnabled = eiProducers.isJobEnabled(job); A1eEiJobStatus status = isJobEnabled ? new A1eEiJobStatus(A1eEiJobStatus.EiJobStatusValues.ENABLED) : new A1eEiJobStatus(A1eEiJobStatus.EiJobStatusValues.DISABLED); String body = gson.toJson(status); diff --git a/information-coordinator-service/src/main/java/org/oransc/ics/repository/InfoProducers.java b/information-coordinator-service/src/main/java/org/oransc/ics/repository/InfoProducers.java index 9d98eaad..19b26985 100644 --- a/information-coordinator-service/src/main/java/org/oransc/ics/repository/InfoProducers.java +++ b/information-coordinator-service/src/main/java/org/oransc/ics/repository/InfoProducers.java @@ -91,9 +91,9 @@ public class InfoProducers { producerCallbacks.startInfoJobs(producer, this.infoJobs) // .collectList() // - .flatMapMany(list -> consumerCallbacks.notifyJobStatus(producer.getInfoTypes())) // + .flatMapMany(list -> consumerCallbacks.notifyJobStatus(producer.getInfoTypes(), this)) // .collectList() // - .flatMapMany(list -> consumerCallbacks.notifyJobStatus(previousTypes)) // + .flatMapMany(list -> consumerCallbacks.notifyJobStatus(previousTypes, this)) // .subscribe(); return producer; @@ -136,7 +136,7 @@ public class InfoProducers { this.logger.error("Bug, no producer found"); } } - this.consumerCallbacks.notifyJobStatus(producer.getInfoTypes()) // + this.consumerCallbacks.notifyJobStatus(producer.getInfoTypes(), this) // .subscribe(); } diff --git a/information-coordinator-service/src/main/java/org/oransc/ics/tasks/ProducerSupervision.java b/information-coordinator-service/src/main/java/org/oransc/ics/tasks/ProducerSupervision.java index 690f47cd..36ca28e0 100644 --- a/information-coordinator-service/src/main/java/org/oransc/ics/tasks/ProducerSupervision.java +++ b/information-coordinator-service/src/main/java/org/oransc/ics/tasks/ProducerSupervision.java @@ -89,7 +89,7 @@ public class ProducerSupervision { .filter(infoJob -> !producer.isJobEnabled(infoJob)) // .flatMap(infoJob -> producerCallbacks.startInfoJob(producer, infoJob, Retry.max(1)), MAX_CONCURRENCY) // .collectList() // - .flatMapMany(startedJobs -> consumerCallbacks.notifyJobStatus(producer.getInfoTypes())) // + .flatMapMany(startedJobs -> consumerCallbacks.notifyJobStatus(producer.getInfoTypes(), infoProducers)) // .collectList(); }