From 40072d3dcc1d0193bba1ea9432c13ac24857be55 Mon Sep 17 00:00:00 2001 From: "Muthuramalingam, Brinda Santh" Date: Wed, 27 Mar 2019 13:22:51 -0400 Subject: Improve function interfaces Change-Id: I24f45d39ac05491a4217101e00bcbf8d122e4e1a Issue-ID: CCSDK-1137 Signed-off-by: Muthuramalingam, Brinda Santh --- .../resolution/ResourceResolutionComponent.kt | 5 +- .../resolution/ResourceResolutionService.kt | 9 ++- .../CapabilityResourceResolutionProcessor.kt | 16 ++-- .../DatabaseResourceAssignmentProcessor.kt | 4 +- .../DefaultResourceResolutionProcessor.kt | 4 +- .../processor/InputResourceResolutionProcessor.kt | 4 +- .../processor/ResourceAssignmentProcessor.kt | 83 ++++++++++++++++---- .../processor/RestResourceResolutionProcessor.kt | 12 +-- .../kotlin/scripts/InternalRAProcessor.cba.kts | 4 +- .../resolution/ResourceResolutionComponentTest.kt | 31 ++++---- .../CapabilityResourceResolutionProcessorTest.kt | 89 ++++++++++++---------- 11 files changed, 162 insertions(+), 99 deletions(-) (limited to 'ms/blueprintsprocessor/functions/resource-resolution/src') diff --git a/ms/blueprintsprocessor/functions/resource-resolution/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/functions/resource/resolution/ResourceResolutionComponent.kt b/ms/blueprintsprocessor/functions/resource-resolution/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/functions/resource/resolution/ResourceResolutionComponent.kt index 0fe638a04..8191db74e 100644 --- a/ms/blueprintsprocessor/functions/resource-resolution/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/functions/resource/resolution/ResourceResolutionComponent.kt +++ b/ms/blueprintsprocessor/functions/resource-resolution/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/functions/resource/resolution/ResourceResolutionComponent.kt @@ -1,5 +1,6 @@ /* * Copyright © 2017-2018 AT&T Intellectual Property. + * Modifications Copyright © 2019 IBM. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -30,7 +31,7 @@ import org.springframework.stereotype.Component open class ResourceResolutionComponent(private val resourceResolutionService: ResourceResolutionService) : AbstractComponentFunction() { - override fun process(executionRequest: ExecutionServiceInput) { + override suspend fun processNB(executionRequest: ExecutionServiceInput) { val properties: MutableMap = mutableMapOf() @@ -56,7 +57,7 @@ open class ResourceResolutionComponent(private val resourceResolutionService: Re ResourceResolutionConstants.OUTPUT_ASSIGNMENT_PARAMS, resolvedParamContents.asJsonNode()) } - override fun recover(runtimeException: RuntimeException, executionRequest: ExecutionServiceInput) { + override suspend fun recoverNB(runtimeException: RuntimeException, executionRequest: ExecutionServiceInput) { bluePrintRuntimeService.getBluePrintError().addError(runtimeException.message!!) } } \ No newline at end of file diff --git a/ms/blueprintsprocessor/functions/resource-resolution/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/functions/resource/resolution/ResourceResolutionService.kt b/ms/blueprintsprocessor/functions/resource-resolution/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/functions/resource/resolution/ResourceResolutionService.kt index ce3aa4d84..dad804692 100644 --- a/ms/blueprintsprocessor/functions/resource-resolution/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/functions/resource/resolution/ResourceResolutionService.kt +++ b/ms/blueprintsprocessor/functions/resource-resolution/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/functions/resource/resolution/ResourceResolutionService.kt @@ -17,6 +17,7 @@ package org.onap.ccsdk.cds.blueprintsprocessor.functions.resource.resolution +import kotlinx.coroutines.runBlocking import org.onap.ccsdk.cds.blueprintsprocessor.functions.resource.resolution.db.ResourceResolutionResultService import org.onap.ccsdk.cds.blueprintsprocessor.functions.resource.resolution.processor.ResourceAssignmentProcessor import org.onap.ccsdk.cds.blueprintsprocessor.functions.resource.resolution.utils.ResourceAssignmentUtils @@ -180,9 +181,11 @@ open class ResourceResolutionServiceImpl(private var applicationContext: Applica resourceAssignmentProcessor.raRuntimeService = resourceAssignmentRuntimeService // Set Resource Dictionaries resourceAssignmentProcessor.resourceDictionaries = resourceDictionaries - // Invoke Apply Method - resourceAssignmentProcessor.apply(resourceAssignment) - + // TODO ("Implement suspend function") + runBlocking { + // Invoke Apply Method + resourceAssignmentProcessor.applyNB(resourceAssignment) + } // Set errors from RA blueprintRuntimeService.setBluePrintError(resourceAssignmentRuntimeService.getBluePrintError()) } catch (e: RuntimeException) { diff --git a/ms/blueprintsprocessor/functions/resource-resolution/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/functions/resource/resolution/processor/CapabilityResourceResolutionProcessor.kt b/ms/blueprintsprocessor/functions/resource-resolution/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/functions/resource/resolution/processor/CapabilityResourceResolutionProcessor.kt index ae08a1cf9..1a7c50676 100644 --- a/ms/blueprintsprocessor/functions/resource-resolution/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/functions/resource/resolution/processor/CapabilityResourceResolutionProcessor.kt +++ b/ms/blueprintsprocessor/functions/resource-resolution/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/functions/resource/resolution/processor/CapabilityResourceResolutionProcessor.kt @@ -44,7 +44,7 @@ open class CapabilityResourceResolutionProcessor(private val applicationContext: return "${PREFIX_RESOURCE_RESOLUTION_PROCESSOR}source-capability" } - override fun process(resourceAssignment: ResourceAssignment) { + override suspend fun processNB(resourceAssignment: ResourceAssignment) { val resourceDefinition = resourceDictionaries[resourceAssignment.dictionaryName] ?: throw BluePrintProcessorException("couldn't get resource definition for ${resourceAssignment.dictionaryName}") @@ -71,21 +71,20 @@ open class CapabilityResourceResolutionProcessor(private val applicationContext: } // Assign Current Blueprint runtime and ResourceDictionaries + componentResourceAssignmentProcessor!!.scriptType = scriptType componentResourceAssignmentProcessor!!.raRuntimeService = raRuntimeService componentResourceAssignmentProcessor!!.resourceDictionaries = resourceDictionaries // Invoke componentResourceAssignmentProcessor - componentResourceAssignmentProcessor!!.apply(resourceAssignment) + componentResourceAssignmentProcessor!!.executeScript(resourceAssignment) } - override fun recover(runtimeException: RuntimeException, resourceAssignment: ResourceAssignment) { - log.info("Recovering for : ${resourceAssignment.name} : ${runtimeException.toString()}") - if (componentResourceAssignmentProcessor != null) { - componentResourceAssignmentProcessor!!.recover(runtimeException, resourceAssignment) - } + override suspend fun recoverNB(runtimeException: RuntimeException, resourceAssignment: ResourceAssignment) { + raRuntimeService.getBluePrintError() + .addError("Failed in ComponentNetconfExecutor : ${runtimeException.message}") } - fun scriptInstance(scriptType: String, scriptClassReference: String, instanceDependencies: List) + suspend fun scriptInstance(scriptType: String, scriptClassReference: String, instanceDependencies: List) : ResourceAssignmentProcessor { log.info("creating resource resolution of script type($scriptType), reference name($scriptClassReference) and" + @@ -101,4 +100,5 @@ open class CapabilityResourceResolutionProcessor(private val applicationContext: } return scriptComponent } + } \ No newline at end of file diff --git a/ms/blueprintsprocessor/functions/resource-resolution/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/functions/resource/resolution/processor/DatabaseResourceAssignmentProcessor.kt b/ms/blueprintsprocessor/functions/resource-resolution/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/functions/resource/resolution/processor/DatabaseResourceAssignmentProcessor.kt index d190ee53c..1d9aed2d2 100644 --- a/ms/blueprintsprocessor/functions/resource-resolution/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/functions/resource/resolution/processor/DatabaseResourceAssignmentProcessor.kt +++ b/ms/blueprintsprocessor/functions/resource-resolution/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/functions/resource/resolution/processor/DatabaseResourceAssignmentProcessor.kt @@ -52,7 +52,7 @@ open class DatabaseResourceAssignmentProcessor(private val bluePrintDBLibPropert return "${PREFIX_RESOURCE_RESOLUTION_PROCESSOR}source-processor-db" } - override fun process(resourceAssignment: ResourceAssignment) { + override suspend fun processNB(resourceAssignment: ResourceAssignment) { try { validate(resourceAssignment) @@ -184,7 +184,7 @@ open class DatabaseResourceAssignmentProcessor(private val bluePrintDBLibPropert } } - override fun recover(runtimeException: RuntimeException, resourceAssignment: ResourceAssignment) { + override suspend fun recoverNB(runtimeException: RuntimeException, resourceAssignment: ResourceAssignment) { raRuntimeService.getBluePrintError().addError(runtimeException.message!!) } } \ No newline at end of file diff --git a/ms/blueprintsprocessor/functions/resource-resolution/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/functions/resource/resolution/processor/DefaultResourceResolutionProcessor.kt b/ms/blueprintsprocessor/functions/resource-resolution/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/functions/resource/resolution/processor/DefaultResourceResolutionProcessor.kt index ed9024d25..954b60522 100644 --- a/ms/blueprintsprocessor/functions/resource-resolution/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/functions/resource/resolution/processor/DefaultResourceResolutionProcessor.kt +++ b/ms/blueprintsprocessor/functions/resource-resolution/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/functions/resource/resolution/processor/DefaultResourceResolutionProcessor.kt @@ -42,7 +42,7 @@ open class DefaultResourceResolutionProcessor : ResourceAssignmentProcessor() { return "${PREFIX_RESOURCE_RESOLUTION_PROCESSOR}source-default" } - override fun process(resourceAssignment: ResourceAssignment) { + override suspend fun processNB(resourceAssignment: ResourceAssignment) { try { var value = getFromInput(resourceAssignment) if (value == null || value is MissingNode) { @@ -59,7 +59,7 @@ open class DefaultResourceResolutionProcessor : ResourceAssignmentProcessor() { } - override fun recover(runtimeException: RuntimeException, resourceAssignment: ResourceAssignment) { + override suspend fun recoverNB(runtimeException: RuntimeException, resourceAssignment: ResourceAssignment) { raRuntimeService.getBluePrintError().addError(runtimeException.message!!) } } \ No newline at end of file diff --git a/ms/blueprintsprocessor/functions/resource-resolution/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/functions/resource/resolution/processor/InputResourceResolutionProcessor.kt b/ms/blueprintsprocessor/functions/resource-resolution/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/functions/resource/resolution/processor/InputResourceResolutionProcessor.kt index 9fa72ca94..ce618af9f 100644 --- a/ms/blueprintsprocessor/functions/resource-resolution/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/functions/resource/resolution/processor/InputResourceResolutionProcessor.kt +++ b/ms/blueprintsprocessor/functions/resource-resolution/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/functions/resource/resolution/processor/InputResourceResolutionProcessor.kt @@ -44,7 +44,7 @@ open class InputResourceResolutionProcessor : ResourceAssignmentProcessor() { return "${PREFIX_RESOURCE_RESOLUTION_PROCESSOR}source-input" } - override fun process(resourceAssignment: ResourceAssignment) { + override suspend fun processNB(resourceAssignment: ResourceAssignment) { try { if (checkNotEmpty(resourceAssignment.name)) { val value = raRuntimeService.getInputValue(resourceAssignment.name) @@ -62,7 +62,7 @@ open class InputResourceResolutionProcessor : ResourceAssignmentProcessor() { } } - override fun recover(runtimeException: RuntimeException, resourceAssignment: ResourceAssignment) { + override suspend fun recoverNB(runtimeException: RuntimeException, resourceAssignment: ResourceAssignment) { raRuntimeService.getBluePrintError().addError(runtimeException.message!!) } } \ No newline at end of file diff --git a/ms/blueprintsprocessor/functions/resource-resolution/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/functions/resource/resolution/processor/ResourceAssignmentProcessor.kt b/ms/blueprintsprocessor/functions/resource-resolution/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/functions/resource/resolution/processor/ResourceAssignmentProcessor.kt index 97e2f2c69..e9bb2ffe4 100644 --- a/ms/blueprintsprocessor/functions/resource-resolution/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/functions/resource/resolution/processor/ResourceAssignmentProcessor.kt +++ b/ms/blueprintsprocessor/functions/resource-resolution/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/functions/resource/resolution/processor/ResourceAssignmentProcessor.kt @@ -21,6 +21,8 @@ import com.fasterxml.jackson.databind.JsonNode import org.apache.commons.collections.MapUtils import org.onap.ccsdk.cds.blueprintsprocessor.functions.resource.resolution.ResourceAssignmentRuntimeService import org.onap.ccsdk.cds.blueprintsprocessor.functions.resource.resolution.utils.ResourceAssignmentUtils +import org.onap.ccsdk.cds.controllerblueprints.core.BluePrintConstants +import org.onap.ccsdk.cds.controllerblueprints.core.BluePrintException import org.onap.ccsdk.cds.controllerblueprints.core.BluePrintProcessorException import org.onap.ccsdk.cds.controllerblueprints.core.interfaces.BlueprintFunctionNode import org.onap.ccsdk.cds.controllerblueprints.core.service.BluePrintTemplateService @@ -38,13 +40,14 @@ abstract class ResourceAssignmentProcessor : BlueprintFunctionNode var scriptPropertyInstances: MutableMap = hashMapOf() + lateinit var scriptType: String /** * This will be called from the scripts to serve instance from runtime to scripts. */ open fun scriptPropertyInstanceType(name: String): T { return scriptPropertyInstances as? T - ?: throw BluePrintProcessorException("couldn't get script property instance ($name)") + ?: throw BluePrintProcessorException("couldn't get script property instance ($name)") } open fun getFromInput(resourceAssignment: ResourceAssignment): JsonNode? { @@ -60,7 +63,7 @@ abstract class ResourceAssignmentProcessor : BlueprintFunctionNode): Map { @@ -83,25 +86,80 @@ abstract class ResourceAssignmentProcessor : BlueprintFunctionNode { + executeScriptBlocking(resourceAssignment) + } + else -> { + executeScriptNB(resourceAssignment) + } + } } - override fun apply(resourceAssignment: ResourceAssignment): Boolean { + private suspend fun executeScriptNB(resourceAssignment: ResourceAssignment) { + try { + processNB(resourceAssignment) + } catch (runtimeException: RuntimeException) { + log.error("failed in ${getName()} : ${runtimeException.message}", runtimeException) + recoverNB(runtimeException, resourceAssignment) + } + } + + private fun executeScriptBlocking(resourceAssignment: ResourceAssignment) { try { - prepareRequest(resourceAssignment) process(resourceAssignment) } catch (runtimeException: RuntimeException) { + log.error("failed in ${getName()} : ${runtimeException.message}", runtimeException) recover(runtimeException, resourceAssignment) } - return prepareResponse() + } + + /** + * If Jython Script, Override Blocking methods(process() and recover()) + * If Kotlin or Internal Scripts, Override non blocking methods ( processNB() and recoverNB()), so default + * blocking + * methods will have default implementation, + * + * Always applyNB() method will be invoked, apply() won't be called from parent + */ + + final override fun apply(resourceAssignment: ResourceAssignment): Boolean { + throw BluePrintException("Not Implemented, use applyNB method") + } + + final override fun prepareRequest(resourceAssignment: ResourceAssignment): ResourceAssignment { + throw BluePrintException("Not Implemented required") + } + + final override fun prepareResponse(): Boolean { + throw BluePrintException("Not Implemented required") + } + + final override suspend fun prepareRequestNB(resourceAssignment: ResourceAssignment): ResourceAssignment { + throw BluePrintException("Not Implemented required") + } + + final override suspend fun prepareResponseNB(): Boolean { + throw BluePrintException("Not Implemented required") + } + + override fun process(resourceAssignment: ResourceAssignment) { + throw BluePrintException("Not Implemented, child class will implement this") + } + + override fun recover(runtimeException: RuntimeException, resourceAssignment: ResourceAssignment) { + throw BluePrintException("Not Implemented, child class will implement this") } fun addError(type: String, name: String, error: String) { @@ -111,5 +169,4 @@ abstract class ResourceAssignmentProcessor : BlueprintFunctionNode = hashMapOf() - stepMetaData.putJsonElement(BluePrintConstants.PROPERTY_CURRENT_NODE_TEMPLATE, "resource-assignment") - stepMetaData.putJsonElement(BluePrintConstants.PROPERTY_CURRENT_INTERFACE, "ResourceResolutionComponent") - stepMetaData.putJsonElement(BluePrintConstants.PROPERTY_CURRENT_OPERATION, "process") - bluePrintRuntimeService.put("resource-assignment-step-inputs", stepMetaData.asJsonNode()) + val stepMetaData: MutableMap = hashMapOf() + stepMetaData.putJsonElement(BluePrintConstants.PROPERTY_CURRENT_NODE_TEMPLATE, "resource-assignment") + stepMetaData.putJsonElement(BluePrintConstants.PROPERTY_CURRENT_INTERFACE, "ResourceResolutionComponent") + stepMetaData.putJsonElement(BluePrintConstants.PROPERTY_CURRENT_OPERATION, "process") + bluePrintRuntimeService.put("resource-assignment-step-inputs", stepMetaData.asJsonNode()) - resourceResolutionComponent.bluePrintRuntimeService = bluePrintRuntimeService - resourceResolutionComponent.stepName = "resource-assignment" - resourceResolutionComponent.apply(executionServiceInput) + resourceResolutionComponent.bluePrintRuntimeService = bluePrintRuntimeService + resourceResolutionComponent.stepName = "resource-assignment" + resourceResolutionComponent.applyNB(executionServiceInput) + } } } \ No newline at end of file diff --git a/ms/blueprintsprocessor/functions/resource-resolution/src/test/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/functions/resource/resolution/processor/CapabilityResourceResolutionProcessorTest.kt b/ms/blueprintsprocessor/functions/resource-resolution/src/test/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/functions/resource/resolution/processor/CapabilityResourceResolutionProcessorTest.kt index 8ab47b910..489d971a5 100644 --- a/ms/blueprintsprocessor/functions/resource-resolution/src/test/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/functions/resource/resolution/processor/CapabilityResourceResolutionProcessorTest.kt +++ b/ms/blueprintsprocessor/functions/resource-resolution/src/test/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/functions/resource/resolution/processor/CapabilityResourceResolutionProcessorTest.kt @@ -18,6 +18,7 @@ package org.onap.ccsdk.cds.blueprintsprocessor.functions.resource.resolution.processor +import kotlinx.coroutines.runBlocking import org.junit.Ignore import org.junit.Test import org.junit.runner.RunWith @@ -52,70 +53,74 @@ class CapabilityResourceResolutionProcessorTest { @Ignore @Test fun `test kotlin capability`() { + runBlocking { - val bluePrintContext = BluePrintMetadataUtils.getBluePrintContext( - "./../../../../components/model-catalog/blueprint-model/test-blueprint/baseconfiguration") + val bluePrintContext = BluePrintMetadataUtils.getBluePrintContext( + "./../../../../components/model-catalog/blueprint-model/test-blueprint/baseconfiguration") - val resourceAssignmentRuntimeService = ResourceAssignmentRuntimeService("1234", bluePrintContext) + val resourceAssignmentRuntimeService = ResourceAssignmentRuntimeService("1234", bluePrintContext) - capabilityResourceResolutionProcessor.raRuntimeService = resourceAssignmentRuntimeService - capabilityResourceResolutionProcessor.resourceDictionaries = hashMapOf() + capabilityResourceResolutionProcessor.raRuntimeService = resourceAssignmentRuntimeService + capabilityResourceResolutionProcessor.resourceDictionaries = hashMapOf() - val scriptPropertyInstances: MutableMap = mutableMapOf() - scriptPropertyInstances["mock-service1"] = MockCapabilityService() - scriptPropertyInstances["mock-service2"] = MockCapabilityService() + val scriptPropertyInstances: MutableMap = mutableMapOf() + scriptPropertyInstances["mock-service1"] = MockCapabilityService() + scriptPropertyInstances["mock-service2"] = MockCapabilityService() - val instanceDependencies: List = listOf() + val instanceDependencies: List = listOf() - val resourceAssignmentProcessor = capabilityResourceResolutionProcessor - .scriptInstance("kotlin", - "ResourceAssignmentProcessor_cba\$ScriptResourceAssignmentProcessor", instanceDependencies) + val resourceAssignmentProcessor = capabilityResourceResolutionProcessor + .scriptInstance("kotlin", + "ResourceAssignmentProcessor_cba\$ScriptResourceAssignmentProcessor", instanceDependencies) - assertNotNull(resourceAssignmentProcessor, "couldn't get kotlin script resource assignment processor") + assertNotNull(resourceAssignmentProcessor, "couldn't get kotlin script resource assignment processor") - val resourceAssignment = ResourceAssignment().apply { - name = "ra-name" - dictionaryName = "ra-dict-name" - dictionarySource = "capability" - property = PropertyDefinition().apply { - type = "string" + val resourceAssignment = ResourceAssignment().apply { + name = "ra-name" + dictionaryName = "ra-dict-name" + dictionarySource = "capability" + property = PropertyDefinition().apply { + type = "string" + } } - } - val processorName = resourceAssignmentProcessor.apply(resourceAssignment) - assertNotNull(processorName, "couldn't get kotlin script resource assignment processor name") - println(processorName) + val processorName = resourceAssignmentProcessor.applyNB(resourceAssignment) + assertNotNull(processorName, "couldn't get kotlin script resource assignment processor name") + println(processorName) + } } @Test fun `test jython capability`() { + runBlocking { - val bluePrintContext = BluePrintMetadataUtils.getBluePrintContext( - "./../../../../components/model-catalog/blueprint-model/test-blueprint/capability_python") + val bluePrintContext = BluePrintMetadataUtils.getBluePrintContext( + "./../../../../components/model-catalog/blueprint-model/test-blueprint/capability_python") - val resourceAssignmentRuntimeService = ResourceAssignmentRuntimeService("1234", bluePrintContext) + val resourceAssignmentRuntimeService = ResourceAssignmentRuntimeService("1234", bluePrintContext) - capabilityResourceResolutionProcessor.raRuntimeService = resourceAssignmentRuntimeService + capabilityResourceResolutionProcessor.raRuntimeService = resourceAssignmentRuntimeService - val resourceDefinition = JacksonUtils - .readValueFromClassPathFile("mapping/capability/jython-resource-definitions.json", - ResourceDefinition::class.java)!! - val resourceDefinitions: MutableMap = mutableMapOf() - resourceDefinitions[resourceDefinition.name] = resourceDefinition - capabilityResourceResolutionProcessor.resourceDictionaries = resourceDefinitions + val resourceDefinition = JacksonUtils + .readValueFromClassPathFile("mapping/capability/jython-resource-definitions.json", + ResourceDefinition::class.java)!! + val resourceDefinitions: MutableMap = mutableMapOf() + resourceDefinitions[resourceDefinition.name] = resourceDefinition + capabilityResourceResolutionProcessor.resourceDictionaries = resourceDefinitions - val resourceAssignment = ResourceAssignment().apply { - name = "service-instance-id" - dictionaryName = "service-instance-id" - dictionarySource = "capability" - property = PropertyDefinition().apply { - type = "string" + val resourceAssignment = ResourceAssignment().apply { + name = "service-instance-id" + dictionaryName = "service-instance-id" + dictionarySource = "capability" + property = PropertyDefinition().apply { + type = "string" + } } - } - val processorName = capabilityResourceResolutionProcessor.apply(resourceAssignment) - assertNotNull(processorName, "couldn't get Jython script resource assignment processor name") + val processorName = capabilityResourceResolutionProcessor.processNB(resourceAssignment) + assertNotNull(processorName, "couldn't get Jython script resource assignment processor name") + } } -- cgit 1.2.3-korg