From 749aa2119a5201a5ff503b98370b61b082e18455 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 (cherry picked from commit 316a6df0f1a42cb3f825b9ab4b51d9d59215a530) --- .../openecomp/sdc/be/components/impl/ResourceBusinessLogic.java | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (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 a3d746da89..c7a98a2587 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 @@ -2224,8 +2224,7 @@ public class ResourceBusinessLogic extends ComponentBusinessLogic { CsarInfo csarInfo, 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()); @@ -2256,6 +2255,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