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=1dd850be6be4fb84971cf43895cf2758155bcf14;hb=842b9d220588fba7fc17df0cf9c094f91005118b;hp=f23b5e24882fa5e23aecd8213c6a036dbcc2ebca;hpb=3482ea81c8189d5cfacf4005e1c92673304e11b3;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 f23b5e24..1dd850be 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 @@ -20,19 +20,15 @@ package org.oransc.policyagent.configuration; +import java.util.ArrayList; 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; import org.springframework.boot.context.properties.EnableConfigurationProperties; @@ -42,21 +38,38 @@ public class ApplicationConfig { @NotEmpty private String filepath; - private Collection observers = new Vector<>(); + @NotEmpty + private String a1ControllerBaseUrl; + + @NotEmpty + private String a1ControllerUsername; + + @NotEmpty + private String a1ControllerPassword; + + private Collection observers = new ArrayList<>(); private Map ricConfigs = new HashMap<>(); @Getter private Properties dmaapPublisherConfig; @Getter private Properties dmaapConsumerConfig; - @Autowired - public ApplicationConfig() { - } - public String getLocalConfigurationFilePath() { return this.filepath; } + public String getA1ControllerBaseUrl() { + return this.a1ControllerBaseUrl; + } + + public String getA1ControllerUsername() { + return this.a1ControllerUsername; + } + + public String getA1ControllerPassword() { + return this.a1ControllerPassword; + } + /* * Do not remove, used by framework! */ @@ -64,6 +77,18 @@ public class ApplicationConfig { this.filepath = filepath; } + public synchronized void setA1ControllerBaseUrl(String a1ControllerBaseUrl) { + this.a1ControllerBaseUrl = a1ControllerBaseUrl; + } + + public synchronized void setA1ControllerUsername(String a1ControllerUsername) { + this.a1ControllerUsername = a1ControllerUsername; + } + + public synchronized void setA1ControllerPassword(String a1ControllerPassword) { + this.a1ControllerPassword = a1ControllerPassword; + } + public synchronized Collection getRicConfigs() { return this.ricConfigs.values(); } @@ -77,7 +102,7 @@ public class ApplicationConfig { throw new ServiceException("Could not find ric: " + ricName); } - public static enum RicConfigUpdate { + public enum RicConfigUpdate { ADDED, CHANGED, REMOVED } @@ -101,8 +126,12 @@ public class ApplicationConfig { public void setConfiguration(@NotNull Collection ricConfigs, Properties dmaapPublisherConfig, Properties dmaapConsumerConfig) { - Collection notifications = new Vector<>(); + + Collection notifications = new ArrayList<>(); synchronized (this) { + this.dmaapPublisherConfig = dmaapPublisherConfig; + this.dmaapConsumerConfig = dmaapConsumerConfig; + Map newRicConfigs = new HashMap<>(); for (RicConfig newConfig : ricConfigs) { RicConfig oldConfig = this.ricConfigs.get(newConfig.name()); @@ -123,10 +152,8 @@ public class ApplicationConfig { } this.ricConfigs = newRicConfigs; } - notifyObservers(notifications); - this.dmaapPublisherConfig = dmaapPublisherConfig; - this.dmaapConsumerConfig = dmaapConsumerConfig; + notifyObservers(notifications); } private void notifyObservers(Collection notifications) {