Change-Id: I5721d68f35919fec3acc50233cad3d9cf6046f23
Signed-off-by: PatrikBuhr <patrik.buhr@est.tech>
Issue-ID: NONRTRIC-378
import lombok.Getter;
import org.oransc.enrichment.configuration.WebClientConfig.HttpProxyConfig;
import lombok.Getter;
import org.oransc.enrichment.configuration.WebClientConfig.HttpProxyConfig;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.boot.context.properties.EnableConfigurationProperties;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.boot.context.properties.EnableConfigurationProperties;
@ConfigurationProperties()
public class ApplicationConfig {
@ConfigurationProperties()
public class ApplicationConfig {
+ private static final Logger logger = LoggerFactory.getLogger(ApplicationConfig.class);
+
@Getter
@Value("${app.vardata-directory}")
private String vardataDirectory;
@Getter
@Value("${app.vardata-directory}")
private String vardataDirectory;
public WebClientConfig getWebClientConfig() {
if (this.webClientConfig == null) {
public WebClientConfig getWebClientConfig() {
if (this.webClientConfig == null) {
+ if (this.httpProxyPort == 0) {
+ logger.info("Http proxy is not used");
+ } else {
+ logger.info("Http proxy is used for RAN access {}:{}", httpProxyHost, httpProxyPort);
+ }
HttpProxyConfig httpProxyConfig = ImmutableHttpProxyConfig.builder() //
.httpProxyHost(this.httpProxyHost) //
.httpProxyPort(this.httpProxyPort) //
HttpProxyConfig httpProxyConfig = ImmutableHttpProxyConfig.builder() //
.httpProxyHost(this.httpProxyHost) //
.httpProxyPort(this.httpProxyPort) //
out.print(gson.toJson(job));
}
} catch (Exception e) {
out.print(gson.toJson(job));
}
} catch (Exception e) {
- logger.warn("Could not save job: {} {}", job.getId(), e.getMessage());
+ logger.warn("Could not store job: {} {}", job.getId(), e.getMessage());
package org.oransc.enrichment.tasks;
package org.oransc.enrichment.tasks;
-import java.time.Duration;
-
import org.oransc.enrichment.configuration.ApplicationConfig;
import org.oransc.enrichment.controllers.consumer.ConsumerCallbacks;
import org.oransc.enrichment.controllers.producer.ProducerCallbacks;
import org.oransc.enrichment.configuration.ApplicationConfig;
import org.oransc.enrichment.controllers.consumer.ConsumerCallbacks;
import org.oransc.enrichment.controllers.producer.ProducerCallbacks;
}
private Mono<?> checkProducerJobs(EiProducer producer) {
}
private Mono<?> checkProducerJobs(EiProducer producer) {
+ final int MAX_CONCURRENCY = 10;
return getEiJobs(producer) //
.filter(eiJob -> !producer.isJobEnabled(eiJob)) //
return getEiJobs(producer) //
.filter(eiJob -> !producer.isJobEnabled(eiJob)) //
- .flatMap(eiJob -> startEiJob(producer, eiJob), 1) //
+ .flatMap(eiJob -> producerCallbacks.startEiJob(producer, eiJob, Retry.max(1)), MAX_CONCURRENCY) //
- .flatMapMany(eiJob -> consumerCallbacks.notifyJobStatus(producer.getEiTypes())) //
+ .flatMapMany(startedJobs -> consumerCallbacks.notifyJobStatus(producer.getEiTypes())) //
- private Mono<String> startEiJob(EiProducer producer, EiJob eiJob) {
- Retry retrySpec = Retry.fixedDelay(1, Duration.ofSeconds(1));
- return producerCallbacks.startEiJob(producer, eiJob, retrySpec);
- }
-
private Flux<EiJob> getEiJobs(EiProducer producer) {
return Flux.fromIterable(producer.getEiTypes()) //
.flatMap(eiType -> Flux.fromIterable(eiJobs.getJobsForType(eiType)));
private Flux<EiJob> getEiJobs(EiProducer producer) {
return Flux.fromIterable(producer.getEiTypes()) //
.flatMap(eiType -> Flux.fromIterable(eiJobs.getJobsForType(eiType)));