X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=policy-agent%2Fsrc%2Fmain%2Fjava%2Forg%2Foransc%2Fpolicyagent%2Fclients%2FA1Client.java;h=84c75381a7b77f9dc5781bb3cbed6d6e84befab8;hb=99dbc2588e004ad1c5a6bac78265e3875a669878;hp=bed839b7920750aa325875d72c7a8a78e4d69d63;hpb=766e6af8d8ddf946ad5cb45a560b040e4857065e;p=nonrtric.git diff --git a/policy-agent/src/main/java/org/oransc/policyagent/clients/A1Client.java b/policy-agent/src/main/java/org/oransc/policyagent/clients/A1Client.java index bed839b7..84c75381 100644 --- a/policy-agent/src/main/java/org/oransc/policyagent/clients/A1Client.java +++ b/policy-agent/src/main/java/org/oransc/policyagent/clients/A1Client.java @@ -20,19 +20,37 @@ package org.oransc.policyagent.clients; +import java.util.List; + +import org.oransc.policyagent.repository.Policy; + import reactor.core.publisher.Flux; import reactor.core.publisher.Mono; public interface A1Client { - public Flux getAllPolicyTypes(String nearRtRicUrl); + public enum A1ProtocolType { + UNKNOWN, // + STD_V1_1, // STD A1 version 1.1 + OSC_V1, // OSC 'A1' + SDNC_OSC_STD_V1_1, // SDNC_OSC with STD A1 version 1.1 southbound + SDNC_OSC_OSC_V1, // SDNC_OSC with OSC 'A1' southbound + SDNC_ONAP + } + + public Mono getProtocolVersion(); + + public Mono> getPolicyTypeIdentities(); + + public Mono> getPolicyIdentities(); - public Flux getPoliciesForType(String nearRtRicUrl, String policyTypeId); + public Mono getPolicyTypeSchema(String policyTypeId); - public Mono getPolicy(String nearRtRicUrl, String policyId); + public Mono putPolicy(Policy policy); - public Mono putPolicy(String nearRtRicUrl, String policyId, String policyString); + public Mono deletePolicy(Policy policy); - public Mono deletePolicy(String nearRtRicUrl, String policyId); + public Flux deleteAllPolicies(); + public Mono getPolicyStatus(Policy policy); }