X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=policy-agent%2Fsrc%2Fmain%2Fjava%2Forg%2Foransc%2Fpolicyagent%2Frepository%2FPolicies.java;h=58c91b35009082031c2a0a28cb7728b70720bd44;hb=b47a7130c10bef2bf812366ca971e4eaa938b152;hp=7b7b17c31424c5f8b1210cedc86e46948d1033a8;hpb=bca519150103ccd308dd492e07744bc494a4a4ec;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 7b7b17c3..58c91b35 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 @@ -23,6 +23,7 @@ package org.oransc.policyagent.repository; import java.util.Collection; import java.util.HashMap; import java.util.Map; +import java.util.Set; import java.util.Vector; import org.oransc.policyagent.exceptions.ServiceException; @@ -70,6 +71,14 @@ public class Policies { return map.values(); } + public synchronized boolean containsPolicy(String id) { + return policiesId.containsKey(id); + } + + public synchronized Policy get(String id) { + return policiesId.get(id); + } + public synchronized Policy getPolicy(String id) throws ServiceException { Policy p = policiesId.get(id); if (p == null) { @@ -113,10 +122,10 @@ public class Policies { return policiesId.size(); } - public void clear() { - for (String id : policiesId.keySet()) { - removeId(id); + public synchronized void clear() { + while (policiesId.size() > 0) { + Set keys = policiesId.keySet(); + removeId(keys.iterator().next()); } } - }