# ============LICENSE_START=======================================================
# Copyright (c) 2021 Bell Canada.
+# Modifications Copyright (C) 2021-2022 Nordix Foundation
# ================================================================================
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# 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=========================================================
nodeByDataspaceAndAnchor:
- $ref: 'components.yml#/components/parameters/includeDescendantsOptionInQuery'
responses:
'200':
- $ref: 'components.yml#/components/responses/Ok'
+ description: OK
+ content:
+ application/json:
+ schema:
+ type: object
+ examples:
+ dataSampleResponse:
+ $ref: 'components.yml#/components/examples/dataSampleResponse'
'400':
$ref: 'components.yml#/components/responses/BadRequest'
'401':
$ref: 'components.yml#/components/responses/Unauthorized'
'403':
$ref: 'components.yml#/components/responses/Forbidden'
- '404':
- $ref: 'components.yml#/components/responses/NotFound'
+ '500':
+ $ref: 'components.yml#/components/responses/InternalServerError'
x-codegen-request-body-name: xpath
-listNodeByDataspaceAndAnchor:
+listElementByDataspaceAndAnchor:
post:
- description: Add list-node child elements to existing node for a given anchor and dataspace
+ description: Add list element(s) to a list for a given anchor and dataspace
tags:
- cps-data
- summary: Add list-node child element(s) under existing parent node
- operationId: addListNodeElements
+ summary: Add list element(s)
+ operationId: addListElements
parameters:
- $ref: 'components.yml#/components/parameters/dataspaceNameInPath'
- $ref: 'components.yml#/components/parameters/anchorNameInPath'
- $ref: 'components.yml#/components/parameters/requiredXpathInQuery'
+ - $ref: 'components.yml#/components/parameters/observedTimestampInQuery'
requestBody:
required: true
content:
application/json:
schema:
- type: string
+ type: object
+ examples:
+ dataSampleRequest:
+ $ref: 'components.yml#/components/examples/dataSampleRequest'
responses:
'201':
$ref: 'components.yml#/components/responses/Created'
$ref: 'components.yml#/components/responses/Unauthorized'
'403':
$ref: 'components.yml#/components/responses/Forbidden'
-
- patch:
- description: Replace list-node child elements under existing node for a given anchor and dataspace
+ '500':
+ $ref: 'components.yml#/components/responses/InternalServerError'
+ put:
+ description: Replace list content under a given parent, anchor and dataspace
tags:
- cps-data
- summary: Replace list-node child element(s) under existing parent node
- operationId: replaceListNodeElements
+ summary: Replace list content
+ operationId: replaceListContent
parameters:
- $ref: 'components.yml#/components/parameters/dataspaceNameInPath'
- $ref: 'components.yml#/components/parameters/anchorNameInPath'
- $ref: 'components.yml#/components/parameters/requiredXpathInQuery'
+ - $ref: 'components.yml#/components/parameters/observedTimestampInQuery'
requestBody:
required: true
content:
application/json:
schema:
- type: string
+ type: object
+ examples:
+ dataSampleRequest:
+ $ref: 'components.yml#/components/examples/dataSampleRequest'
responses:
'200':
- $ref: 'components.yml#/components/responses/Created'
+ $ref: 'components.yml#/components/responses/Ok'
+ '400':
+ $ref: 'components.yml#/components/responses/BadRequest'
+ '401':
+ $ref: 'components.yml#/components/responses/Unauthorized'
+ '403':
+ $ref: 'components.yml#/components/responses/Forbidden'
+ '500':
+ $ref: 'components.yml#/components/responses/InternalServerError'
+ delete:
+ description: Delete one or all list element(s) for a given anchor and dataspace
+ deprecated: true
+ tags:
+ - cps-data
+ summary: Delete one or all list element(s)
+ operationId: deleteListOrListElement
+ parameters:
+ - $ref: 'components.yml#/components/parameters/dataspaceNameInPath'
+ - $ref: 'components.yml#/components/parameters/anchorNameInPath'
+ - $ref: 'components.yml#/components/parameters/requiredXpathInQuery'
+ - $ref: 'components.yml#/components/parameters/observedTimestampInQuery'
+ responses:
+ '204':
+ $ref: 'components.yml#/components/responses/NoContent'
'400':
$ref: 'components.yml#/components/responses/BadRequest'
'401':
$ref: 'components.yml#/components/responses/Unauthorized'
'403':
$ref: 'components.yml#/components/responses/Forbidden'
+ '500':
+ $ref: 'components.yml#/components/responses/InternalServerError'
nodesByDataspaceAndAnchor:
post:
- $ref: 'components.yml#/components/parameters/dataspaceNameInPath'
- $ref: 'components.yml#/components/parameters/anchorNameInPath'
- $ref: 'components.yml#/components/parameters/xpathInQuery'
+ - $ref: 'components.yml#/components/parameters/observedTimestampInQuery'
requestBody:
required: true
content:
application/json:
schema:
- type: string
+ type: object
+ examples:
+ dataSampleRequest:
+ $ref: 'components.yml#/components/examples/dataSampleRequest'
responses:
'201':
$ref: 'components.yml#/components/responses/Created'
$ref: 'components.yml#/components/responses/Unauthorized'
'403':
$ref: 'components.yml#/components/responses/Forbidden'
-
+ '409':
+ $ref: 'components.yml#/components/responses/Conflict'
+ '500':
+ $ref: 'components.yml#/components/responses/InternalServerError'
patch:
description: Update a data node leaves for a given dataspace and anchor and a parent node xpath
tags:
- $ref: 'components.yml#/components/parameters/dataspaceNameInPath'
- $ref: 'components.yml#/components/parameters/anchorNameInPath'
- $ref: 'components.yml#/components/parameters/xpathInQuery'
+ - $ref: 'components.yml#/components/parameters/observedTimestampInQuery'
requestBody:
required: true
content:
application/json:
schema:
- type: string
+ type: object
+ examples:
+ dataSampleRequest:
+ $ref: 'components.yml#/components/examples/dataSampleRequest'
responses:
'200':
$ref: 'components.yml#/components/responses/Ok'
$ref: 'components.yml#/components/responses/Unauthorized'
'403':
$ref: 'components.yml#/components/responses/Forbidden'
-
- put:
- description: Replace a node with descendants for a given dataspace, anchor and a parent node xpath
+ '500':
+ $ref: 'components.yml#/components/responses/InternalServerError'
+ delete:
+ description: Delete a datanode for a given dataspace and anchor given a node xpath.
tags:
- cps-data
- summary: Replace a node with descendants
- operationId: replaceNode
+ summary: Delete a data node
+ operationId: deleteDataNode
parameters:
- $ref: 'components.yml#/components/parameters/dataspaceNameInPath'
- $ref: 'components.yml#/components/parameters/anchorNameInPath'
- $ref: 'components.yml#/components/parameters/xpathInQuery'
- requestBody:
- required: true
- content:
- application/json:
- schema:
- type: string
+ - $ref: 'components.yml#/components/parameters/observedTimestampInQuery'
responses:
- '200':
- $ref: 'components.yml#/components/responses/Ok'
+ '204':
+ $ref: 'components.yml#/components/responses/NoContent'
'400':
$ref: 'components.yml#/components/responses/BadRequest'
'401':
$ref: 'components.yml#/components/responses/Unauthorized'
'403':
$ref: 'components.yml#/components/responses/Forbidden'
-
-
-nodesByDataspace:
- get:
- description: Get all nodes for a given dataspace using an xpath or schema node identifier - DRAFT
+ '500':
+ $ref: 'components.yml#/components/responses/InternalServerError'
+ put:
+ description: Replace a node with descendants for a given dataspace, anchor and a parent node xpath
tags:
- cps-data
- summary: Get nodes
- operationId: getNodesByDataspace
+ summary: Replace a node with descendants
+ operationId: replaceNode
parameters:
- $ref: 'components.yml#/components/parameters/dataspaceNameInPath'
+ - $ref: 'components.yml#/components/parameters/anchorNameInPath'
+ - $ref: 'components.yml#/components/parameters/xpathInQuery'
+ - $ref: 'components.yml#/components/parameters/observedTimestampInQuery'
+ requestBody:
+ required: true
+ content:
+ application/json:
+ schema:
+ type: object
+ examples:
+ dataSampleRequest:
+ $ref: 'components.yml#/components/examples/dataSampleRequest'
responses:
'200':
$ref: 'components.yml#/components/responses/Ok'
$ref: 'components.yml#/components/responses/Unauthorized'
'403':
$ref: 'components.yml#/components/responses/Forbidden'
- '404':
- $ref: 'components.yml#/components/responses/NotFound'
- x-codegen-request-body-name: requestBody
+ '500':
+ $ref: 'components.yml#/components/responses/InternalServerError'