* ===================================================================
  * ECOMP is a trademark and service mark of AT&T Intellectual Property.
  */
-
 /**
  * This class is useful to store the information concerning
  * blueprint artifact extracted from SDC CSAR
  */
+
 package org.onap.clamp.clds.sdc.controller.installer;
 
+import org.onap.sdc.api.notification.IResourceInstance;
+
 public class BlueprintArtifact {
 
     private String dcaeBlueprint;
     private String blueprintArtifactName;
-    private String blueprintInvariantResourceUuid;
     private String blueprintInvariantServiceUuid;
-    private String blueprintResourceInstanceName;
+    private IResourceInstance resourceAttached;
 
     public String getDcaeBlueprint() {
         return dcaeBlueprint;
         this.blueprintArtifactName = blueprintArtifactName;
     }
 
-    public String getBlueprintInvariantResourceUuid() {
-        return blueprintInvariantResourceUuid;
-    }
-
-    public void setBlueprintInvariantResourceUuid(String blueprintInvariantResourceUuid) {
-        this.blueprintInvariantResourceUuid = blueprintInvariantResourceUuid;
-    }
-
     public String getBlueprintInvariantServiceUuid() {
         return blueprintInvariantServiceUuid;
     }
         this.blueprintInvariantServiceUuid = blueprintInvariantServiceUuid;
     }
 
