summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorseanbeirne <sean.beirne@est.tech>2024-11-05 10:21:30 +0000
committerseanbeirne <sean.beirne@est.tech>2024-11-13 10:52:19 +0000
commitc37dee4816f51f750a9c92946dc9d4a558f3b812 (patch)
treed54dba7ce7c024c6be1a347190b14c8a2aecb092
parent38cea5882ab71f23eddd3ffc9fd56c5d6540f28e (diff)
Support alternate Id interface for ncmp inventory /ch/cmhandles endpoint
Issue-ID: CPS-2481 Change-Id: I8a200495be1afb9a4f256127f886bed78c77f653 Signed-off-by: seanbeirne <sean.beirne@est.tech>
-rw-r--r--cps-ncmp-rest/docs/openapi/components.yaml4
-rwxr-xr-xcps-ncmp-rest/docs/openapi/ncmp-inventory.yml11
-rwxr-xr-xcps-ncmp-rest/docs/openapi/openapi-inventory.yml2
-rwxr-xr-xcps-ncmp-rest/src/main/java/org/onap/cps/ncmp/rest/controller/NetworkCmProxyInventoryController.java9
-rw-r--r--cps-ncmp-rest/src/test/groovy/org/onap/cps/ncmp/rest/controller/NetworkCmProxyInventoryControllerSpec.groovy20
-rw-r--r--cps-ncmp-service/src/main/java/org/onap/cps/ncmp/api/inventory/NetworkCmProxyInventoryFacade.java21
-rw-r--r--cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/data/utils/DmiDataOperationsHelper.java10
-rw-r--r--cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/inventory/CmHandleQueryService.java16
-rw-r--r--cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/inventory/CmHandleQueryServiceImpl.java33
-rw-r--r--cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/inventory/InventoryPersistence.java2
-rw-r--r--cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/inventory/InventoryPersistenceImpl.java4
-rw-r--r--cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/inventory/ParameterizedCmHandleQueryService.java4
-rw-r--r--cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/inventory/ParameterizedCmHandleQueryServiceImpl.java32
-rw-r--r--cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/inventory/trustlevel/DmiPluginTrustLevelWatchDog.java2
-rw-r--r--cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/inventory/CmHandleQueryServiceImplSpec.groovy14
-rw-r--r--cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/inventory/InventoryPersistenceImplSpec.groovy6
-rw-r--r--cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/inventory/NetworkCmProxyInventoryFacadeSpec.groovy17
-rw-r--r--cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/inventory/ParameterizedCmHandleQueryServiceSpec.groovy27
-rw-r--r--docs/api/swagger/ncmp/openapi-inventory.yaml28
-rw-r--r--docs/api/swagger/ncmp/openapi.yaml6
20 files changed, 158 insertions, 110 deletions
diff --git a/cps-ncmp-rest/docs/openapi/components.yaml b/cps-ncmp-rest/docs/openapi/components.yaml
index a8da6937a3..e564c6b0cf 100644
--- a/cps-ncmp-rest/docs/openapi/components.yaml
+++ b/cps-ncmp-rest/docs/openapi/components.yaml
@@ -366,7 +366,7 @@ components:
type: array
items:
type: string
- description: targeted cm handle references, maximum of 200 supported. If this limit is exceeded the request wil be refused.
+ description: targeted cm handle references, maximum of 200 supported. If this limit is exceeded the request will be refused.
example: [ "da310eecdb8d44c2acc0ddaae01174b1","c748c58f8e0b438f9fd1f28370b17d47" ]
examples:
@@ -516,7 +516,7 @@ components:
outputAlternateIdOptionInQuery:
name: outputAlternateId
in: query
- description: Boolean parameter to determine if returned value(s) will be cm handle references for a given query
+ description: Boolean parameter to determine if returned value(s) will be cm handle Ids or alternate Ids for a given query
required: false
schema:
type: boolean
diff --git a/cps-ncmp-rest/docs/openapi/ncmp-inventory.yml b/cps-ncmp-rest/docs/openapi/ncmp-inventory.yml
index 24b83cf368..7b1c8d403e 100755
--- a/cps-ncmp-rest/docs/openapi/ncmp-inventory.yml
+++ b/cps-ncmp-rest/docs/openapi/ncmp-inventory.yml
@@ -96,15 +96,16 @@ updateDmiRegistration:
}
]
-getAllCmHandleIdsForRegisteredDmi:
+getAllCmHandleReferencesForRegisteredDmi:
get:
- description: Get all cm handle IDs for a registered DMI plugin
+ description: Get all cm handle references 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
+ summary: Get all cm handle references for a registered DMI plugin (DMI plugin, DMI data plugin, DMI model plugin)
+ operationId: getAllCmHandleReferencesForRegisteredDmi
parameters:
- $ref: 'components.yaml#/components/parameters/dmiPluginIdentifierInQuery'
+ - $ref: 'components.yaml#/components/parameters/outputAlternateIdOptionInQuery'
responses:
200:
description: OK
@@ -121,7 +122,7 @@ getAllCmHandleIdsForRegisteredDmi:
searchCmHandleIds:
post:
- description: Query and get CMHandle references for additional properties, public properties and registered DMI plugin (DMI plugin, DMI data plugin, DMI model plugin).
+ description: Query and get cm handle references for additional properties, public properties and registered DMI plugin (DMI plugin, DMI data plugin, DMI model plugin).
tags:
- network-cm-proxy-inventory
summary: Query for CM Handle IDs
diff --git a/cps-ncmp-rest/docs/openapi/openapi-inventory.yml b/cps-ncmp-rest/docs/openapi/openapi-inventory.yml
index d374dcc9db..6c207ee2af 100755
--- a/cps-ncmp-rest/docs/openapi/openapi-inventory.yml
+++ b/cps-ncmp-rest/docs/openapi/openapi-inventory.yml
@@ -34,7 +34,7 @@ paths:
$ref: 'ncmp-inventory.yml#/updateDmiRegistration'
/v1/ch/cmHandles:
- $ref: 'ncmp-inventory.yml#/getAllCmHandleIdsForRegisteredDmi'
+ $ref: 'ncmp-inventory.yml#/getAllCmHandleReferencesForRegisteredDmi'
/v1/ch/searches:
$ref: 'ncmp-inventory.yml#/searchCmHandleIds'
diff --git a/cps-ncmp-rest/src/main/java/org/onap/cps/ncmp/rest/controller/NetworkCmProxyInventoryController.java b/cps-ncmp-rest/src/main/java/org/onap/cps/ncmp/rest/controller/NetworkCmProxyInventoryController.java
index f76376991a..0e27ba9355 100755
--- a/cps-ncmp-rest/src/main/java/org/onap/cps/ncmp/rest/controller/NetworkCmProxyInventoryController.java
+++ b/cps-ncmp-rest/src/main/java/org/onap/cps/ncmp/rest/controller/NetworkCmProxyInventoryController.java
@@ -74,12 +74,17 @@ public class NetworkCmProxyInventoryController implements NetworkCmProxyInventor
* Get all cm-handle IDs under a registered DMI plugin.
*
* @param dmiPluginIdentifier DMI plugin identifier
+ * @param outputAlternateId Boolean for cm handle reference type either
+ * cm handle id (False) or alternate id (True)
* @return list of cm handle IDs
*/
@Override
- public ResponseEntity<List<String>> getAllCmHandleIdsForRegisteredDmi(final String dmiPluginIdentifier) {
+ public ResponseEntity<List<String>> getAllCmHandleReferencesForRegisteredDmi(final String dmiPluginIdentifier,
+ final Boolean outputAlternateId) {
+
final Collection<String> cmHandleIds =
- networkCmProxyInventoryFacade.getAllCmHandleIdsByDmiPluginIdentifier(dmiPluginIdentifier);
+ networkCmProxyInventoryFacade.getAllCmHandleReferencesByDmiPluginIdentifier(dmiPluginIdentifier,
+ outputAlternateId);
return ResponseEntity.ok(List.copyOf(cmHandleIds));
}
diff --git a/cps-ncmp-rest/src/test/groovy/org/onap/cps/ncmp/rest/controller/NetworkCmProxyInventoryControllerSpec.groovy b/cps-ncmp-rest/src/test/groovy/org/onap/cps/ncmp/rest/controller/NetworkCmProxyInventoryControllerSpec.groovy
index 74e6759f72..59307640ef 100644
--- a/cps-ncmp-rest/src/test/groovy/org/onap/cps/ncmp/rest/controller/NetworkCmProxyInventoryControllerSpec.groovy
+++ b/cps-ncmp-rest/src/test/groovy/org/onap/cps/ncmp/rest/controller/NetworkCmProxyInventoryControllerSpec.groovy
@@ -234,12 +234,14 @@ class NetworkCmProxyInventoryControllerSpec extends Specification {
'delete upgrade failed' | expectedSuccessResponse('cm-handle-1') | expectedSuccessResponse('cm-handle-2') | expectedFailedResponse('cm-handle-3') | expectedFailedResponse('cm-handle-4') || [] | [] | [expectedUnknownErrorResponse('cm-handle-3')] | [expectedUnknownErrorResponse('cm-handle-4')]
}
- def 'Get all cm handle IDs by DMI plugin identifier.'() {
- given: 'an endpoint for returning cm handle IDs for a registered dmi plugin'
- def getUrl = "$ncmpBasePathV1/ch/cmHandles?dmi-plugin-identifier=some-dmi-plugin-identifier"
- and: 'a collection of cm handle IDs are returned'
- 1 * mockNetworkCmProxyInventoryFacade.getAllCmHandleIdsByDmiPluginIdentifier('some-dmi-plugin-identifier')
+ def 'Get all cm handle references by DMI plugin identifier when #scenario.'() {
+ given: 'an endpoint for returning cm handle references for a registered dmi plugin'
+ def getUrl = "$ncmpBasePathV1/ch/cmHandles?dmi-plugin-identifier=some-dmi-plugin-identifier"+outputAlternateId
+ and: 'a collection of cm handle references are returned'
+ mockNetworkCmProxyInventoryFacade.getAllCmHandleReferencesByDmiPluginIdentifier('some-dmi-plugin-identifier', false)
>> ['cm-handle-id-1','cm-handle-id-2']
+ mockNetworkCmProxyInventoryFacade.getAllCmHandleReferencesByDmiPluginIdentifier('some-dmi-plugin-identifier', true)
+ >> ['alternate-id-1','alternate-id-2']
when: 'the endpoint is invoked'
def response = mvc.perform(
get(getUrl)
@@ -247,8 +249,12 @@ class NetworkCmProxyInventoryControllerSpec extends Specification {
.accept(MediaType.APPLICATION_JSON_VALUE)
).andReturn().response
then: 'the response matches the result returned by the service layer'
- assert response.contentAsString.contains('cm-handle-id-1')
- assert response.contentAsString.contains('cm-handle-id-2')
+ assert response.contentAsString.contains(firstReference)
+ assert response.contentAsString.contains(secondReference)
+ where:
+ scenario | outputAlternateId || firstReference | secondReference
+ 'output returns cm handle ids' | '' || 'cm-handle-id-1' | 'cm-handle-id-2'
+ 'output returns alternate ids' | '&outputAlternateId=true' || 'alternate-id-1' | 'alternate-id-2'
}
def expectedUnknownErrorResponse(cmHandle) {
diff --git a/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/api/inventory/NetworkCmProxyInventoryFacade.java b/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/api/inventory/NetworkCmProxyInventoryFacade.java
index e9e5f5499f..a8996874ff 100644
--- a/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/api/inventory/NetworkCmProxyInventoryFacade.java
+++ b/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/api/inventory/NetworkCmProxyInventoryFacade.java
@@ -75,13 +75,16 @@ public class NetworkCmProxyInventoryFacade {
}
/**
- * Get all cm handle IDs by DMI plugin identifier.
+ * Get all cm handle references by DMI plugin identifier.
*
* @param dmiPluginIdentifier DMI plugin identifier
- * @return collection of cm handle IDs
+ * @param outputAlternateId Boolean for cm handle reference type either
+ * cm handle id (false) or alternate id (true)
+ * @return collection of cm handle references
*/
- public Collection<String> getAllCmHandleIdsByDmiPluginIdentifier(final String dmiPluginIdentifier) {
- return cmHandleQueryService.getCmHandleIdsByDmiPluginIdentifier(dmiPluginIdentifier);
+ public Collection<String> getAllCmHandleReferencesByDmiPluginIdentifier(final String dmiPluginIdentifier,
+ final boolean outputAlternateId) {
+ return cmHandleQueryService.getCmHandleReferencesByDmiPluginIdentifier(dmiPluginIdentifier, outputAlternateId);
}
/**
@@ -90,10 +93,10 @@ public class NetworkCmProxyInventoryFacade {
* @param cmHandleQueryServiceParameters cm handle query parameters
* @param outputAlternateId Boolean for cm handle reference type either
* cm handle id (false) or alternate id (true)
- * @return collection of cm handle IDs
+ * @return collection of cm handle references
*/
public Collection<String> executeParameterizedCmHandleIdSearch(
- final CmHandleQueryServiceParameters cmHandleQueryServiceParameters, final Boolean outputAlternateId) {
+ final CmHandleQueryServiceParameters cmHandleQueryServiceParameters, final boolean outputAlternateId) {
validateCmHandleQueryParameters(cmHandleQueryServiceParameters, InventoryQueryConditions.ALL_CONDITION_NAMES);
return parameterizedCmHandleQueryService.queryCmHandleIdsForInventory(cmHandleQueryServiceParameters,
@@ -159,11 +162,11 @@ public class NetworkCmProxyInventoryFacade {
* Retrieve cm handle ids for the given query parameters.
*
* @param cmHandleQueryApiParameters cm handle query parameters
- * @param outputAlternateId boolean for cm handle reference type either cmHandleId (false) or AlternateId (true)
+ * @param outputAlternateId Boolean for cm handle reference type either cmHandleId (false) or AlternateId (true)
* @return cm handle ids
*/
public Collection<String> executeCmHandleIdSearch(final CmHandleQueryApiParameters cmHandleQueryApiParameters,
- final Boolean outputAlternateId) {
+ final boolean outputAlternateId) {
final CmHandleQueryServiceParameters cmHandleQueryServiceParameters = jsonObjectMapper.convertToValueType(
cmHandleQueryApiParameters, CmHandleQueryServiceParameters.class);
validateCmHandleQueryParameters(cmHandleQueryServiceParameters, CmHandleQueryConditions.ALL_CONDITION_NAMES);
@@ -224,4 +227,4 @@ public class NetworkCmProxyInventoryFacade {
.getEffectiveTrustLevel(ncmpServiceCmHandle.getCmHandleId()));
}
-}
+} \ No newline at end of file
diff --git a/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/data/utils/DmiDataOperationsHelper.java b/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/data/utils/DmiDataOperationsHelper.java
index f1dc9af09d..a0d89644e4 100644
--- a/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/data/utils/DmiDataOperationsHelper.java
+++ b/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/data/utils/DmiDataOperationsHelper.java
@@ -71,8 +71,8 @@ public class DmiDataOperationsHelper {
final Map<String, List<DmiDataOperation>> dmiDataOperationsOutPerDmiServiceName = new HashMap<>();
final MultiValueMap<DmiDataOperation, Map<NcmpResponseStatus,
List<String>>> cmHandleReferencesPerResponseCodesPerOperation = new LinkedMultiValueMap<>();
- final Map<String, String> nonReadyCmHandleReferencesLookup =
- filterAndGetNonReadyCmHandleReferences(yangModelCmHandles);
+ final Map<String, String> nonReadyAlternateIdPerCmHandleId =
+ filterAndGetNonReadyAlternateIdPerCmHandleId(yangModelCmHandles);
final Map<String, Map<String, Map<String, String>>> dmiPropertiesPerCmHandleIdPerServiceName =
DmiServiceNameOrganizer.getDmiPropertiesPerCmHandleIdPerServiceName(yangModelCmHandles);
@@ -87,8 +87,8 @@ public class DmiDataOperationsHelper {
final List<String> nonExistingCmHandleReferences = new ArrayList<>();
final List<String> nonReadyCmHandleReferences = new ArrayList<>();
for (final String cmHandleReference : dataOperationDefinitionIn.getCmHandleReferences()) {
- if (nonReadyCmHandleReferencesLookup.containsKey(cmHandleReference)
- || nonReadyCmHandleReferencesLookup.containsValue(cmHandleReference)) {
+ if (nonReadyAlternateIdPerCmHandleId.containsKey(cmHandleReference)
+ || nonReadyAlternateIdPerCmHandleId.containsValue(cmHandleReference)) {
nonReadyCmHandleReferences.add(cmHandleReference);
} else {
final String cmHandleId = getCmHandleId(cmHandleReference, yangModelCmHandles);
@@ -184,7 +184,7 @@ public class DmiDataOperationsHelper {
return dmiBatchOperationsOut.get(dmiBatchOperationsOut.size() - 1);
}
- private static Map<String, String> filterAndGetNonReadyCmHandleReferences(
+ private static Map<String, String> filterAndGetNonReadyAlternateIdPerCmHandleId(
final Collection<YangModelCmHandle> yangModelCmHandles) {
final Map<String, String> cmHandleReferenceMap = new HashMap<>(yangModelCmHandles.size());
for (final YangModelCmHandle yangModelCmHandle: yangModelCmHandles) {
diff --git a/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/inventory/CmHandleQueryService.java b/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/inventory/CmHandleQueryService.java
index 86e9c934ce..74c04928ed 100644
--- a/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/inventory/CmHandleQueryService.java
+++ b/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/inventory/CmHandleQueryService.java
@@ -36,7 +36,7 @@ public interface CmHandleQueryService {
* @return Ids of Cm Handles which have these private properties
*/
Collection<String> queryCmHandleAdditionalProperties(Map<String, String> additionalPropertyQueryPairs,
- Boolean outputAlternateId);
+ boolean outputAlternateId);
/**
* Query Cm Handles based on public properties.
@@ -46,7 +46,7 @@ public interface CmHandleQueryService {
* @return CmHandles which have these public properties
*/
Collection<String> queryCmHandlePublicProperties(Map<String, String> publicPropertyQueryPairs,
- Boolean outputAlternateId);
+ boolean outputAlternateId);
/**
* Query Cm Handles based on Trust Level.
@@ -56,7 +56,7 @@ public interface CmHandleQueryService {
* @return Ids of Cm Handles which have desired trust level
*/
Collection<String> queryCmHandlesByTrustLevel(Map<String, String> trustLevelPropertyQueryPairs,
- Boolean outputAlternateId);
+ boolean outputAlternateId);
/**
* Method which returns cm handles by the cm handles state.
@@ -100,19 +100,21 @@ public interface CmHandleQueryService {
Collection<DataNode> queryCmHandlesByOperationalSyncState(DataStoreSyncState dataStoreSyncState);
/**
- * Get all cm handles ids by DMI plugin identifier.
+ * Get collection of all cm handles references by DMI plugin identifier and alternate id output option.
*
* @param dmiPluginIdentifier DMI plugin identifier
+ * @param outputAlternateId Boolean for cm handle reference type either cmHandleId (false) or AlternateId (true)
* @return collection of cm handle ids
*/
- Collection<String> getCmHandleIdsByDmiPluginIdentifier(String dmiPluginIdentifier);
+ Collection<String> getCmHandleReferencesByDmiPluginIdentifier(String dmiPluginIdentifier,
+ boolean outputAlternateId);
/**
- * Get map of cmHandle ids and alternate ids by DMI plugin identifier.
+ * Get map of cmHandle references by DMI plugin identifier.
*
* @param dmiPluginIdentifier DMI plugin identifier
* @return map of cmHandle references key:CmHandleId Value:AlternateId
*/
- Map<String, String> getCmHandleReferencesByDmiPluginIdentifier(String dmiPluginIdentifier);
+ Map<String, String> getCmHandleReferencesMapByDmiPluginIdentifier(String dmiPluginIdentifier);
}
diff --git a/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/inventory/CmHandleQueryServiceImpl.java b/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/inventory/CmHandleQueryServiceImpl.java
index 4249b452c3..1490d69881 100644
--- a/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/inventory/CmHandleQueryServiceImpl.java
+++ b/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/inventory/CmHandleQueryServiceImpl.java
@@ -68,19 +68,19 @@ public class CmHandleQueryServiceImpl implements CmHandleQueryService {
@Override
public Collection<String> queryCmHandleAdditionalProperties(final Map<String, String> privatePropertyQueryPairs,
- final Boolean outputAlternateId) {
+ final boolean outputAlternateId) {
return queryCmHandleAnyProperties(privatePropertyQueryPairs, PropertyType.ADDITIONAL, outputAlternateId);
}
@Override
public Collection<String> queryCmHandlePublicProperties(final Map<String, String> publicPropertyQueryPairs,
- final Boolean outputAlternateId) {
+ final boolean outputAlternateId) {
return queryCmHandleAnyProperties(publicPropertyQueryPairs, PropertyType.PUBLIC, outputAlternateId);
}
@Override
public Collection<String> queryCmHandlesByTrustLevel(final Map<String, String> trustLevelPropertyQueryPairs,
- final Boolean outputAlternateId) {
+ final boolean outputAlternateId) {
final String trustLevelProperty = trustLevelPropertyQueryPairs.values().iterator().next();
final TrustLevel targetTrustLevel = TrustLevel.valueOf(trustLevelProperty);
return getCmHandleReferencesByTrustLevel(targetTrustLevel, outputAlternateId);
@@ -122,20 +122,25 @@ public class CmHandleQueryServiceImpl implements CmHandleQueryService {
}
@Override
- public Collection<String> getCmHandleIdsByDmiPluginIdentifier(final String dmiPluginIdentifier) {
- final Collection<String> cmHandleIds = new HashSet<>();
+ public Collection<String> getCmHandleReferencesByDmiPluginIdentifier(final String dmiPluginIdentifier,
+ final boolean outputAlternateId) {
+ final Collection<String> cmHandleReferences = new HashSet<>();
for (final ModelledDmiServiceLeaves modelledDmiServiceLeaf : ModelledDmiServiceLeaves.values()) {
for (final DataNode cmHandleAsDataNode: getCmHandlesByDmiPluginIdentifierAndDmiProperty(
dmiPluginIdentifier,
modelledDmiServiceLeaf.getLeafName())) {
- cmHandleIds.add(cmHandleAsDataNode.getLeaves().get("id").toString());
+ if (outputAlternateId) {
+ cmHandleReferences.add(cmHandleAsDataNode.getLeaves().get(ALTERNATE_ID).toString());
+ } else {
+ cmHandleReferences.add(cmHandleAsDataNode.getLeaves().get("id").toString());
+ }
}
}
- return cmHandleIds;
+ return cmHandleReferences;
}
@Override
- public Map<String, String> getCmHandleReferencesByDmiPluginIdentifier(final String dmiPluginIdentifier) {
+ public Map<String, String> getCmHandleReferencesMapByDmiPluginIdentifier(final String dmiPluginIdentifier) {
final Map<String, String> cmHandleReferencesMap = new HashMap<>();
for (final ModelledDmiServiceLeaves modelledDmiServiceLeaf : ModelledDmiServiceLeaves.values()) {
for (final DataNode cmHandleAsDataNode: getCmHandlesByDmiPluginIdentifierAndDmiProperty(
@@ -149,21 +154,21 @@ public class CmHandleQueryServiceImpl implements CmHandleQueryService {
}
private Collection<String> getCmHandleReferencesByTrustLevel(final TrustLevel targetTrustLevel,
- final Boolean outputAlternateId) {
+ final boolean outputAlternateId) {
final Collection<String> selectedCmHandleReferences = new HashSet<>();
for (final Map.Entry<String, TrustLevel> mapEntry : trustLevelPerDmiPlugin.entrySet()) {
final String dmiPluginIdentifier = mapEntry.getKey();
final TrustLevel dmiTrustLevel = mapEntry.getValue();
final Map<String, String> candidateCmHandleReferences =
- getCmHandleReferencesByDmiPluginIdentifier(dmiPluginIdentifier);
+ getCmHandleReferencesMapByDmiPluginIdentifier(dmiPluginIdentifier);
for (final Map.Entry<String, String> candidateCmHandleReference : candidateCmHandleReferences.entrySet()) {
final TrustLevel candidateCmHandleTrustLevel =
trustLevelPerCmHandle.get(candidateCmHandleReference.getKey());
final TrustLevel effectiveTrustlevel =
candidateCmHandleTrustLevel.getEffectiveTrustLevel(dmiTrustLevel);
if (targetTrustLevel.equals(effectiveTrustlevel)) {
- if (Boolean.TRUE.equals(outputAlternateId)) {
+ if (outputAlternateId) {
selectedCmHandleReferences.add(candidateCmHandleReference.getValue());
} else {
selectedCmHandleReferences.add(candidateCmHandleReference.getKey());
@@ -175,8 +180,8 @@ public class CmHandleQueryServiceImpl implements CmHandleQueryService {
}
private Collection<String> collectCmHandleReferencesFromDataNodes(final Collection<DataNode> dataNodes,
- final Boolean outputAlternateId) {
- if (Boolean.TRUE.equals(outputAlternateId)) {
+ final boolean outputAlternateId) {
+ if (outputAlternateId) {
return dataNodes.stream().map(dataNode ->
(String) dataNode.getLeaves().get(ALTERNATE_ID)).collect(Collectors.toSet());
} else {
@@ -187,7 +192,7 @@ public class CmHandleQueryServiceImpl implements CmHandleQueryService {
private Collection<String> queryCmHandleAnyProperties(
final Map<String, String> propertyQueryPairs,
- final PropertyType propertyType, final Boolean outputAlternateId) {
+ final PropertyType propertyType, final boolean outputAlternateId) {
if (propertyQueryPairs.isEmpty()) {
return Collections.emptySet();
}
diff --git a/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/inventory/InventoryPersistence.java b/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/inventory/InventoryPersistence.java
index de8e8e80a7..61d7df923e 100644
--- a/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/inventory/InventoryPersistence.java
+++ b/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/inventory/InventoryPersistence.java
@@ -162,7 +162,7 @@ public interface InventoryPersistence extends NcmpPersistence {
* @return Collection of CM handle Ids
*/
Collection<String> getCmHandleReferencesWithGivenModules(Collection<String> moduleNamesForQuery,
- Boolean outputAlternateIds);
+ boolean outputAlternateIds);
/**
* Check database if cm handle id exists if not return false.
diff --git a/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/inventory/InventoryPersistenceImpl.java b/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/inventory/InventoryPersistenceImpl.java
index d73fae9fbc..c4765ff53d 100644
--- a/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/inventory/InventoryPersistenceImpl.java
+++ b/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/inventory/InventoryPersistenceImpl.java
@@ -218,8 +218,8 @@ public class InventoryPersistenceImpl extends NcmpPersistenceImpl implements Inv
@Override
public Collection<String> getCmHandleReferencesWithGivenModules(final Collection<String> moduleNamesForQuery,
- final Boolean outputAlternateIds) {
- if (Boolean.TRUE.equals(outputAlternateIds)) {
+ final boolean outputAlternateIds) {
+ if (outputAlternateIds) {
final Collection<String> cmHandleIds =
cpsAnchorService.queryAnchorNames(NFP_OPERATIONAL_DATASTORE_DATASPACE_NAME, moduleNamesForQuery);
return getAlternateIdsFromDataNodes(getCmHandleDataNodes(cmHandleIds));
diff --git a/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/inventory/ParameterizedCmHandleQueryService.java b/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/inventory/ParameterizedCmHandleQueryService.java
index 8301579b42..3db4920d3e 100644
--- a/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/inventory/ParameterizedCmHandleQueryService.java
+++ b/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/inventory/ParameterizedCmHandleQueryService.java
@@ -38,7 +38,7 @@ public interface ParameterizedCmHandleQueryService {
* @return collection of cm handle ids or alternate ids
*/
Collection<String> queryCmHandleReferenceIds(CmHandleQueryServiceParameters cmHandleQueryServiceParameters,
- Boolean outputAlternateId);
+ boolean outputAlternateId);
/**
* Query and return cm handle ids or alternate ids that match the given query parameters.
@@ -54,7 +54,7 @@ public interface ParameterizedCmHandleQueryService {
* @return collection of cm handle ids
*/
Collection<String> queryCmHandleIdsForInventory(CmHandleQueryServiceParameters cmHandleQueryServiceParameters,
- Boolean outputAlternateId);
+ boolean outputAlternateId);
/**
* Query and return cm handle objects that match the given query parameters.
diff --git a/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/inventory/ParameterizedCmHandleQueryServiceImpl.java b/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/inventory/ParameterizedCmHandleQueryServiceImpl.java
index bacbbe0c95..c0d4b08f3c 100644
--- a/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/inventory/ParameterizedCmHandleQueryServiceImpl.java
+++ b/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/inventory/ParameterizedCmHandleQueryServiceImpl.java
@@ -63,7 +63,7 @@ public class ParameterizedCmHandleQueryServiceImpl implements ParameterizedCmHan
@Override
public Collection<String> queryCmHandleReferenceIds(
final CmHandleQueryServiceParameters cmHandleQueryServiceParameters,
- final Boolean outputAlternateId) {
+ final boolean outputAlternateId) {
return executeQueries(cmHandleQueryServiceParameters, outputAlternateId,
this::executeCpsPathQuery,
this::queryCmHandlesByPublicProperties,
@@ -74,7 +74,7 @@ public class ParameterizedCmHandleQueryServiceImpl implements ParameterizedCmHan
@Override
public Collection<String> queryCmHandleIdsForInventory(
final CmHandleQueryServiceParameters cmHandleQueryServiceParameters,
- final Boolean outputAlternateId) {
+ final boolean outputAlternateId) {
return executeQueries(cmHandleQueryServiceParameters, outputAlternateId,
this::executeCpsPathQuery,
this::queryCmHandlesByPublicProperties,
@@ -102,7 +102,7 @@ public class ParameterizedCmHandleQueryServiceImpl implements ParameterizedCmHan
}
private Collection<String> queryCmHandlesByDmiPlugin(
- final CmHandleQueryServiceParameters cmHandleQueryServiceParameters, final Boolean outputAlternateId) {
+ final CmHandleQueryServiceParameters cmHandleQueryServiceParameters, final boolean outputAlternateId) {
final Map<String, String> dmiPropertyQueryPairs =
getPropertyPairs(cmHandleQueryServiceParameters.getCmHandleQueryParameters(),
InventoryQueryConditions.CM_HANDLE_WITH_DMI_PLUGIN.getName());
@@ -113,15 +113,17 @@ public class ParameterizedCmHandleQueryServiceImpl implements ParameterizedCmHan
final String dmiPluginIdentifierValue = dmiPropertyQueryPairs
.get(PropertyType.DMI_PLUGIN.getYangContainerName());
- if (Boolean.TRUE.equals(outputAlternateId)) {
- return cmHandleQueryService.getCmHandleReferencesByDmiPluginIdentifier(dmiPluginIdentifierValue).values();
+ if (outputAlternateId) {
+ return
+ cmHandleQueryService.getCmHandleReferencesMapByDmiPluginIdentifier(dmiPluginIdentifierValue).values();
} else {
- return cmHandleQueryService.getCmHandleIdsByDmiPluginIdentifier(dmiPluginIdentifierValue);
+ return cmHandleQueryService.getCmHandleReferencesByDmiPluginIdentifier(dmiPluginIdentifierValue,
+ outputAlternateId);
}
}
private Collection<String> queryCmHandlesByPrivateProperties(
- final CmHandleQueryServiceParameters cmHandleQueryServiceParameters, final Boolean outputAlternateId) {
+ final CmHandleQueryServiceParameters cmHandleQueryServiceParameters, final boolean outputAlternateId) {
final Map<String, String> privatePropertyQueryPairs =
getPropertyPairs(cmHandleQueryServiceParameters.getCmHandleQueryParameters(),
@@ -134,7 +136,7 @@ public class ParameterizedCmHandleQueryServiceImpl implements ParameterizedCmHan
}
private Collection<String> queryCmHandlesByPublicProperties(
- final CmHandleQueryServiceParameters cmHandleQueryServiceParameters, final Boolean outputAlternateId) {
+ final CmHandleQueryServiceParameters cmHandleQueryServiceParameters, final boolean outputAlternateId) {
final Map<String, String> publicPropertyQueryPairs =
getPropertyPairs(cmHandleQueryServiceParameters.getCmHandleQueryParameters(),
@@ -148,7 +150,7 @@ public class ParameterizedCmHandleQueryServiceImpl implements ParameterizedCmHan
private Collection<String> queryCmHandlesByTrustLevel(final CmHandleQueryServiceParameters
cmHandleQueryServiceParameters,
- final Boolean outputAlternateId) {
+ final boolean outputAlternateId) {
final Map<String, String> trustLevelPropertyQueryPairs =
getPropertyPairs(cmHandleQueryServiceParameters.getCmHandleQueryParameters(),
@@ -161,7 +163,7 @@ public class ParameterizedCmHandleQueryServiceImpl implements ParameterizedCmHan
}
private Collection<String> executeModuleNameQuery(
- final CmHandleQueryServiceParameters cmHandleQueryServiceParameters, final Boolean outputAlternateId) {
+ final CmHandleQueryServiceParameters cmHandleQueryServiceParameters, final boolean outputAlternateId) {
final Collection<String> moduleNamesForQuery =
getModuleNamesForQuery(cmHandleQueryServiceParameters.getCmHandleQueryParameters());
if (moduleNamesForQuery.isEmpty()) {
@@ -171,7 +173,7 @@ public class ParameterizedCmHandleQueryServiceImpl implements ParameterizedCmHan
}
private Collection<String> executeCpsPathQuery(
- final CmHandleQueryServiceParameters cmHandleQueryServiceParameters, final Boolean outputAlternateId) {
+ final CmHandleQueryServiceParameters cmHandleQueryServiceParameters, final boolean outputAlternateId) {
final Map<String, String> cpsPathCondition
= getCpsPathCondition(cmHandleQueryServiceParameters.getCmHandleQueryParameters());
if (!validateCpsPathConditionProperties(cpsPathCondition)) {
@@ -225,7 +227,7 @@ public class ParameterizedCmHandleQueryServiceImpl implements ParameterizedCmHan
return Collections.emptyList();
}
- private Collection<String> getAllCmHandleReferences(final Boolean outputAlternateId) {
+ private Collection<String> getAllCmHandleReferences(final boolean outputAlternateId) {
final DataNode dataNode = inventoryPersistence.getDataNode(NCMP_DMI_REGISTRY_PARENT, DIRECT_CHILDREN_ONLY)
.iterator().next();
return collectCmHandleReferencesFromDataNodes(dataNode.getChildDataNodes(), outputAlternateId);
@@ -248,7 +250,7 @@ public class ParameterizedCmHandleQueryServiceImpl implements ParameterizedCmHan
}
private Collection<String> executeQueries(final CmHandleQueryServiceParameters cmHandleQueryServiceParameters,
- final Boolean outputAlternateId,
+ final boolean outputAlternateId,
final BiFunction<CmHandleQueryServiceParameters, Boolean,
Collection<String>>... queryFunctions) {
if (cmHandleQueryServiceParameters.getCmHandleQueryParameters().isEmpty()) {
@@ -286,8 +288,8 @@ public class ParameterizedCmHandleQueryServiceImpl implements ParameterizedCmHan
}
private Collection<String> collectCmHandleReferencesFromDataNodes(final Collection<DataNode> dataNodes,
- final Boolean outputAlternateId) {
- if (Boolean.TRUE.equals(outputAlternateId)) {
+ final boolean outputAlternateId) {
+ if (outputAlternateId) {
return dataNodes.stream().map(dataNode ->
(String) dataNode.getLeaves().get("alternate-id")).collect(Collectors.toSet());
} else {
diff --git a/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/inventory/trustlevel/DmiPluginTrustLevelWatchDog.java b/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/inventory/trustlevel/DmiPluginTrustLevelWatchDog.java
index 7581c4af7a..aca485f53d 100644
--- a/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/inventory/trustlevel/DmiPluginTrustLevelWatchDog.java
+++ b/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/inventory/trustlevel/DmiPluginTrustLevelWatchDog.java
@@ -66,7 +66,7 @@ public class DmiPluginTrustLevelWatchDog {
log.debug("The Dmi Plugin: {} has already the same trust level: {}", dmiServiceName, newDmiTrustLevel);
} else {
final Collection<String> cmHandleIds =
- cmHandleQueryService.getCmHandleIdsByDmiPluginIdentifier(dmiServiceName);
+ cmHandleQueryService.getCmHandleReferencesByDmiPluginIdentifier(dmiServiceName, false);
trustLevelManager.updateDmi(dmiServiceName, cmHandleIds, newDmiTrustLevel);
}
});
diff --git a/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/inventory/CmHandleQueryServiceImplSpec.groovy b/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/inventory/CmHandleQueryServiceImplSpec.groovy
index 0c50e3d4ee..ce08156fec 100644
--- a/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/inventory/CmHandleQueryServiceImplSpec.groovy
+++ b/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/inventory/CmHandleQueryServiceImplSpec.groovy
@@ -199,22 +199,26 @@ class CmHandleQueryServiceImplSpec extends Specification {
assert result.contains(cmHandleDataNode)
}
- def 'Get all cm handles by dmi plugin identifier'() {
+ def 'Get all cm handles by dmi plugin identifier and alternate id output option where #scenario'() {
given: 'the DataNodes queried for a given cpsPath are returned from the persistence service.'
mockResponses()
- when: 'cm Handles are fetched for a given dmi plugin identifier'
- def result = objectUnderTest.getCmHandleIdsByDmiPluginIdentifier('my-dmi-plugin-identifier')
+ when: 'cm Handles are fetched for a given dmi plugin identifier and alternate id output option'
+ def result = objectUnderTest.getCmHandleReferencesByDmiPluginIdentifier('my-dmi-plugin-identifier', outputAlternateId)
then: 'result is the correct size'
assert result.size() == 3
and: 'result contains the correct cm handles'
- assert result.containsAll('PNFDemo', 'PNFDemo2', 'PNFDemo4')
+ assert result.containsAll(expectedResult)
+ where:
+ scenario | outputAlternateId || expectedResult
+ 'output is for alternate ids' | true || ['alt-PNFDemo', 'alt-PNFDemo2', 'alt-PNFDemo4']
+ 'output is for cm handle ids' | false || ['PNFDemo', 'PNFDemo2', 'PNFDemo4']
}
def 'Get all alternateIds by dmi plugin identifier'() {
given: 'the DataNodes queried for a given cpsPath are returned from the persistence service.'
mockResponses()
when: 'cm Handles are fetched for a given dmi plugin identifier'
- def result = objectUnderTest.getCmHandleReferencesByDmiPluginIdentifier('my-dmi-plugin-identifier').values()
+ def result = objectUnderTest.getCmHandleReferencesMapByDmiPluginIdentifier('my-dmi-plugin-identifier').values()
then: 'result is the correct size'
assert result.size() == 3
and: 'result contains the correct alternate Ids'
diff --git a/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/inventory/InventoryPersistenceImplSpec.groovy b/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/inventory/InventoryPersistenceImplSpec.groovy
index 34d9374f78..00f092ff75 100644
--- a/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/inventory/InventoryPersistenceImplSpec.groovy
+++ b/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/inventory/InventoryPersistenceImplSpec.groovy
@@ -381,9 +381,7 @@ class InventoryPersistenceImplSpec extends Specification {
def 'Check if cm handle exists for a given cm handle id'() {
given: 'data service returns a datanode with correct cm handle id'
mockCpsDataService.getDataNodes(NCMP_DATASPACE_NAME, NCMP_DMI_REGISTRY_ANCHOR, xpath, INCLUDE_ALL_DESCENDANTS) >> [dataNode]
- when: 'method is called to check if cm handle exists from cm handle id'
- def result = objectUnderTest.isExistingCmHandleId('some-cm-handle')
- then: 'check if cm handle id in datanode is equal to given cm handle id'
- assert result == true
+ expect: 'cm handle exists for given cm handle id'
+ assert true == objectUnderTest.isExistingCmHandleId('some-cm-handle')
}
}
diff --git a/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/inventory/NetworkCmProxyInventoryFacadeSpec.groovy b/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/inventory/NetworkCmProxyInventoryFacadeSpec.groovy
index 4c554c6af5..282bd9e89b 100644
--- a/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/inventory/NetworkCmProxyInventoryFacadeSpec.groovy
+++ b/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/inventory/NetworkCmProxyInventoryFacadeSpec.groovy
@@ -78,15 +78,20 @@ class NetworkCmProxyInventoryFacadeSpec extends Specification {
assert result.contains('cmHandle2')
}
- def 'Get all cm handle IDs by DMI plugin identifier.' () {
- given: 'cm handle queries service returns cm handles'
- 1 * mockCmHandleQueryService.getCmHandleIdsByDmiPluginIdentifier('some-dmi-plugin-identifier') >> ['cm-handle-1','cm-handle-2']
- when: 'cm handle Ids are requested with dmi plugin identifier'
- def result = objectUnderTest.getAllCmHandleIdsByDmiPluginIdentifier('some-dmi-plugin-identifier')
+ def 'Get all cm handle references by DMI plugin identifier and alternate id output option where #scenario.' () {
+ given: 'cm handle queries service returns cm handle references'
+ mockCmHandleQueryService.getCmHandleReferencesByDmiPluginIdentifier('some-dmi-plugin-identifier', false) >> ['cm-handle-1','cm-handle-2']
+ mockCmHandleQueryService.getCmHandleReferencesByDmiPluginIdentifier('some-dmi-plugin-identifier', true) >> ['alternate-id-1','alternate-id-2']
+ when: 'cm handle references are requested with dmi plugin identifier and alternate id output option'
+ def result = objectUnderTest.getAllCmHandleReferencesByDmiPluginIdentifier('some-dmi-plugin-identifier', outputAlternateId)
then: 'the result size is correct'
assert result.size() == 2
and: 'the result returns the correct details'
- assert result.containsAll('cm-handle-1','cm-handle-2')
+ assert result.containsAll(expectedResult)
+ where:
+ scenario | outputAlternateId || expectedResult
+ 'output is for alternate ids' | true || ['alternate-id-1', 'alternate-id-2']
+ 'output is for cm handle ids' | false || ['cm-handle-1','cm-handle-2']
}
def 'Getting Yang Resources for a given #scenario'() {
diff --git a/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/inventory/ParameterizedCmHandleQueryServiceSpec.groovy b/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/inventory/ParameterizedCmHandleQueryServiceSpec.groovy
index 9a81807ef9..0c44196348 100644
--- a/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/inventory/ParameterizedCmHandleQueryServiceSpec.groovy
+++ b/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/inventory/ParameterizedCmHandleQueryServiceSpec.groovy
@@ -200,22 +200,31 @@ class ParameterizedCmHandleQueryServiceSpec extends Specification {
'additional properties, no matching cm handles' | 'hasAllAdditionalProperties' | null | [] || 0
}
- def 'Retrieve CMHandleIds by different DMI properties with #scenario.' () {
+ def 'Retrieve alternate ids by different DMI properties.' () {
given: 'a query object created with dmi plugin as condition'
def cmHandleQueryParameters = new CmHandleQueryServiceParameters()
def conditionProperties = createConditionProperties('cmHandleWithDmiPlugin', [['some-key': 'some-value']])
cmHandleQueryParameters.setCmHandleQueryParameters([conditionProperties])
and: 'the inventoryPersistence returns different CmHandleIds'
- partiallyMockedCmHandleQueries.getCmHandleIdsByDmiPluginIdentifier(*_) >> cmHandleQueryResult
- partiallyMockedCmHandleQueries.getCmHandleReferencesByDmiPluginIdentifier(*_) >> cmHandleQueryResult
+ partiallyMockedCmHandleQueries.getCmHandleReferencesMapByDmiPluginIdentifier(*_) >> [:]
when: 'the query executed'
- def result = objectUnderTestWithPartiallyMockedQueries.queryCmHandleIdsForInventory(cmHandleQueryParameters, outputAlternateId)
+ def result = objectUnderTestWithPartiallyMockedQueries.queryCmHandleIdsForInventory(cmHandleQueryParameters, true)
then: 'the expected number of results are returned.'
- assert result.size() == expectedCmHandleIdsSize
- where: 'the following data is used'
- scenario | cmHandleQueryResult | outputAlternateId || expectedCmHandleIdsSize
- 'some matches' | ['h1','h2'] | false || 2
- 'no matches' | [:] | true || 0
+ assert result.size() == 0
+ }
+
+ def 'Retrieve cm handle ids by different DMI properties.' () {
+ given: 'a query object created with dmi plugin as condition'
+ def cmHandleQueryParameters = new CmHandleQueryServiceParameters()
+ def conditionProperties = createConditionProperties('cmHandleWithDmiPlugin', [['some-key': 'some-value']])
+ cmHandleQueryParameters.setCmHandleQueryParameters([conditionProperties])
+ and: 'the inventoryPersistence returns different CmHandleIds'
+ partiallyMockedCmHandleQueries.getCmHandleReferencesByDmiPluginIdentifier(_, _) >> ['h1','h2']
+ when: 'the query executed'
+ def result = objectUnderTestWithPartiallyMockedQueries.queryCmHandleIdsForInventory(cmHandleQueryParameters, false)
+ then: 'the expected number of results are returned.'
+ assert result.size() == 2
+
}
def 'Combine two query results where #scenario.'() {
diff --git a/docs/api/swagger/ncmp/openapi-inventory.yaml b/docs/api/swagger/ncmp/openapi-inventory.yaml
index c72f47a428..d358719a4b 100644
--- a/docs/api/swagger/ncmp/openapi-inventory.yaml
+++ b/docs/api/swagger/ncmp/openapi-inventory.yaml
@@ -86,8 +86,8 @@ paths:
- network-cm-proxy-inventory
/v1/ch/cmHandles:
get:
- description: Get all cm handle IDs for a registered DMI plugin
- operationId: getAllCmHandleIdsForRegisteredDmi
+ description: Get all cm handle references for a registered DMI plugin
+ operationId: getAllCmHandleReferencesForRegisteredDmi
parameters:
- description: dmi-plugin-identifier
in: query
@@ -96,6 +96,14 @@ paths:
schema:
example: my-dmi-plugin
type: string
+ - description: Boolean parameter to determine if returned value(s) will be cm
+ handle Ids or alternate Ids for a given query
+ in: query
+ name: outputAlternateId
+ required: false
+ schema:
+ default: false
+ type: boolean
responses:
"200":
content:
@@ -125,19 +133,19 @@ paths:
schema:
$ref: '#/components/schemas/ErrorMessage'
description: Internal Server Error
- summary: "Get all cm handle IDs for a registered DMI plugin (DMI plugin, DMI\
- \ data plugin, DMI model plugin)"
+ summary: "Get all cm handle references for a registered DMI plugin (DMI plugin,\
+ \ DMI data plugin, DMI model plugin)"
tags:
- network-cm-proxy-inventory
/v1/ch/searches:
post:
- description: "Query and get CMHandle references for additional properties, public\
- \ properties and registered DMI plugin (DMI plugin, DMI data plugin, DMI model\
- \ plugin)."
+ description: "Query and get cm handle references for additional properties,\
+ \ public properties and registered DMI plugin (DMI plugin, DMI data plugin,\
+ \ DMI model plugin)."
operationId: searchCmHandleIds
parameters:
- description: Boolean parameter to determine if returned value(s) will be cm
- handle references for a given query
+ handle Ids or alternate Ids for a given query
in: query
name: outputAlternateId
required: false
@@ -193,8 +201,8 @@ components:
example: my-dmi-plugin
type: string
outputAlternateIdOptionInQuery:
- description: Boolean parameter to determine if returned value(s) will be cmHandle
- Ids or Alternate Ids for a given query
+ description: Boolean parameter to determine if returned value(s) will be cm
+ handle Ids or alternate Ids for a given query
in: query
name: outputAlternateId
required: false
diff --git a/docs/api/swagger/ncmp/openapi.yaml b/docs/api/swagger/ncmp/openapi.yaml
index 024aed681c..aa84e432e9 100644
--- a/docs/api/swagger/ncmp/openapi.yaml
+++ b/docs/api/swagger/ncmp/openapi.yaml
@@ -1142,7 +1142,7 @@ paths:
operationId: searchCmHandleIds
parameters:
- description: Boolean parameter to determine if returned value(s) will be cm
- handle references for a given query
+ handle Ids or alternate Ids for a given query
in: query
name: outputAlternateId
required: false
@@ -1619,7 +1619,7 @@ components:
type: string
outputAlternateIdOptionInQuery:
description: Boolean parameter to determine if returned value(s) will be cm
- handle references for a given query
+ handle Ids or alternate Ids for a given query
in: query
name: outputAlternateId
required: false
@@ -1790,7 +1790,7 @@ components:
targetIds:
items:
description: "targeted cm handle references, maximum of 200 supported.\
- \ If this limit is exceeded the request wil be refused."
+ \ If this limit is exceeded the request will be refused."
example: "[\"da310eecdb8d44c2acc0ddaae01174b1\",\"c748c58f8e0b438f9fd1f28370b17d47\"\
]"
type: string