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=f94c2c1e1e5e420985aceca18156c1621eb32ae7;hb=6a39814272307d0207222c9229b0d765ac062bf0;hp=31b514299673074f318fd940492e099204019d00;hpb=be84d0b846398b9684f9ddba2ef4f60a23cd5eb0;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 31b51429..f94c2c1e 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,27 +20,41 @@ package org.oransc.policyagent.clients; -import java.util.Collection; +import java.util.List; import org.oransc.policyagent.repository.Policy; + +import reactor.core.publisher.Flux; import reactor.core.publisher.Mono; +/** + * Common interface for 'A1' Policy access. Implementations of this interface + * adapts to the different southbound REST APIs supported. + */ public interface A1Client { - public static enum A1ProtocolType { - UNKNOWN, STD_V1 + 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> getPolicyTypeIdentities(); - public Mono> getPolicyIdentities(); + public Mono> getPolicyIdentities(); public Mono getPolicyTypeSchema(String policyTypeId); public Mono putPolicy(Policy policy); - public Mono deletePolicy(String policyId); + public Mono deletePolicy(Policy policy); + + public Flux deleteAllPolicies(); + public Mono getPolicyStatus(Policy policy); }