Change the list-node rest interface 86/123686/3
authorRenu Kumari <renu.kumari@bell.ca>
Mon, 30 Aug 2021 11:45:52 +0000 (07:45 -0400)
committerRenu Kumari <renu.kumari@bell.ca>
Mon, 30 Aug 2021 13:00:07 +0000 (09:00 -0400)
- Changed the list-node interface to be consistent with datanode api

Issue-ID: CPS-598
Signed-off-by: Renu Kumari <renu.kumari@bell.ca>
Change-Id: Ic99828f1463e9a724244c05166e477581756f602

cps-rest/src/main/resources/static/cpsData.yml
cps-rest/src/main/resources/static/openapi.yml
cps-rest/src/test/groovy/org/onap/cps/rest/controller/DataRestControllerSpec.groovy

index 75d9544..77673cb 100644 (file)
@@ -72,7 +72,7 @@ listNodeByDataspaceAndAnchor:
       '403':
         $ref: 'components.yml#/components/responses/Forbidden'
 
-  patch:
+  put:
     description: Replace list-node child elements under existing node for a given anchor and dataspace
     tags:
       - cps-data
index 8fa640c..922cabb 100644 (file)
@@ -67,7 +67,7 @@ paths:
   /v1/dataspaces/{dataspace-name}/anchors/{anchor-name}/nodes:
     $ref: 'cpsData.yml#/nodesByDataspaceAndAnchor'
 
-  /v1/dataspaces/{dataspace-name}/anchors/{anchor-name}/list-node:
+  /v1/dataspaces/{dataspace-name}/anchors/{anchor-name}/list-nodes:
     $ref: 'cpsData.yml#/listNodeByDataspaceAndAnchor'
 
   /v1/dataspaces/{dataspace-name}/nodes:
index 1d51ec4..a54f3bc 100755 (executable)
@@ -150,7 +150,7 @@ class DataRestControllerSpec extends Specification {
             def parentNodeXpath = 'parent node xpath'
             def jsonData = 'json data'
         when: 'post is invoked list-node endpoint'
-            def postRequestBuilder = post("$dataNodeBaseEndpoint/anchors/$anchorName/list-node")
+            def postRequestBuilder = post("$dataNodeBaseEndpoint/anchors/$anchorName/list-nodes")
                 .contentType(MediaType.APPLICATION_JSON)
                 .param('xpath', parentNodeXpath)
                 .content(jsonData)
@@ -307,14 +307,14 @@ class DataRestControllerSpec extends Specification {
         given: 'parent node xpath and json data inputs'
             def parentNodeXpath = 'parent node xpath'
             def jsonData = 'json data'
-        when: 'patch is invoked list-node endpoint'
-            def patchRequestBuilder = patch("$dataNodeBaseEndpoint/anchors/$anchorName/list-node")
+        when: 'put is invoked list-node endpoint'
+            def putRequestBuilder = put("$dataNodeBaseEndpoint/anchors/$anchorName/list-nodes")
                 .contentType(MediaType.APPLICATION_JSON)
                 .param('xpath', parentNodeXpath)
                 .content(jsonData)
             if (observedTimestamp != null)
-                patchRequestBuilder.param('observed-timestamp', observedTimestamp)
-            def response = mvc.perform(patchRequestBuilder).andReturn().response
+                putRequestBuilder.param('observed-timestamp', observedTimestamp)
+            def response = mvc.perform(putRequestBuilder).andReturn().response
         then: 'a success response is returned'
             response.status == expectedHttpStatus.value()
         and: 'the java API was called with the correct parameters'
@@ -331,7 +331,7 @@ class DataRestControllerSpec extends Specification {
         given: 'list node xpath'
             def listNodeXpath = 'list node xpath'
         when: 'delete is invoked list-node endpoint'
-            def deleteRequestBuilder = delete("$dataNodeBaseEndpoint/anchors/$anchorName/list-node")
+            def deleteRequestBuilder = delete("$dataNodeBaseEndpoint/anchors/$anchorName/list-nodes")
                 .param('xpath', listNodeXpath)
             if (observedTimestamp != null)
                 deleteRequestBuilder.param('observed-timestamp', observedTimestamp)