Merge "Set resource data value when fetch from database"
authorDan Timoney <dtimoney@att.com>
Fri, 9 Aug 2019 21:48:43 +0000 (21:48 +0000)
committerGerrit Code Review <gerrit@onap.org>
Fri, 9 Aug 2019 21:48:43 +0000 (21:48 +0000)
ms/blueprintsprocessor/functions/resource-resolution/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/functions/resource/resolution/ResourceResolutionService.kt

index 3140657..b9b7103 100644 (file)
@@ -121,7 +121,8 @@ open class ResourceResolutionServiceImpl(private var applicationContext: Applica
         if (isToStore(properties)) {
             val existingResourceResolution = isNewResolution(bluePrintRuntimeService, properties, artifactPrefix)
             if (existingResourceResolution.isNotEmpty()) {
-                updateResourceAssignmentWithExisting(existingResourceResolution, resourceAssignments)
+                updateResourceAssignmentWithExisting(bluePrintRuntimeService as ResourceAssignmentRuntimeService,
+                    existingResourceResolution, resourceAssignments)
             }
         }
 
@@ -296,15 +297,18 @@ open class ResourceResolutionServiceImpl(private var applicationContext: Applica
     }
 
     // Update the resource assignment list with the status of the resource that have already been resolved
-    private fun updateResourceAssignmentWithExisting(resourceResolutionList: List<ResourceResolution>,
+    private fun updateResourceAssignmentWithExisting(raRuntimeService : ResourceAssignmentRuntimeService,
+                                                     resourceResolutionList: List<ResourceResolution>,
                                                      resourceAssignmentList: MutableList<ResourceAssignment>) {
         resourceResolutionList.forEach { resourceResolution ->
             if (resourceResolution.status == BluePrintConstants.STATUS_SUCCESS) {
                 resourceAssignmentList.forEach {
                     if (compareOne(resourceResolution, it)) {
                         log.info("Resource ({}) already resolve: value=({})", it.name, resourceResolution.value)
-                        it.property!!.value = resourceResolution.value!!.asJsonPrimitive()
+                        val value = resourceResolution.value!!.asJsonPrimitive()
+                        it.property!!.value = value
                         it.status = resourceResolution.status
+                        ResourceAssignmentUtils.setResourceDataValue(it, raRuntimeService, value)
                     }
                 }
             }