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 <lee.anjella.macabuhay@est.tech>
Change-Id: Ia3bdc16172a90ad3a3f9ae11cddcad1352188726
diff --git a/cps-ncmp-rest/docs/openapi/components.yaml b/cps-ncmp-rest/docs/openapi/components.yaml
index c1e0587..427f083 100644
--- a/cps-ncmp-rest/docs/openapi/components.yaml
+++ b/cps-ncmp-rest/docs/openapi/components.yaml
@@ -168,7 +168,6 @@
}
}
-
CmHandleQueryParameters:
type: object
title: Cm Handle query parameters for executing cm handle search
@@ -462,6 +461,14 @@
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 0a408c2..0c3dffd 100755
--- a/cps-ncmp-rest/docs/openapi/ncmp-inventory.yml
+++ b/cps-ncmp-rest/docs/openapi/ncmp-inventory.yml
@@ -97,3 +97,28 @@
"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 ee09d05..08270bc 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 @@
paths:
/v1/ch:
$ref: 'ncmp-inventory.yml#/updateDmiRegistration'
+
+ /v1/ch/cmHandles:
+ $ref: 'ncmp-inventory.yml#/getAllCmHandleIdsForRegisteredDmi'
\ No newline at end of file