<groupId>org.o-ran-sc.ric.a1med.client</groupId>
<artifactId>a1-med-client</artifactId>
<name>RIC A1 Mediator client</name>
- <version>0.3.0-SNAPSHOT</version>
+ <version>0.4.0-SNAPSHOT</version>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<goal>generate</goal>
</goals>
<configuration>
- <inputSpec>${project.basedir}/src/main/resources/a1_mediator_0.3.0.yaml</inputSpec>
+ <inputSpec>${project.basedir}/src/main/resources/a1_mediator_0.4.0.yaml</inputSpec>
<language>java</language>
<packageName>${client.base.package.name}</packageName>
<modelPackage>${client.base.package.name}.model</modelPackage>
--- /dev/null
+# ========================LICENSE_START=================================
+# O-RAN-SC
+# %%
+# Copyright (C) 2019 AT&T Intellectual Property and Nokia
+# %%
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+# ========================LICENSE_END===================================
+openapi: 3.0.0
+info:
+ version: 0.4.0
+ title: RIC A1
+paths:
+ '/ric/policies/{policyname}':
+ parameters:
+ - name: policyname
+ in: path
+ description: the name of the policy to retrieve or replace
+ required: true
+ schema:
+ type: string
+ put:
+ description: >
+ Replace the current operation of policyname with the new parameters (replaces the current policy with the new one specified here).
+
+
+ Until there are standard policy definitions that are defined OUTSIDE of the scope of xapps, this API will be *very underspecified*.
+ This is a known gap, do not despair.
+ The PUT body is specified, *currently* in the xapp manifest that implements this policy; the caller should refer to the message_receives_payload_schema field to make this request.
+ The return content is also specified as above (in the xapp manifest) in the message_sends_payload_schema field.
+
+
+ Eventually, we need concrete policy defintions that are decoupled from xapp, and then this API description will become more fully specified.
+ tags:
+ - A1 Mediator
+ operationId: a1.controller.put_handler
+ requestBody:
+ content:
+ application/json:
+ schema:
+ type: object
+
+
+ responses:
+ '200':
+ description: >
+ The downstream component responsible for implementing this policy replied with a good response. Check the manifest for response details.
+ '400':
+ description: >
+ Bad PUT body for this policyname
+ '404':
+ description: >
+ there is no policy with this name
+ '502':
+ description: >
+ The xapp that implements this policy replied, but the reply was a "failure", OR there was no status indicating success or failure.
+ This returns an object containing the reason, and the return payload.
+ content:
+ application/json:
+ schema:
+ type: object
+ properties:
+ reason:
+ type: string
+ enum: [
+ "NO STATUS",
+ "BAD STATUS",
+ "NOT JSON"
+ ]
+ return_payload:
+ type: object
+
+ '504':
+ description: >
+ the downstream component responsible for handling this policy did not respond (in time)
+
+ get:
+ description: Get the current state/value of policyname
+ tags:
+ - A1 Mediator
+ operationId: a1.controller.get_handler
+ responses:
+ '200':
+ description: >
+ policy state successfully retrieved.
+ TODO, what describes the format returned here?
+ content:
+ application/json:
+ schema:
+ type: object
+ '404':
+ description: there is no policy with this name
+