X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=policy-agent%2Fsrc%2Fmain%2Fjava%2Forg%2Foransc%2Fpolicyagent%2Ftasks%2FRefreshConfigTask.java;h=7cfe4868ee69e277b2ccd5184c003bc0f3c76146;hb=d375c04a9c1917a9bf98285fb1f30062cff7a6d6;hp=de4a771c642deadb17321307e494ef8df9cf6288;hpb=5606c08e8a5cc813a6a6eb09bacce123137e43e2;p=nonrtric.git diff --git a/policy-agent/src/main/java/org/oransc/policyagent/tasks/RefreshConfigTask.java b/policy-agent/src/main/java/org/oransc/policyagent/tasks/RefreshConfigTask.java index de4a771c..7cfe4868 100644 --- a/policy-agent/src/main/java/org/oransc/policyagent/tasks/RefreshConfigTask.java +++ b/policy-agent/src/main/java/org/oransc/policyagent/tasks/RefreshConfigTask.java @@ -70,7 +70,8 @@ import reactor.core.publisher.Flux; import reactor.core.publisher.Mono; /** - * Regularly refreshes the configuration from Consul. + * Regularly refreshes the configuration from Consul or from a local + * configuration file. */ @Component public class RefreshConfigTask { @@ -108,8 +109,9 @@ public class RefreshConfigTask { logger.debug("Starting refreshConfigTask"); stop(); refreshTask = createRefreshTask() // - .subscribe(notUsed -> logger.debug("Refreshed configuration data"), - throwable -> logger.error("Configuration refresh terminated due to exception", throwable), + .subscribe( + notUsed -> logger.debug("Refreshed configuration data"), throwable -> logger + .error("Configuration refresh terminated due to exception {}", throwable.getMessage()), () -> logger.error("Configuration refresh terminated")); } @@ -125,16 +127,16 @@ public class RefreshConfigTask { .filter(notUsed -> !this.isConsulUsed) // .flatMap(notUsed -> loadConfigurationFromFile()) // .onErrorResume(this::ignoreError) // - .doOnNext(json -> logger.debug("loadFromFile")) // + .doOnNext(json -> logger.debug("loadFromFile succeeded")) // .doOnTerminate(() -> logger.error("loadFromFile Terminate")); Flux loadFromConsul = getEnvironment(systemEnvironment) // .flatMap(this::createCbsClient) // .flatMapMany(this::periodicConfigurationUpdates) // .onErrorResume(this::ignoreError) // - .doOnNext(json -> logger.debug("loadFromConsul")) // + .doOnNext(json -> logger.debug("loadFromConsul succeeded")) // .doOnNext(json -> this.isConsulUsed = true) // - .doOnTerminate(() -> logger.error("loadFromConsul Terminate")); + .doOnTerminate(() -> logger.error("loadFromConsul Terminated")); return Flux.merge(loadFromFile, loadFromConsul) // .flatMap(this::parseConfiguration) // @@ -164,20 +166,18 @@ public class RefreshConfigTask { return Mono.empty(); } - private Mono parseConfiguration(JsonObject jsonObject) { + private Mono parseConfiguration(JsonObject jsonObject) { try { ApplicationConfigParser parser = new ApplicationConfigParser(); - parser.parse(jsonObject); - return Mono.just(parser); + return Mono.just(parser.parse(jsonObject)); } catch (ServiceException e) { logger.error("Could not parse configuration {}", e.toString(), e); return Mono.error(e); } } - private Flux updateConfig(ApplicationConfigParser config) { - return this.appConfig.setConfiguration(config.getRicConfigs(), config.getDmaapPublisherConfig(), - config.getDmaapConsumerConfig()); + private Flux updateConfig(ApplicationConfigParser.ConfigParserResult config) { + return this.appConfig.setConfiguration(config); } boolean configFileExists() {