CPS-401 Update Open API YAML with data types and example for output (cpsData)
-added response for get data nodes based on dataspace and anchor
-modified modelmapper jn DataRestControllerSpec to be Spy not Mock
-when openapi.yaml is entered into https://editor.swagger.io/ it
displays however locally it does not, This may be due to file
segmentation but this is still unclear.
-moved files from docs/openapi to src/main/resources/static as required
for new swagger sprindoc
Issue-ID: CPS-401
Change-Id: I45286530d9a9ca85b56c0a656a44675398a003f4
Signed-off-by: JosephKeenan <joseph.keenan@est.tech>
diff --git a/cps-rest/src/main/resources/static/openapi.yml b/cps-rest/src/main/resources/static/openapi.yml
new file mode 100644
index 0000000..8fa640c
--- /dev/null
+++ b/cps-rest/src/main/resources/static/openapi.yml
@@ -0,0 +1,77 @@
+# ============LICENSE_START=======================================================
+# Copyright (C) 2021 Nordix Foundation
+# Modifications Copyright (C) 2021 Pantheon.tech
+# ================================================================================
+# 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: ONAP Open API v3 Configuration Persistence Service
+ description: Configuration Persistence Service is a Model Driven Generic Database
+ version: "1.0.0"
+ contact:
+ name: ONAP
+ url: "https://onap.readthedocs.io"
+ email: "onap-discuss@lists.onap.org"
+ license:
+ name: "Apache 2.0"
+ url: "http://www.apache.org/licenses/LICENSE-2.0"
+ x-planned-retirement-date: "202212"
+ x-component: "Modeling"
+ x-logo:
+ url: "cps_logo.png"
+
+servers:
+ - url: /cps/api
+tags:
+ - name: cps-admin
+ description: cps Admin
+ - name: cps-data
+ description: cps Data
+paths:
+
+ /v1/dataspaces:
+ $ref: 'cpsAdmin.yml#/dataspaces'
+
+ /v1/dataspaces/{dataspace-name}:
+ $ref: 'cpsAdmin.yml#/dataspaceByDataspaceName'
+
+ /v1/dataspaces/{dataspace-name}/anchors:
+ $ref: 'cpsAdmin.yml#/anchorsByDataspace'
+
+ /v1/dataspaces/{dataspace-name}/anchors/{anchor-name}:
+ $ref: 'cpsAdmin.yml#/anchorByDataspaceAndAnchorName'
+
+ /v1/dataspaces/{dataspace-name}/schema-sets:
+ $ref: 'cpsAdmin.yml#/schemaSet'
+
+ /v1/dataspaces/{dataspace-name}/schema-sets/{schema-set-name}:
+ $ref: 'cpsAdmin.yml#/schemaSetBySchemaSetName'
+
+ /v1/dataspaces/{dataspace-name}/anchors/{anchor-name}/node:
+ $ref: 'cpsData.yml#/nodeByDataspaceAndAnchor'
+
+ /v1/dataspaces/{dataspace-name}/anchors/{anchor-name}/nodes:
+ $ref: 'cpsData.yml#/nodesByDataspaceAndAnchor'
+
+ /v1/dataspaces/{dataspace-name}/anchors/{anchor-name}/list-node:
+ $ref: 'cpsData.yml#/listNodeByDataspaceAndAnchor'
+
+ /v1/dataspaces/{dataspace-name}/nodes:
+ $ref: 'cpsData.yml#/nodesByDataspace'
+
+ /v1/dataspaces/{dataspace-name}/anchors/{anchor-name}/nodes/query:
+ $ref: 'cpsQuery.yml#/nodesByDataspaceAndAnchorAndCpsPath'