Provide support for data producer identifier during registration (CPS-1964 1)
[cps.git] / cps-ncmp-rest / docs / openapi / components.yaml
index d45b8da..635117c 100644 (file)
@@ -1,5 +1,5 @@
 #  ============LICENSE_START=======================================================
-#  Copyright (C) 2021-2023 Nordix Foundation
+#  Copyright (C) 2021-2024 Nordix Foundation
 #  Modifications Copyright (C) 2021 Pantheon.tech
 #  Modifications Copyright (C) 2022 Bell Canada
 #  ================================================================================
@@ -38,7 +38,7 @@ components:
       properties:
         message:
           type: string
-          example: "Bad Gateway Error Message NCMP"
+          example: 'Bad Gateway Error Message NCMP'
         dmi-response:
           type: object
           properties:
@@ -87,6 +87,8 @@ components:
           items:
             type: string
           example: [ my-cm-handle1, my-cm-handle2, my-cm-handle3 ]
+        upgradedCmHandles:
+          $ref: '#/components/schemas/UpgradedCmHandles'
     DmiPluginRegistrationErrorResponse:
       type: object
       properties:
@@ -102,6 +104,10 @@ components:
           type: array
           items:
             $ref: '#/components/schemas/CmHandlerRegistrationErrorResponse'
+        failedUpgradeCmHandles:
+          type: array
+          items:
+            $ref: '#/components/schemas/CmHandlerRegistrationErrorResponse'
     CmHandlerRegistrationErrorResponse:
       type: object
       properties:
@@ -127,11 +133,39 @@ components:
           $ref: '#/components/schemas/RestCmHandleProperties'
         publicCmHandleProperties:
           $ref: '#/components/schemas/RestCmHandleProperties'
+        moduleSetTag:
+          type: string
+          example: "my-module-set-tag"
+        trustLevel:
+            type: string
+            enum: [COMPLETE, NONE]
+            example: "COMPLETE"
+        alternateId:
+          type: string
+          example: "my-alternate-id"
+        dataProducerIdentifier:
+          type: string
+          example: "my-data-producer-identifier"
     RestCmHandleProperties:
       type: object
       additionalProperties:
         type: string
         example: my-property
+    #Module upgrade schema
+    UpgradedCmHandles:
+      required:
+        - cmHandles
+      type: object
+      properties:
+        cmHandles:
+          type: array
+          items:
+            type: string
+          example: [ my-cm-handle1, my-cm-handle2, my-cm-handle3 ]
+        moduleSetTag:
+          type: string
+          default: ""
+          example: 'my-module-set-tag'
 
     #Response Schemas
     RestModuleReference:
@@ -160,11 +194,11 @@ components:
           example: |
             module stores {
               yang-version 1.1;
-              namespace "org:onap:ccsdk:sample";
+              namespace 'org:onap:ccsdk:sample';
               prefix book-store;
-              revision "2020-09-15" {
+              revision '2020-09-15' {
                 description
-                "Sample Model";
+                'Sample Model';
               }
             }
 
@@ -175,13 +209,11 @@ components:
         cmHandleQueryParameters:
           type: array
           items:
-            type: object
             $ref: '#/components/schemas/ConditionProperties'
         conditions:
           deprecated: true
           type: array
           items:
-            type: object
             $ref: '#/components/schemas/OldConditionProperties'
           description: not necessary, it is just for backward compatibility
 
@@ -203,7 +235,6 @@ components:
         conditionParameters:
           type: array
           items:
-            type: object
             $ref: '#/components/schemas/ModuleNameAsJsonObject'
     ModuleNameAsJsonObject:
       properties:
@@ -222,13 +253,15 @@ components:
           $ref: '#/components/schemas/CmHandlePublicProperties'
         state:
           $ref: '#/components/schemas/CmHandleCompositeState'
+        trustLevel:
+          $ref: '#/components/schemas/CmHandleTrustLevel'
     CmHandlePublicProperties:
-      type: array
+      type: object
       items:
         type: object
         additionalProperties:
           type: string
-          example: Book Type
+          example: 'Book Type'
     CmHandleCompositeState:
       type: object
       properties:
@@ -245,6 +278,10 @@ components:
           example: false
         dataSyncState:
           $ref: '#/components/schemas/dataStores'
+    CmHandleTrustLevel:
+      type: string
+      description: Current trust level of the relevant CM handle ID.
+      example: COMPLETE
 
     lock-reason:
       type: object
@@ -293,7 +330,6 @@ components:
         operations:
           type: array
           items:
-            type: object
             $ref: '#/components/schemas/DataOperationDefinition'
           description: contains group of data operation requests
     DataOperationDefinition:
@@ -321,7 +357,7 @@ components:
           type: array
           items:
             type: string
-          example: [ "da310eecdb8d44c2acc0ddaae01174b1","c748c58f8e0b438f9fd1f28370b17d47" ]
+            example: [ "da310eecdb8d44c2acc0ddaae01174b1","c748c58f8e0b438f9fd1f28370b17d47" ]
 
   examples:
     dataSampleRequest:
@@ -459,6 +495,22 @@ components:
       schema:
         type: string
         example: my-cm-handle
+    moduleNameInQuery:
+      name: module-name
+      in: query
+      description: Filter for a module name.This is an optional parameter
+      required: false
+      schema:
+        type: string
+        example: my-module
+    revisionInQuery:
+      name: revision
+      in: query
+      description: Filter for a module revision.This is an optional parameter and ignored when no module name is supplied
+      required: false
+      schema:
+        type: string
+        example: 2024-01-22
     dataSyncEnabled:
       name: dataSyncEnabled
       in: query
@@ -580,6 +632,13 @@ components:
         type: string
         default: application/json
         example: application/yang-data+json
+    authorizationParamInHeader:
+      name: Authorization
+      in: header
+      required: false
+      description: Authorization parameter for request.
+      schema:
+        type: string
     datastoreName:
       name: datastore-name
       in: path