From 1721e3c9b5f131a18478e4aa56afce3f0637d1b6 Mon Sep 17 00:00:00 2001 From: mpriyank Date: Tue, 3 Sep 2024 17:00:17 +0100 Subject: Support alternate id for CPS-E05 GetCmHandleDetailsById - added support for alternate id when retreiving cmhandle details by id - Note : The performance for alternate id fetching will be taken care as part of a separate story. Issue-ID: CPS-2385 Change-Id: I019b85d128e4b0a1f1d61623c92e1a2381c406c0 Signed-off-by: mpriyank --- cps-ncmp-rest/docs/openapi/ncmp.yml | 2 +- .../cps/ncmp/rest/controller/NetworkCmProxyController.java | 6 +++--- .../rest/controller/NetworkCmProxyControllerSpec.groovy | 13 +++++++------ 3 files changed, 11 insertions(+), 10 deletions(-) (limited to 'cps-ncmp-rest') diff --git a/cps-ncmp-rest/docs/openapi/ncmp.yml b/cps-ncmp-rest/docs/openapi/ncmp.yml index 9a6c076f03..446b17c4d2 100755 --- a/cps-ncmp-rest/docs/openapi/ncmp.yml +++ b/cps-ncmp-rest/docs/openapi/ncmp.yml @@ -354,7 +354,7 @@ retrieveCmHandleDetailsById: summary: Retrieve CM handle details operationId: retrieveCmHandleDetailsById parameters: - - $ref: 'components.yaml#/components/parameters/cmHandleInPath' + - $ref: 'components.yaml#/components/parameters/cmHandleReferenceInPath' responses: 200: description: OK diff --git a/cps-ncmp-rest/src/main/java/org/onap/cps/ncmp/rest/controller/NetworkCmProxyController.java b/cps-ncmp-rest/src/main/java/org/onap/cps/ncmp/rest/controller/NetworkCmProxyController.java index ca2907b8d6..6657a3a3c7 100755 --- a/cps-ncmp-rest/src/main/java/org/onap/cps/ncmp/rest/controller/NetworkCmProxyController.java +++ b/cps-ncmp-rest/src/main/java/org/onap/cps/ncmp/rest/controller/NetworkCmProxyController.java @@ -286,13 +286,13 @@ public class NetworkCmProxyController implements NetworkCmProxyApi { /** * Search for Cm Handle and Properties by Name. * - * @param cmHandleId cm-handle identifier + * @param cmHandleReference cm-handle or alternate identifier * @return cm handle and its properties */ @Override - public ResponseEntity retrieveCmHandleDetailsById(final String cmHandleId) { + public ResponseEntity retrieveCmHandleDetailsById(final String cmHandleReference) { final NcmpServiceCmHandle ncmpServiceCmHandle - = networkCmProxyInventoryFacade.getNcmpServiceCmHandle(cmHandleId); + = networkCmProxyInventoryFacade.getNcmpServiceCmHandle(cmHandleReference); final RestOutputCmHandle restOutputCmHandle = toRestOutputCmHandle(ncmpServiceCmHandle); return ResponseEntity.ok(restOutputCmHandle); } diff --git a/cps-ncmp-rest/src/test/groovy/org/onap/cps/ncmp/rest/controller/NetworkCmProxyControllerSpec.groovy b/cps-ncmp-rest/src/test/groovy/org/onap/cps/ncmp/rest/controller/NetworkCmProxyControllerSpec.groovy index 80e74caf75..361167e569 100644 --- a/cps-ncmp-rest/src/test/groovy/org/onap/cps/ncmp/rest/controller/NetworkCmProxyControllerSpec.groovy +++ b/cps-ncmp-rest/src/test/groovy/org/onap/cps/ncmp/rest/controller/NetworkCmProxyControllerSpec.groovy @@ -284,17 +284,18 @@ class NetworkCmProxyControllerSpec extends Specification { assert response.contentAsString == '[{"cmHandle":"ch-1","publicCmHandleProperties":[{"color":"yellow"}],"state":null,"trustLevel":"NONE","moduleSetTag":null,"alternateId":null,"dataProducerIdentifier":null},{"cmHandle":"ch-2","publicCmHandleProperties":[{"color":"green"}],"state":null,"trustLevel":null,"moduleSetTag":"someModuleSetTag","alternateId":"someAlternateId","dataProducerIdentifier":"someDataProducerIdentifier"}]' } - def 'Get complete Cm Handle details by Cm Handle id.'() { - given: 'an endpoint and a cm handle' - def cmHandleDetailsEndpoint = "$ncmpBasePathV1/ch/some-cm-handle" + def 'Get complete Cm Handle details by Cm Handle Reference.'() { + given: 'an endpoint and a cm handle reference' + def cmHandleDetailsEndpoint = "$ncmpBasePathV1/ch/some-cm-handle-reference" and: 'an existing ncmp service cm handle' def cmHandleId = 'some-cm-handle' + def alternateId = 'some-alternate-id' def dmiProperties = [prop: 'some DMI property'] def publicProperties = ["public prop": 'some public property'] def compositeState = compositeStateTestObject() - def ncmpServiceCmHandle = new NcmpServiceCmHandle(cmHandleId: cmHandleId, dmiProperties: dmiProperties, publicProperties: publicProperties, compositeState: compositeState, currentTrustLevel: TrustLevel.COMPLETE) - and: 'the service method is invoked with the cm handle id' - 1 * mockNetworkCmProxyInventoryFacade.getNcmpServiceCmHandle('some-cm-handle') >> ncmpServiceCmHandle + def ncmpServiceCmHandle = new NcmpServiceCmHandle(cmHandleId: cmHandleId, alternateId: alternateId, dmiProperties: dmiProperties, publicProperties: publicProperties, compositeState: compositeState, currentTrustLevel: TrustLevel.COMPLETE) + and: 'the service method is invoked with the cm handle reference' + 1 * mockNetworkCmProxyInventoryFacade.getNcmpServiceCmHandle('some-cm-handle-reference') >> ncmpServiceCmHandle when: 'the cm handle details api is invoked' def response = mvc.perform( get(cmHandleDetailsEndpoint)).andReturn().response -- cgit 1.2.3-korg