From: talio Date: Thu, 16 Aug 2018 07:49:35 +0000 (+0300) Subject: Fix NPE X-Git-Tag: 1.3.0~159 X-Git-Url: https://gerrit.onap.org/r/gitweb?a=commitdiff_plain;h=refs%2Fchanges%2F61%2F60861%2F1;p=sdc.git Fix NPE Fix NPE in CompositionDataExtractor, by checking if a list is null before looping on it. Change-Id: I6441662684ad55d275626c8c813cb910ef5c00f7 Issue-ID: SDC-1513 Signed-off-by: talio --- diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/services/impl/composition/CompositionDataExtractorImpl.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/services/impl/composition/CompositionDataExtractorImpl.java index 33ad16c12d..aded0dfbae 100644 --- a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/services/impl/composition/CompositionDataExtractorImpl.java +++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/services/impl/composition/CompositionDataExtractorImpl.java @@ -330,24 +330,31 @@ public class CompositionDataExtractorImpl implements CompositionDataExtractor { List images = imageList.get(computeId); List computeFlavors = computeFlavorNodeTemplates.get(computeId); - if (connectedPortIds != null) { + if (CollectionUtils.isNotEmpty(connectedPortIds)) { componentModel.setNics(new ArrayList<>()); componentModel.setImages(new ArrayList<>()); componentModel.setCompute(new ArrayList<>()); - for (String portId : connectedPortIds) { + + connectedPortIds.forEach(portId -> { Nic port = extractPort(serviceTemplate, portId); componentModel.getNics().add(port); context.addNic(portId, port); + }); + + if (CollectionUtils.isNotEmpty(images)) { + images.forEach(image -> { + Image img = new Image(image); + componentModel.getImages().add(img); + context.addImage(image, img); + }); } - for (String image : images) { - Image img = new Image(image); - componentModel.getImages().add(img); - context.addImage(image, img); - } - for (String flavor : computeFlavors) { - ComputeData computeFlavor = new ComputeData(flavor); - componentModel.getCompute().add(computeFlavor); - context.addCompute(flavor,computeFlavor); + + if (CollectionUtils.isNotEmpty(computeFlavors)) { + computeFlavors.forEach(flavor -> { + ComputeData computeFlavor = new ComputeData(flavor); + componentModel.getCompute().add(computeFlavor); + context.addCompute(flavor, computeFlavor); + }); } } context.addComponent(componentModel);