summaryrefslogtreecommitdiffstats
path: root/cps-ncmp-service/src/main/java/org
diff options
context:
space:
mode:
authorToine Siebelink <toine.siebelink@est.tech>2022-06-21 17:03:26 +0000
committerGerrit Code Review <gerrit@onap.org>2022-06-21 17:03:26 +0000
commitb000d8915b371724869195ba0889f7082eecc9f1 (patch)
treed2e0dd90d3585a011c95080ae954e26d136eda63 /cps-ncmp-service/src/main/java/org
parentaffb95e48d7bf80a2062eb8228b816846a99f977 (diff)
parent3b1d84ac048bd057a5497a2d0243cba675980781 (diff)
Merge "Quick fix for performance degradation bug"
Diffstat (limited to 'cps-ncmp-service/src/main/java/org')
-rw-r--r--cps-ncmp-service/src/main/java/org/onap/cps/ncmp/api/impl/NetworkCmProxyCmHandlerQueryServiceImpl.java15
1 files changed, 9 insertions, 6 deletions
diff --git a/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/api/impl/NetworkCmProxyCmHandlerQueryServiceImpl.java b/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/api/impl/NetworkCmProxyCmHandlerQueryServiceImpl.java
index 00cbe69f5..3deaa7d23 100644
--- a/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/api/impl/NetworkCmProxyCmHandlerQueryServiceImpl.java
+++ b/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/api/impl/NetworkCmProxyCmHandlerQueryServiceImpl.java
@@ -31,6 +31,7 @@ import java.util.Collections;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
+import java.util.stream.Collectors;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.onap.cps.ncmp.api.NetworkCmProxyCmHandlerQueryService;
@@ -126,17 +127,19 @@ public class NetworkCmProxyCmHandlerQueryServiceImpl implements NetworkCmProxyCm
final Map<DataNodeIdentifier, DataNode> amalgamatedQueryResults) {
boolean firstQuery = true;
if (!getModuleNames(cmHandleQueryServiceParameters.getCmHandleQueryParameters()).isEmpty()) {
- final Collection<Anchor> anchors = cpsAdminPersistenceService.queryAnchors("NFP-Operational",
- getModuleNames(cmHandleQueryServiceParameters.getCmHandleQueryParameters()));
- anchors.forEach(anchor -> {
- final List<DataNode> dataNodes = getDataNodes("//cm-handles[@id='" + anchor.getName() + "']");
- dataNodes.parallelStream().forEach(dataNode -> {
+ final Collection<String> anchorNames = cpsAdminPersistenceService.queryAnchors("NFP-Operational",
+ getModuleNames(cmHandleQueryServiceParameters.getCmHandleQueryParameters()))
+ .parallelStream().map(Anchor::getName).collect(Collectors.toList());
+
+ getAllCmHandles().forEach(dataNode -> {
+ if (anchorNames.contains(dataNode.getLeaves().get("id").toString())) {
final DataNodeIdentifier dataNodeIdentifier =
jsonObjectMapper.convertToValueType(dataNode, DataNodeIdentifier.class);
amalgamatedQueryResultIdentifiers.add(dataNodeIdentifier);
amalgamatedQueryResults.put(dataNodeIdentifier, dataNode);
- });
+ }
});
+
firstQuery = false;
}
return firstQuery;