X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=policy-agent%2Fsrc%2Fmain%2Fjava%2Forg%2Foransc%2Fpolicyagent%2Frepository%2FRic.java;h=4169150b2e3715c2ba4ab174bbe85b903afac5ae;hb=934a146caf5c9d0f735f913375d55b59041b9db5;hp=68b07aa0864408f097ebf2d87b797a0b7b8daa0f;hpb=766e6af8d8ddf946ad5cb45a560b040e4857065e;p=nonrtric.git diff --git a/policy-agent/src/main/java/org/oransc/policyagent/repository/Ric.java b/policy-agent/src/main/java/org/oransc/policyagent/repository/Ric.java index 68b07aa0..4169150b 100644 --- a/policy-agent/src/main/java/org/oransc/policyagent/repository/Ric.java +++ b/policy-agent/src/main/java/org/oransc/policyagent/repository/Ric.java @@ -25,6 +25,7 @@ import java.util.HashMap; import java.util.Map; import java.util.Vector; +import org.oransc.policyagent.clients.A1Client.A1ProtocolType; import org.oransc.policyagent.configuration.RicConfig; /** @@ -32,8 +33,9 @@ import org.oransc.policyagent.configuration.RicConfig; */ public class Ric { private final RicConfig ricConfig; - private RicState state = RicState.NOT_INITIATED; + private RicState state = RicState.UNDEFINED; private Map supportedPolicyTypes = new HashMap<>(); + private A1ProtocolType protocolVersion = A1ProtocolType.UNKNOWN; /** * Creates the Ric. Initial state is {@link RicState.NOT_INITIATED}. @@ -65,38 +67,38 @@ public class Ric { * * @return a vector containing the nodes managed by this Ric. */ - public Vector getManagedNodes() { + public Vector getManagedElementIds() { return ricConfig.managedElementIds(); } /** * Determines if the given node is managed by this Ric. * - * @param nodeName the node name to check. + * @param managedElementId the node name to check. * @return true if the given node is managed by this Ric. */ - public boolean isManaging(String nodeName) { - return ricConfig.managedElementIds().contains(nodeName); + public boolean isManaging(String managedElementId) { + return ricConfig.managedElementIds().contains(managedElementId); } /** * Adds the given node as managed by this Ric. * - * @param nodeName the node to add. + * @param managedElementId the node to add. */ - public void addManagedNode(String nodeName) { - if (!ricConfig.managedElementIds().contains(nodeName)) { - ricConfig.managedElementIds().add(nodeName); + public void addManagedElement(String managedElementId) { + if (!ricConfig.managedElementIds().contains(managedElementId)) { + ricConfig.managedElementIds().add(managedElementId); } } /** * Removes the given node as managed by this Ric. * - * @param nodeName the node to remove. + * @param managedElementId the node to remove. */ - public void removeManagedNode(String nodeName) { - ricConfig.managedElementIds().remove(nodeName); + public void removeManagedElement(String managedElementId) { + ricConfig.managedElementIds().remove(managedElementId); } /** @@ -122,55 +124,54 @@ public class Ric { } /** - * Adds policy types as supported by this Ric. - * - * @param types the policy types to support. + * Removes all policy type as supported by this Ric. */ - public void addSupportedPolicyTypes(Collection types) { - for (PolicyType type : types) { - addSupportedPolicyType(type); - } - } - - /** - * Removes a policy type as supported by this Ric. - * - * @param type the policy type to remove as supported by this Ric. - */ - public void removeSupportedPolicyType(PolicyType type) { - supportedPolicyTypes.remove(type.name()); + public void clearSupportedPolicyTypes() { + supportedPolicyTypes.clear(); } /** * Checks if a type is supported by this Ric. * - * @param type the type to check if it is supported. + * @param typeName the name of the type to check if it is supported. * - * @return true if the given type issupported by this Ric, false otherwise. + * @return true if the given type is supported by this Ric, false otherwise. */ public boolean isSupportingType(String typeName) { return supportedPolicyTypes.containsKey(typeName); } + @Override + public String toString() { + return Ric.class.getSimpleName() + ": " + "name: " + name() + ", state: " + state + ", baseUrl: " + + ricConfig.baseUrl() + ", managedNodes: " + ricConfig.managedElementIds(); + } + /** * Represents the states possible for a Ric. */ public static enum RicState { /** - * The Ric has not been initiated yet. + * The agent view of the agent may be inconsistent */ - NOT_INITIATED, + UNDEFINED, /** - * The Ric is working fine. + * The normal state. Policies can be configured. */ - ACTIVE, + IDLE, /** - * Something is wrong with the Ric. + * The Ric states are recovered */ - FAULTY, - /** - * The node is unreachable at the moment. - */ - UNREACHABLE + RECOVERING + } + + public A1ProtocolType getProtocolVersion() { + return protocolVersion; } + + public void setProtocolVersion(A1ProtocolType version) { + protocolVersion = version; + + } + }