From 316a6df0f1a42cb3f825b9ab4b51d9d59215a530 Mon Sep 17 00:00:00 2001 From: MichaelMorris Date: Wed, 24 Mar 2021 15:00:53 +0000 Subject: Fix issue with global substitutions Check if node types in the global substitutions file already exist before attempting to create them Signed-off-by: MichaelMorris Issue-ID: SDC-3533 Change-Id: I8129e3108e27f3bae4f33e1bd652d8b74ae34de9 --- .../org/openecomp/sdc/be/components/impl/ResourceBusinessLogic.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'catalog-be') diff --git a/catalog-be/src/main/java/org/openecomp/sdc/be/components/impl/ResourceBusinessLogic.java b/catalog-be/src/main/java/org/openecomp/sdc/be/components/impl/ResourceBusinessLogic.java index fa58e61d3b..c8162d700b 100644 --- a/catalog-be/src/main/java/org/openecomp/sdc/be/components/impl/ResourceBusinessLogic.java +++ b/catalog-be/src/main/java/org/openecomp/sdc/be/components/impl/ResourceBusinessLogic.java @@ -1875,7 +1875,7 @@ public class ResourceBusinessLogic extends ComponentBusinessLogic { String nodeName) { try { for (Entry nodeTypeEntry : nodeTypesInfo.entrySet()) { - if (nodeTypeEntry.getValue().isNested()) { + if (nodeTypeEntry.getValue().isNested() && !nodeTypeAlreadyExists(nodeTypeEntry.getKey())) { handleNestedVfc(resource, nodeTypesArtifactsToHandle, nodeTypesNewCreatedArtifacts, nodeTypesInfo, csarInfo, nodeTypeEntry.getKey()); log.trace("************* finished to create node {}", nodeTypeEntry.getKey()); @@ -1902,6 +1902,10 @@ public class ResourceBusinessLogic extends ComponentBusinessLogic { throw e; } } + + private boolean nodeTypeAlreadyExists(final String toscaResourceName) { + return toscaOperationFacade.getLatestByToscaResourceName(toscaResourceName).isLeft(); + } private Either handleVfCsarArtifacts(Resource resource, CsarInfo csarInfo, List createdArtifacts, ArtifactOperationInfo artifactOperation, boolean shouldLock, -- cgit 1.2.3-korg