diff options
Diffstat (limited to 'cps-ncmp-rest/docs')
-rw-r--r-- | cps-ncmp-rest/docs/openapi/components.yaml | 45 | ||||
-rwxr-xr-x | cps-ncmp-rest/docs/openapi/ncmp-inventory.yml | 40 | ||||
-rwxr-xr-x | cps-ncmp-rest/docs/openapi/ncmp.yml (renamed from cps-ncmp-rest/docs/openapi/ncmproxy.yml) | 36 | ||||
-rwxr-xr-x | cps-ncmp-rest/docs/openapi/openapi-inventory.yml | 28 | ||||
-rwxr-xr-x | cps-ncmp-rest/docs/openapi/openapi.yml | 21 |
5 files changed, 114 insertions, 56 deletions
diff --git a/cps-ncmp-rest/docs/openapi/components.yaml b/cps-ncmp-rest/docs/openapi/components.yaml index ffb8dde113..d35919da4b 100644 --- a/cps-ncmp-rest/docs/openapi/components.yaml +++ b/cps-ncmp-rest/docs/openapi/components.yaml @@ -104,13 +104,27 @@ components: schema: type: string default: / - resourceIdentifierInPath: + resourceIdentifierInQuery: name: resourceIdentifier - in: path - description: Resource identifier to get/set the resource data + in: query + description: The format of resource identifier depend on the associated DMI Plugin implementation. For ONAP DMI Plugin it will be RESTConf paths but it can really be anything. required: true + allowReserved: true schema: type: string + examples: + sample1: + value: + resourceIdentifier: \parent\child + sample2: + value: + resourceIdentifier: \parent\listElement[key=value] + sample3: + value: + resourceIdentifier: \parent\listElement[key=value]\grandChild + sample4: + value: + resourceIdentifier: parent=1,child=abc acceptParamInHeader: name: Accept in: header @@ -119,21 +133,24 @@ components: schema: type: string enum: [ application/json, application/yang-data+json ] - fieldsParamInQuery: - name: fields + optionsParamInQuery: + name: options in: query - description: Fields parameter to filter resource + description: options parameter in query, it is mandatory to wrap key(s)=value(s) in parenthesis'()'. required: false schema: type: string - depthParamInQuery: - name: depth - in: query - description: Depth parameter for response - required: false - schema: - type: integer - minimum: 1 + allowReserved: true + examples: + sample1: + value: + options: (key1=value1,key2=value2) + sample2: + value: + options: (key1=value1,key2=value1/value2) + sample3: + value: + options: (key1=10,key2=value2,key3=[val31;val32]) contentParamInHeader: name: Content-Type in: header diff --git a/cps-ncmp-rest/docs/openapi/ncmp-inventory.yml b/cps-ncmp-rest/docs/openapi/ncmp-inventory.yml new file mode 100755 index 0000000000..b0a50aa83a --- /dev/null +++ b/cps-ncmp-rest/docs/openapi/ncmp-inventory.yml @@ -0,0 +1,40 @@ +# ============LICENSE_START======================================================= +# Copyright (C) 2021 Bell Canada +# ================================================================================ +# 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. +# +# SPDX-License-Identifier: Apache-2.0 +# ============LICENSE_END========================================================= + +updateDmiRegistration: + post: + description: Register a DMI Plugin with any new, updated or removed CM Handles. + tags: + - network-cm-proxy-inventory + summary: DMI notifies NCMP of new CM Handles + operationId: updateDmiPluginRegistration + requestBody: + required: true + content: + application/json: + schema: + $ref: 'components.yaml#/components/schemas/RestDmiPluginRegistration' + responses: + 201: + $ref: 'components.yaml#/components/responses/Created' + 400: + $ref: 'components.yaml#/components/responses/BadRequest' + 401: + $ref: 'components.yaml#/components/responses/Unauthorized' + 403: + $ref: 'components.yaml#/components/responses/Forbidden' diff --git a/cps-ncmp-rest/docs/openapi/ncmproxy.yml b/cps-ncmp-rest/docs/openapi/ncmp.yml index 2e5eba754d..52245c3cc0 100755 --- a/cps-ncmp-rest/docs/openapi/ncmproxy.yml +++ b/cps-ncmp-rest/docs/openapi/ncmp.yml @@ -1,6 +1,7 @@ # ============LICENSE_START======================================================= # Copyright (C) 2021 Nordix Foundation # Modifications Copyright (C) 2021 Pantheon.tech +# Modifications Copyright (C) 2021 Bell Canada # ================================================================================ # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -179,29 +180,6 @@ listNodeByCmHandleAndXpath: 404: $ref: 'components.yaml#/components/responses/NotFound' -updateDmiRegistration: - post: - description: Register a DMI Plugin with any new, updated or removed CM Handles. - tags: - - network-cm-proxy - summary: DMI notifies NCMP of new CM Handles - operationId: updateDmiPluginRegistration - requestBody: - required: true - content: - application/json: - schema: - $ref: 'components.yaml#/components/schemas/RestDmiPluginRegistration' - responses: - 201: - $ref: 'components.yaml#/components/responses/Created' - 400: - $ref: 'components.yaml#/components/responses/BadRequest' - 401: - $ref: 'components.yaml#/components/responses/Unauthorized' - 403: - $ref: 'components.yaml#/components/responses/Forbidden' - getResourceDataForPassthroughOperational: get: tags: @@ -211,10 +189,9 @@ getResourceDataForPassthroughOperational: operationId: getResourceDataOperationalForCmHandle parameters: - $ref: 'components.yaml#/components/parameters/cmHandleInPath' - - $ref: 'components.yaml#/components/parameters/resourceIdentifierInPath' + - $ref: 'components.yaml#/components/parameters/resourceIdentifierInQuery' - $ref: 'components.yaml#/components/parameters/acceptParamInHeader' - - $ref: 'components.yaml#/components/parameters/fieldsParamInQuery' - - $ref: 'components.yaml#/components/parameters/depthParamInQuery' + - $ref: 'components.yaml#/components/parameters/optionsParamInQuery' responses: 200: $ref: 'components.yaml#/components/responses/Ok' @@ -236,10 +213,9 @@ resourceDataForPassthroughRunning: operationId: getResourceDataRunningForCmHandle parameters: - $ref: 'components.yaml#/components/parameters/cmHandleInPath' - - $ref: 'components.yaml#/components/parameters/resourceIdentifierInPath' + - $ref: 'components.yaml#/components/parameters/resourceIdentifierInQuery' - $ref: 'components.yaml#/components/parameters/acceptParamInHeader' - - $ref: 'components.yaml#/components/parameters/fieldsParamInQuery' - - $ref: 'components.yaml#/components/parameters/depthParamInQuery' + - $ref: 'components.yaml#/components/parameters/optionsParamInQuery' responses: 200: $ref: 'components.yaml#/components/responses/Ok' @@ -259,7 +235,7 @@ resourceDataForPassthroughRunning: operationId: createResourceDataRunningForCmHandle parameters: - $ref: 'components.yaml#/components/parameters/cmHandleInPath' - - $ref: 'components.yaml#/components/parameters/resourceIdentifierInPath' + - $ref: 'components.yaml#/components/parameters/resourceIdentifierInQuery' - $ref: 'components.yaml#/components/parameters/contentParamInHeader' requestBody: required: true diff --git a/cps-ncmp-rest/docs/openapi/openapi-inventory.yml b/cps-ncmp-rest/docs/openapi/openapi-inventory.yml new file mode 100755 index 0000000000..ee09d050f3 --- /dev/null +++ b/cps-ncmp-rest/docs/openapi/openapi-inventory.yml @@ -0,0 +1,28 @@ +# ============LICENSE_START======================================================= +# Copyright (C) 2021 Bell Canada +# ================================================================================ +# 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. +# +# SPDX-License-Identifier: Apache-2.0 +# ============LICENSE_END========================================================= + +openapi: 3.0.1 +info: + title: NCMP Inventory API + description: NCMP Inventory API + version: "1.0" +servers: + - url: /ncmpInventory +paths: + /v1/ch: + $ref: 'ncmp-inventory.yml#/updateDmiRegistration' diff --git a/cps-ncmp-rest/docs/openapi/openapi.yml b/cps-ncmp-rest/docs/openapi/openapi.yml index 12356b5887..69c2a117d6 100755 --- a/cps-ncmp-rest/docs/openapi/openapi.yml +++ b/cps-ncmp-rest/docs/openapi/openapi.yml @@ -27,25 +27,22 @@ servers: - url: /ncmp paths: /v1/cm-handles/{cm-handle}/node: - $ref: 'ncmproxy.yml#/nodeByCmHandleAndXpath' + $ref: 'ncmp.yml#/nodeByCmHandleAndXpath' /v1/cm-handles/{cm-handle}/list-node: - $ref: 'ncmproxy.yml#/listNodeByCmHandleAndXpath' + $ref: 'ncmp.yml#/listNodeByCmHandleAndXpath' /v1/cm-handles/{cm-handle}/nodes/query: - $ref: 'ncmproxy.yml#/nodesByCmHandleAndCpsPath' + $ref: 'ncmp.yml#/nodesByCmHandleAndCpsPath' /v1/cm-handles/{cm-handle}/nodes: - $ref: 'ncmproxy.yml#/nodesByCmHandleAndXpath' + $ref: 'ncmp.yml#/nodesByCmHandleAndXpath' - /v1/ch: - $ref: 'ncmproxy.yml#/updateDmiRegistration' + /v1/ch/{cm-handle}/data/ds/ncmp-datastore:passthrough-operational: + $ref: 'ncmp.yml#/getResourceDataForPassthroughOperational' - /v1/ch/{cm-handle}/data/ds/ncmp-datastore:passthrough-operational/{resourceIdentifier}: - $ref: 'ncmproxy.yml#/getResourceDataForPassthroughOperational' - - /v1/ch/{cm-handle}/data/ds/ncmp-datastore:passthrough-running/{resourceIdentifier}: - $ref: 'ncmproxy.yml#/resourceDataForPassthroughRunning' + /v1/ch/{cm-handle}/data/ds/ncmp-datastore:passthrough-running: + $ref: 'ncmp.yml#/resourceDataForPassthroughRunning' /v1/ch/{cm-handle}/modules: - $ref: 'ncmproxy.yml#/fetchModuleReferencesByCmHandle'
\ No newline at end of file + $ref: 'ncmp.yml#/fetchModuleReferencesByCmHandle'
\ No newline at end of file |