-    public String getBlueprintResourceInstanceName() {
-        return blueprintResourceInstanceName;
+    public IResourceInstance getResourceAttached() {
+        return resourceAttached;
     }
 
-    public void setBlueprintResourceInstanceName(String blueprintResourceInstanceName) {
-        this.blueprintResourceInstanceName = blueprintResourceInstanceName;
+    public void setResourceAttached(IResourceInstance resourceAttached) {
+        this.resourceAttached = resourceAttached;
     }
 }
 
                     try (InputStream stream = zipFile.getInputStream(entry)) {
                         blueprintArtifact.setDcaeBlueprint(IOUtils.toString(stream));
                     }
-                    IResourceInstance resource = searchForResourceByInstanceName(entry.getName().substring(
+                    blueprintArtifact.setResourceAttached(searchForResourceByInstanceName(entry.getName().substring(
                             entry.getName().indexOf(RESOURCE_INSTANCE_NAME_PREFIX)
                                     + RESOURCE_INSTANCE_NAME_PREFIX.length(),
-                            entry.getName().indexOf(RESOURCE_INSTANCE_NAME_SUFFIX)));
-                    blueprintArtifact.setBlueprintInvariantResourceUuid(resource.getResourceInvariantUUID());
-                    blueprintArtifact.setBlueprintResourceInstanceName(resource.getResourceInstanceName());
+                            entry.getName().indexOf(RESOURCE_INSTANCE_NAME_SUFFIX))));
+                    this.mapOfBlueprints.put(blueprintArtifact.getResourceAttached().getResourceInstanceName(),
+                            blueprintArtifact);
                     logger.info("Found a blueprint entry in the CSAR " + blueprintArtifact.getBlueprintArtifactName()
-                            + " for resource instance Name " + resource.getResourceInstanceName());
-                    this.mapOfBlueprints.put(blueprintArtifact.getBlueprintResourceInstanceName(), blueprintArtifact);
+                            + " for resource instance Name "
+                            + blueprintArtifact.getResourceAttached().getResourceInstanceName());
                 }
             }
             logger.info(this.mapOfBlueprints.size() + " blueprint(s) will be converted to closed loop");
 
             throws IOException, ParseException, InterruptedException {
         return dcaeInventoryService.getDcaeInformation(blueprintArtifact.getBlueprintArtifactName(),
                 blueprintArtifact.getBlueprintInvariantServiceUuid(),
-                blueprintArtifact.getBlueprintInvariantResourceUuid()).getTypeId();
+                blueprintArtifact.getResourceAttached().getResourceInvariantUUID()).getTypeId();
     }
 
     private CldsTemplate createFakeCldsTemplate(CsarHandler csar, BlueprintArtifact blueprintArtifact,
         cldsModel.setTemplateId(cldsTemplate.getId());
         cldsModel.setPropText("{\"global\":[{\"name\":\"service\",\"value\":[\""
                 + blueprintArtifact.getBlueprintInvariantServiceUuid() + "\"]},{\"name\":\"vf\",\"value\":[\""
-                + blueprintArtifact.getBlueprintInvariantResourceUuid()
+                + blueprintArtifact.getResourceAttached().getResourceInvariantUUID()
                 + "\"]},{\"name\":\"actionSet\",\"value\":[\"vnfRecipe\"]},{\"name\":\"location\",\"value\":[\"DC1\"]},{\"name\":\"deployParameters\",\"value\":{\n"
                 + "        \"policy_id\": \"" + "test" + "\"" + "      }}]}");
         cldsModel.setBpmnText(cldsTemplate.getBpmnText());
 
     private static final String CSAR_ARTIFACT_NAME = "testArtifact.csar";
     private static final String INVARIANT_SERVICE_UUID = "4cc5b45a-1f63-4194-8100-cd8e14248c92";
     private static final String INVARIANT_RESOURCE1_UUID = "07e266fc-49ab-4cd7-8378-ca4676f1b9ec";
+    private static final String INSTANCE_NAME_RESOURCE1 = "ResourceInstanceName";
     @Autowired
     private CsarInstaller csarInstaller;
     @Autowired
             throws SdcArtifactInstallerException, SdcToscaParserException, CsarHandlerException, IOException {
         CsarHandler csarHandler = Mockito.mock(CsarHandler.class);
         BlueprintArtifact blueprintArtifact = Mockito.mock(BlueprintArtifact.class);
+        Mockito.when(blueprintArtifact.getResourceAttached()).thenReturn(Mockito.mock(IResourceInstance.class));
         Map<String, BlueprintArtifact> blueprintMap = new HashMap<>();
         blueprintMap.put("resourceid", blueprintArtifact);
         Mockito.when(csarHandler.getMapOfBlueprints()).thenReturn(blueprintMap);
         // Create fake resource in notification
         List<IResourceInstance> listResources = new ArrayList<>();
         IResourceInstance resource = Mockito.mock(IResourceInstance.class);
-        Mockito.when(resource.getResourceInstanceName()).thenReturn("mm-e 0");
-        Mockito.when(resource.getResourceInvariantUUID()).thenReturn("mme0-invariantUuid");
+        Mockito.when(resource.getResourceInstanceName()).thenReturn(INSTANCE_NAME_RESOURCE1);
+        Mockito.when(resource.getResourceInvariantUUID()).thenReturn(INVARIANT_RESOURCE1_UUID);
+        listResources.add(resource);
         Mockito.when(notificationData.getResources()).thenReturn(listResources);
         // Create fake blueprint artifact
         BlueprintArtifact blueprintArtifact = Mockito.mock(BlueprintArtifact.class);
                 .thenReturn(ResourceFileUtil.getResourceAsString("example/sdc/blueprint-dcae/tca.yaml"));
         Mockito.when(blueprintArtifact.getBlueprintArtifactName()).thenReturn(CSAR_ARTIFACT_NAME);
         Mockito.when(blueprintArtifact.getBlueprintInvariantServiceUuid()).thenReturn(INVARIANT_SERVICE_UUID);
-        Mockito.when(blueprintArtifact.getBlueprintInvariantResourceUuid()).thenReturn(INVARIANT_RESOURCE1_UUID);
+        Mockito.when(blueprintArtifact.getResourceAttached()).thenReturn(resource);
         Map<String, BlueprintArtifact> blueprintMap = new HashMap<>();
         blueprintMap.put("resourceid", blueprintArtifact);
         // Build fake csarhandler
 
         // Test additional properties from Sdc notif
         assertEquals(BLUEPRINT1_NAME,
                 csar.getMapOfBlueprints().get(RESOURCE1_INSTANCE_NAME).getBlueprintArtifactName());
-        assertEquals(RESOURCE1_UUID,
-                csar.getMapOfBlueprints().get(RESOURCE1_INSTANCE_NAME).getBlueprintInvariantResourceUuid());
+        assertEquals(RESOURCE1_UUID, csar.getMapOfBlueprints().get(RESOURCE1_INSTANCE_NAME).getResourceAttached()
+                .getResourceInvariantUUID());
         assertEquals(SERVICE_UUID,
                 csar.getMapOfBlueprints().get(RESOURCE1_INSTANCE_NAME).getBlueprintInvariantServiceUuid());
         // Do some cleanup
         // Test additional properties from Sdc notif
         assertEquals(BLUEPRINT1_NAME,
                 csar.getMapOfBlueprints().get(RESOURCE1_INSTANCE_NAME).getBlueprintArtifactName());
-        assertEquals(RESOURCE1_UUID,
-                csar.getMapOfBlueprints().get(RESOURCE1_INSTANCE_NAME).getBlueprintInvariantResourceUuid());
+        assertEquals(RESOURCE1_UUID, csar.getMapOfBlueprints().get(RESOURCE1_INSTANCE_NAME).getResourceAttached()
+                .getResourceInvariantUUID());
         assertEquals(SERVICE_UUID,
                 csar.getMapOfBlueprints().get(RESOURCE1_INSTANCE_NAME).getBlueprintInvariantServiceUuid());
         Path path = Paths.get(SDC_FOLDER + "/test-controller/" + CSAR_ARTIFACT_NAME);