X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;ds=inline;f=policy-agent%2Fsrc%2Fmain%2Fjava%2Forg%2Foransc%2Fpolicyagent%2Frepository%2FPolicies.java;h=4e2ebfa03bae9650787e2b19b900c6b6f5bfe619;hb=6a39814272307d0207222c9229b0d765ac062bf0;hp=c910dd590d42d7c8873cdbd00b9beddae0e585fc;hpb=842b9d220588fba7fc17df0cf9c094f91005118b;p=nonrtric.git diff --git a/policy-agent/src/main/java/org/oransc/policyagent/repository/Policies.java b/policy-agent/src/main/java/org/oransc/policyagent/repository/Policies.java index c910dd59..4e2ebfa0 100644 --- a/policy-agent/src/main/java/org/oransc/policyagent/repository/Policies.java +++ b/policy-agent/src/main/java/org/oransc/policyagent/repository/Policies.java @@ -25,6 +25,8 @@ import java.util.Collections; import java.util.HashMap; import java.util.Map; import java.util.Set; +import java.util.Vector; + import org.oransc.policyagent.exceptions.ServiceException; public class Policies { @@ -59,7 +61,7 @@ public class Policies { if (map == null) { return Collections.emptyList(); } - return Collections.unmodifiableCollection(map.values()); + return new Vector<>(map.values()); } public synchronized boolean containsPolicy(String id) { @@ -79,7 +81,7 @@ public class Policies { } public synchronized Collection getAll() { - return Collections.unmodifiableCollection(policiesId.values()); + return new Vector<>(policiesId.values()); } public synchronized Collection getForService(String service) { @@ -109,6 +111,13 @@ public class Policies { multiMapRemove(policiesType, policy.type().name(), policy); } + public synchronized void removePoliciesForRic(String ricName) { + Collection policiesForRic = getForRic(ricName); + for (Policy policy : policiesForRic) { + remove(policy); + } + } + public synchronized int size() { return policiesId.size(); }