From d340047f82a8301453fc3872e474090366b68472 Mon Sep 17 00:00:00 2001 From: emaclee Date: Fri, 19 Aug 2022 09:26:39 +0100 Subject: Get all cm handles by DMI plugin Identifier - api added to get cm handles by dmi plugin identifier - response object refactored from RestOutputCmHandle to collection of Strings (cm handle ids) - added public and private methods in CmHandleQueries to get cm handle ID by dmi plugin - added unit tests including test to show that there are no duplicates on response Issue-ID: CPS-1136 Signed-off-by: emaclee Change-Id: Ia3bdc16172a90ad3a3f9ae11cddcad1352188726 --- cps-ncmp-rest/docs/openapi/components.yaml | 9 ++++++++- cps-ncmp-rest/docs/openapi/ncmp-inventory.yml | 25 ++++++++++++++++++++++++ cps-ncmp-rest/docs/openapi/openapi-inventory.yml | 4 ++++ 3 files changed, 37 insertions(+), 1 deletion(-) (limited to 'cps-ncmp-rest/docs') diff --git a/cps-ncmp-rest/docs/openapi/components.yaml b/cps-ncmp-rest/docs/openapi/components.yaml index c1e05876ca..427f083698 100644 --- a/cps-ncmp-rest/docs/openapi/components.yaml +++ b/cps-ncmp-rest/docs/openapi/components.yaml @@ -168,7 +168,6 @@ components: } } - CmHandleQueryParameters: type: object title: Cm Handle query parameters for executing cm handle search @@ -462,6 +461,14 @@ components: schema: type: string default: / + dmiPluginIdentifierInQuery: + name: dmi-plugin-identifier + in: query + description: dmi-plugin-identifier + required: true + schema: + type: string + example: my-dmi-plugin resourceIdentifierInQuery: name: resourceIdentifier in: query diff --git a/cps-ncmp-rest/docs/openapi/ncmp-inventory.yml b/cps-ncmp-rest/docs/openapi/ncmp-inventory.yml index 0a408c2413..0c3dffd217 100755 --- a/cps-ncmp-rest/docs/openapi/ncmp-inventory.yml +++ b/cps-ncmp-rest/docs/openapi/ncmp-inventory.yml @@ -97,3 +97,28 @@ updateDmiRegistration: "errorText": "cm-handle has an invalid character(s) in id" } ] + +getAllCmHandleIdsForRegisteredDmi: + get: + description: Get all cm handle IDs for a registered DMI plugin + tags: + - network-cm-proxy-inventory + summary: Get all cm handle IDs for a registered DMI plugin (DMI plugin, DMI data plugin, DMI model plugin) + operationId: getAllCmHandleIdsForRegisteredDmi + parameters: + - $ref: 'components.yaml#/components/parameters/dmiPluginIdentifierInQuery' + responses: + 200: + description: OK + content: + application/json: + schema: + type: array + items: + type: string + 401: + $ref: 'components.yaml#/components/responses/Unauthorized' + 403: + $ref: 'components.yaml#/components/responses/Forbidden' + 500: + $ref: 'components.yaml#/components/responses/InternalServerError' \ No newline at end of file diff --git a/cps-ncmp-rest/docs/openapi/openapi-inventory.yml b/cps-ncmp-rest/docs/openapi/openapi-inventory.yml index ee09d050f3..08270bc680 100755 --- a/cps-ncmp-rest/docs/openapi/openapi-inventory.yml +++ b/cps-ncmp-rest/docs/openapi/openapi-inventory.yml @@ -1,5 +1,6 @@ # ============LICENSE_START======================================================= # Copyright (C) 2021 Bell Canada +# Modifications Copyright (C) 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. @@ -26,3 +27,6 @@ servers: paths: /v1/ch: $ref: 'ncmp-inventory.yml#/updateDmiRegistration' + + /v1/ch/cmHandles: + $ref: 'ncmp-inventory.yml#/getAllCmHandleIdsForRegisteredDmi' \ No newline at end of file -- cgit 1.2.3-korg