X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=policy-agent%2Fsrc%2Fmain%2Fjava%2Forg%2Foransc%2Fpolicyagent%2Fconfiguration%2FApplicationConfig.java;h=f23b5e24882fa5e23aecd8213c6a036dbcc2ebca;hb=dd7e4f6cd1a2273a583f05e0d86810f70272723d;hp=d4f726106134b2ea9204932df567a44f1f4646f9;hpb=95db19e2820102db0255ca57407faa333cbb4085;p=nonrtric.git diff --git a/policy-agent/src/main/java/org/oransc/policyagent/configuration/ApplicationConfig.java b/policy-agent/src/main/java/org/oransc/policyagent/configuration/ApplicationConfig.java index d4f72610..f23b5e24 100644 --- a/policy-agent/src/main/java/org/oransc/policyagent/configuration/ApplicationConfig.java +++ b/policy-agent/src/main/java/org/oransc/policyagent/configuration/ApplicationConfig.java @@ -23,11 +23,14 @@ package org.oransc.policyagent.configuration; import java.util.Collection; import java.util.HashMap; import java.util.Map; +import java.util.Properties; import java.util.Vector; import javax.validation.constraints.NotEmpty; import javax.validation.constraints.NotNull; +import lombok.Getter; + import org.oransc.policyagent.exceptions.ServiceException; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.context.properties.ConfigurationProperties; @@ -41,6 +44,10 @@ public class ApplicationConfig { private Collection observers = new Vector<>(); private Map ricConfigs = new HashMap<>(); + @Getter + private Properties dmaapPublisherConfig; + @Getter + private Properties dmaapConsumerConfig; @Autowired public ApplicationConfig() { @@ -50,6 +57,13 @@ public class ApplicationConfig { return this.filepath; } + /* + * Do not remove, used by framework! + */ + public synchronized void setFilepath(String filepath) { + this.filepath = filepath; + } + public synchronized Collection getRicConfigs() { return this.ricConfigs.values(); } @@ -85,7 +99,8 @@ public class ApplicationConfig { } } - public void setConfiguration(@NotNull Collection ricConfigs) { + public void setConfiguration(@NotNull Collection ricConfigs, Properties dmaapPublisherConfig, + Properties dmaapConsumerConfig) { Collection notifications = new Vector<>(); synchronized (this) { Map newRicConfigs = new HashMap<>(); @@ -95,7 +110,7 @@ public class ApplicationConfig { newRicConfigs.put(newConfig.name(), newConfig); notifications.add(new Notification(newConfig, RicConfigUpdate.ADDED)); this.ricConfigs.remove(newConfig.name()); - } else if (!newConfig.equals(newConfig)) { + } else if (!newConfig.equals(oldConfig)) { notifications.add(new Notification(newConfig, RicConfigUpdate.CHANGED)); newRicConfigs.put(newConfig.name(), newConfig); this.ricConfigs.remove(newConfig.name()); @@ -109,6 +124,9 @@ public class ApplicationConfig { this.ricConfigs = newRicConfigs; } notifyObservers(notifications); + + this.dmaapPublisherConfig = dmaapPublisherConfig; + this.dmaapConsumerConfig = dmaapConsumerConfig; } private void notifyObservers(Collection notifications) {