From 9c0f6c2b556c9d39766636544827189d75b6af50 Mon Sep 17 00:00:00 2001 From: Brinda Santh Date: Mon, 22 Jul 2019 13:09:18 -0400 Subject: Clean restconf duplicate models and Implementation. Change-Id: Id439ac5ded631aac0ee7fc69846ebe9bca650bb2 Issue-ID: CCSDK-1499 Signed-off-by: Brinda Santh --- .../internal/scripts/InternalSimpleRestconf.kt | 77 ++++++++++++++++++++++ .../restconf/executor/ComponentRestconfExecutor.kt | 73 -------------------- .../restconf/executor/RestconfComponentFunction.kt | 68 ------------------- .../executor/RestconfExecutorExtensions.kt | 69 ++++++++++++++++++- .../kotlin/scripts/InternalSimpleRestconf.cba.kts | 76 --------------------- .../executor/ComponentRestconfExecutorTest.kt | 19 +++--- 6 files changed, 153 insertions(+), 229 deletions(-) create mode 100644 ms/blueprintsprocessor/functions/restconf-executor/src/main/kotlin/internal/scripts/InternalSimpleRestconf.kt delete mode 100644 ms/blueprintsprocessor/functions/restconf-executor/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/functions/restconf/executor/ComponentRestconfExecutor.kt delete mode 100644 ms/blueprintsprocessor/functions/restconf-executor/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/functions/restconf/executor/RestconfComponentFunction.kt delete mode 100644 ms/blueprintsprocessor/functions/restconf-executor/src/main/kotlin/scripts/InternalSimpleRestconf.cba.kts (limited to 'ms/blueprintsprocessor/functions/restconf-executor/src') diff --git a/ms/blueprintsprocessor/functions/restconf-executor/src/main/kotlin/internal/scripts/InternalSimpleRestconf.kt b/ms/blueprintsprocessor/functions/restconf-executor/src/main/kotlin/internal/scripts/InternalSimpleRestconf.kt new file mode 100644 index 000000000..c4553abd6 --- /dev/null +++ b/ms/blueprintsprocessor/functions/restconf-executor/src/main/kotlin/internal/scripts/InternalSimpleRestconf.kt @@ -0,0 +1,77 @@ +/* + * 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. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +@file:Suppress("unused") +package internal.scripts + +import org.onap.ccsdk.cds.blueprintsprocessor.core.api.data.ExecutionServiceInput +import org.onap.ccsdk.cds.blueprintsprocessor.services.execution.AbstractScriptComponentFunction +import org.slf4j.LoggerFactory + +open class EditConfigure : AbstractScriptComponentFunction() { + + val log = LoggerFactory.getLogger(EditConfigure::class.java)!! + + override fun getName(): String { + return "EditConfigure" + } + + override suspend fun processNB(executionRequest: ExecutionServiceInput) { + //val webClientService = restClientService("odlparent") + TODO("not implemented") //To change body of created functions use File | Settings | File Templates. + } + + override suspend fun recoverNB(runtimeException: RuntimeException, executionRequest: ExecutionServiceInput) { + TODO("not implemented") //To change body of created functions use File | Settings | File Templates. + } +} + +open class MountNEditConfigure : AbstractScriptComponentFunction() { + + val log = LoggerFactory.getLogger(MountNEditConfigure::class.java)!! + + override fun getName(): String { + return "MountNEditConfigure" + } + + override suspend fun processNB(executionRequest: ExecutionServiceInput) { + log.info("Processing Restconf Request : ${executionRequest.payload}") + } + + override suspend fun recoverNB(runtimeException: RuntimeException, executionRequest: ExecutionServiceInput) { + addError("failed in restconf execution : ${runtimeException.message}") + } + +} + +/** + * This is for used for Testing only + */ +open class TestRestconfConfigure : AbstractScriptComponentFunction() { + + val log = LoggerFactory.getLogger(TestRestconfConfigure::class.java)!! + + override fun getName(): String { + return "TestRestconfConfigure" + } + + override suspend fun processNB(executionRequest: ExecutionServiceInput) { + log.info("processing request..") + } + + override suspend fun recoverNB(runtimeException: RuntimeException, executionRequest: ExecutionServiceInput) { + log.info("recovering..") + } +} diff --git a/ms/blueprintsprocessor/functions/restconf-executor/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/functions/restconf/executor/ComponentRestconfExecutor.kt b/ms/blueprintsprocessor/functions/restconf-executor/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/functions/restconf/executor/ComponentRestconfExecutor.kt deleted file mode 100644 index 53828d769..000000000 --- a/ms/blueprintsprocessor/functions/restconf-executor/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/functions/restconf/executor/ComponentRestconfExecutor.kt +++ /dev/null @@ -1,73 +0,0 @@ -/* - * Copyright © 2018 IBM. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.onap.ccsdk.cds.blueprintsprocessor.functions.restconf.executor - -import com.fasterxml.jackson.databind.node.ArrayNode -import org.onap.ccsdk.cds.blueprintsprocessor.core.api.data.ExecutionServiceInput -import org.onap.ccsdk.cds.blueprintsprocessor.functions.resource.resolution.ResourceResolutionConstants -import org.onap.ccsdk.cds.blueprintsprocessor.rest.RestLibConstants -import org.onap.ccsdk.cds.blueprintsprocessor.services.execution.AbstractComponentFunction -import org.onap.ccsdk.cds.blueprintsprocessor.services.execution.ComponentFunctionScriptingService -import org.onap.ccsdk.cds.controllerblueprints.core.getAsString -import org.springframework.beans.factory.config.ConfigurableBeanFactory -import org.springframework.context.annotation.Scope -import org.springframework.stereotype.Component - -@Component("component-restconf-executor") -@Scope(value = ConfigurableBeanFactory.SCOPE_PROTOTYPE) -open class ComponentRestconfExecutor(private var componentFunctionScriptingService: ComponentFunctionScriptingService) : - AbstractComponentFunction() { - - lateinit var scriptComponent: RestconfComponentFunction - - companion object { - const val SCRIPT_TYPE = "script-type" - const val SCRIPT_CLASS_REFERENCE = "script-class-reference" - const val INSTANCE_DEPENDENCIES = "instance-dependencies" - } - - override suspend fun processNB(executionRequest: ExecutionServiceInput) { - - val scriptType = operationInputs.getAsString(SCRIPT_TYPE) - val scriptClassReference = operationInputs.getAsString(SCRIPT_CLASS_REFERENCE) - val instanceDependenciesNode = operationInputs.get(INSTANCE_DEPENDENCIES) as? ArrayNode - - val scriptDependencies: MutableList = arrayListOf() - scriptDependencies.add(RestLibConstants.SERVICE_BLUEPRINT_REST_LIB_PROPERTY) - scriptDependencies.add(ResourceResolutionConstants.SERVICE_RESOURCE_RESOLUTION) - - instanceDependenciesNode?.forEach { instanceName -> - scriptDependencies.add(instanceName.textValue()) - } - /** - * Populate the Script Instance based on the Type - */ - scriptComponent = componentFunctionScriptingService - .scriptInstance(this, scriptType, - scriptClassReference, scriptDependencies) - - checkNotNull(scriptComponent) { "failed to get restconf script component" } - - // Handles both script processing and error handling - scriptComponent.executeScript(executionServiceInput) - } - - override suspend fun recoverNB(runtimeException: RuntimeException, executionRequest: ExecutionServiceInput) { - bluePrintRuntimeService.getBluePrintError() - .addError("Failed in ComponentRestconfExecutor : ${runtimeException.message}") - } -} \ No newline at end of file diff --git a/ms/blueprintsprocessor/functions/restconf-executor/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/functions/restconf/executor/RestconfComponentFunction.kt b/ms/blueprintsprocessor/functions/restconf-executor/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/functions/restconf/executor/RestconfComponentFunction.kt deleted file mode 100644 index ede833cfb..000000000 --- a/ms/blueprintsprocessor/functions/restconf-executor/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/functions/restconf/executor/RestconfComponentFunction.kt +++ /dev/null @@ -1,68 +0,0 @@ -/* - * Copyright © 2018 IBM. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -@file:Suppress("unused") - -package org.onap.ccsdk.cds.blueprintsprocessor.functions.restconf.executor - -import kotlinx.coroutines.runBlocking -import org.onap.ccsdk.cds.blueprintsprocessor.functions.resource.resolution.ResourceResolutionConstants -import org.onap.ccsdk.cds.blueprintsprocessor.functions.resource.resolution.ResourceResolutionService -import org.onap.ccsdk.cds.blueprintsprocessor.rest.RestLibConstants -import org.onap.ccsdk.cds.blueprintsprocessor.rest.service.BluePrintRestLibPropertyService -import org.onap.ccsdk.cds.blueprintsprocessor.rest.service.BlueprintWebClientService -import org.onap.ccsdk.cds.blueprintsprocessor.services.execution.AbstractScriptComponentFunction - -@Deprecated("Methods defined as extension function of AbstractComponentFunction") -abstract class RestconfComponentFunction : AbstractScriptComponentFunction() { - - @Deprecated("Defined in AbstractScriptComponentFunction extension class") - open fun bluePrintRestLibPropertyService(): BluePrintRestLibPropertyService = - functionDependencyInstanceAsType(RestLibConstants.SERVICE_BLUEPRINT_REST_LIB_PROPERTY) - - @Deprecated(" Use resourceResolutionService method directly", - replaceWith = ReplaceWith("resourceResolutionService()", - "org.onap.ccsdk.cds.blueprintsprocessor.functions.resource.resolution.resourceResolutionService")) - open fun resourceResolutionService(): ResourceResolutionService = - functionDependencyInstanceAsType(ResourceResolutionConstants.SERVICE_RESOURCE_RESOLUTION) - - - @Deprecated("Defined in AbstractScriptComponentFunction extension class") - fun restClientService(selector: String): BlueprintWebClientService { - return bluePrintRestLibPropertyService().blueprintWebClientService(selector) - } - - @Deprecated(" Use storedContentFromResolvedArtifact method directly", - replaceWith = ReplaceWith("storedContentFromResolvedArtifact(resolutionKey, artifactName)", - "org.onap.ccsdk.cds.blueprintsprocessor.functions.resource.resolution.storedContentFromResolvedArtifact")) - fun resolveFromDatabase(resolutionKey: String, artifactName: String): String = runBlocking { - resourceResolutionService().resolveFromDatabase(bluePrintRuntimeService, artifactName, resolutionKey) - } - - @Deprecated(" Use artifactContent method directly", - replaceWith = ReplaceWith("artifactContent(artifactName)", - "org.onap.ccsdk.cds.blueprintsprocessor.services.execution.artifactContent")) - fun generateMessage(artifactName: String): String { - return bluePrintRuntimeService.resolveNodeTemplateArtifact(nodeTemplateName, artifactName) - } - - @Deprecated(" Use contentFromResolvedArtifact method directly", - replaceWith = ReplaceWith("resolveAndGenerateMessage(artifactPrefix)", - "org.onap.ccsdk.cds.blueprintsprocessor.functions.resource.resolution.resolveAndGenerateMessage")) - fun resolveAndGenerateMessage(artifactPrefix: String): String = runBlocking { - resourceResolutionService().resolveResources(bluePrintRuntimeService, nodeTemplateName, - artifactPrefix, mapOf()) - } -} \ No newline at end of file diff --git a/ms/blueprintsprocessor/functions/restconf-executor/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/functions/restconf/executor/RestconfExecutorExtensions.kt b/ms/blueprintsprocessor/functions/restconf-executor/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/functions/restconf/executor/RestconfExecutorExtensions.kt index 6e0c3b612..49fd025d9 100644 --- a/ms/blueprintsprocessor/functions/restconf-executor/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/functions/restconf/executor/RestconfExecutorExtensions.kt +++ b/ms/blueprintsprocessor/functions/restconf-executor/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/functions/restconf/executor/RestconfExecutorExtensions.kt @@ -17,21 +17,86 @@ package org.onap.ccsdk.cds.blueprintsprocessor.functions.restconf.executor +import org.hibernate.annotations.common.util.impl.LoggerFactory +import org.onap.ccsdk.cds.blueprintsprocessor.rest.restClientService +import org.onap.ccsdk.cds.blueprintsprocessor.rest.service.BlueprintWebClientService +import org.onap.ccsdk.cds.blueprintsprocessor.services.execution.AbstractScriptComponentFunction +import org.onap.ccsdk.cds.controllerblueprints.core.BluePrintRetryException +import org.onap.ccsdk.cds.controllerblueprints.core.service.BluePrintDependencyService + /** * Register the Restconf module exposed dependency */ +val log = LoggerFactory.logger(AbstractScriptComponentFunction::class.java)!! + +fun AbstractScriptComponentFunction.restconfClientService(selector: String): BlueprintWebClientService { + return BluePrintDependencyService.restClientService(selector) +} /** * Generic Mount function */ +suspend fun AbstractScriptComponentFunction.restconfMountDevice(webClientService: BlueprintWebClientService, + deviceId: String, payload: Any) { + val headers: MutableMap = hashMapOf() + headers["Content-Type"] = "application/xml" + val mountUrl = "restconf/config/network-topology:network-topology/topology/topology-netconf/node/$deviceId" + log.info("sending mount request, url: $mountUrl") + webClientService.exchangeNB("PUT", mountUrl, payload, headers) + + /** Check device has mounted */ + val mountCheckUrl = "restconf/operational/network-topology:network-topology/topology/topology-netconf/node/$deviceId" + + val expectedResult = """"netconf-node-topology:connection-status":"connected"""" + val mountCheckExecutionBlock: suspend (Int) -> String = { tryCount: Int -> + val result = webClientService.exchangeNB("GET", mountCheckUrl, "") + if (result.body.contains(expectedResult)) { + log.info("NF was mounted successfully on ODL") + result.body + } else { + throw BluePrintRetryException("Wait for device($deviceId) to mount") + } + } + + log.info("url for ODL status check: $mountCheckUrl") + webClientService.retry(10, 0, 1000, mountCheckExecutionBlock) +} /** * Generic Configure function */ +suspend fun AbstractScriptComponentFunction.restconfApplyDeviceConfig(webClientService: BlueprintWebClientService, + deviceId: String, configletResourcePath: String, + configletToApply: Any, + additionalHeaders: Map?) { + log.debug("headers: $additionalHeaders") + log.info("configuring device: $deviceId, Configlet: $configletToApply") + val applyConfigUrl = "restconf/config/network-topology:network-topology/topology/topology-netconf/node/" + + "$deviceId/$configletResourcePath" + val result = webClientService.exchangeNB("PATCH", applyConfigUrl, configletToApply, additionalHeaders) + log.info("Configuration application result: $result") +} + + +suspend fun AbstractScriptComponentFunction.restconfDeviceConfig(webClientService: BlueprintWebClientService, + deviceId: String, configletResourcePath: String) + : BlueprintWebClientService.WebClientResponse { + + val configPathUrl = "restconf/config/network-topology:network-topology/topology/topology-netconf/node/" + + "$deviceId/$configletResourcePath" + log.debug("sending GET request, url: $configPathUrl") + return webClientService.exchangeNB("GET", configPathUrl, "") +} /** - * Generic Unmount function - */ \ No newline at end of file + * Generic UnMount function + */ +suspend fun AbstractScriptComponentFunction.restconfUnMountDevice(webClientService: BlueprintWebClientService, + deviceId: String, payload: String) { + val unMountUrl = "restconf/config/network-topology:network-topology/topology/topology-netconf/node/$deviceId" + log.info("sending unMount request, url: $unMountUrl") + webClientService.exchangeNB("DELETE", unMountUrl, "") +} \ No newline at end of file diff --git a/ms/blueprintsprocessor/functions/restconf-executor/src/main/kotlin/scripts/InternalSimpleRestconf.cba.kts b/ms/blueprintsprocessor/functions/restconf-executor/src/main/kotlin/scripts/InternalSimpleRestconf.cba.kts deleted file mode 100644 index 4ab7ddc4b..000000000 --- a/ms/blueprintsprocessor/functions/restconf-executor/src/main/kotlin/scripts/InternalSimpleRestconf.cba.kts +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Copyright © 2018 IBM. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -@file:Suppress("unused") - -import org.onap.ccsdk.cds.blueprintsprocessor.core.api.data.ExecutionServiceInput -import org.onap.ccsdk.cds.blueprintsprocessor.functions.restconf.executor.RestconfComponentFunction -import org.slf4j.LoggerFactory - -open class EditConfigure : RestconfComponentFunction() { - - val log = LoggerFactory.getLogger(EditConfigure::class.java)!! - - override fun getName(): String { - return "EditConfigure" - } - - override suspend fun processNB(executionRequest: ExecutionServiceInput) { - //val webClientService = restClientService("odlparent") - TODO("not implemented") //To change body of created functions use File | Settings | File Templates. - } - - override suspend fun recoverNB(runtimeException: RuntimeException, executionRequest: ExecutionServiceInput) { - TODO("not implemented") //To change body of created functions use File | Settings | File Templates. - } -} - -open class MountNEditConfigure : RestconfComponentFunction() { - - val log = LoggerFactory.getLogger(MountNEditConfigure::class.java)!! - - override fun getName(): String { - return "MountNEditConfigure" - } - - override suspend fun processNB(executionRequest: ExecutionServiceInput) { - log.info("Processing Restconf Request : ${executionRequest.payload}") - } - - override suspend fun recoverNB(runtimeException: RuntimeException, executionRequest: ExecutionServiceInput) { - addError("failed in restconf execution : ${runtimeException.message}") - } - -} - -/** - * This is for used for Testing only - */ -open class TestRestconfConfigure : RestconfComponentFunction() { - - val log = LoggerFactory.getLogger(TestRestconfConfigure::class.java)!! - - override fun getName(): String { - return "TestRestconfConfigure" - } - - override suspend fun processNB(executionRequest: ExecutionServiceInput) { - log.info("processing request..") - } - - override suspend fun recoverNB(runtimeException: RuntimeException, executionRequest: ExecutionServiceInput) { - log.info("recovering..") - } -} diff --git a/ms/blueprintsprocessor/functions/restconf-executor/src/test/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/functions/restconf/executor/ComponentRestconfExecutorTest.kt b/ms/blueprintsprocessor/functions/restconf-executor/src/test/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/functions/restconf/executor/ComponentRestconfExecutorTest.kt index a651dad52..fb47b6ad1 100644 --- a/ms/blueprintsprocessor/functions/restconf-executor/src/test/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/functions/restconf/executor/ComponentRestconfExecutorTest.kt +++ b/ms/blueprintsprocessor/functions/restconf-executor/src/test/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/functions/restconf/executor/ComponentRestconfExecutorTest.kt @@ -17,7 +17,6 @@ package org.onap.ccsdk.cds.blueprintsprocessor.functions.restconf.executor import com.fasterxml.jackson.databind.JsonNode -import com.fasterxml.jackson.databind.node.ArrayNode import com.fasterxml.jackson.databind.node.ObjectNode import io.mockk.every import io.mockk.mockk @@ -28,6 +27,7 @@ import org.onap.ccsdk.cds.blueprintsprocessor.core.api.data.ActionIdentifiers import org.onap.ccsdk.cds.blueprintsprocessor.core.api.data.CommonHeader import org.onap.ccsdk.cds.blueprintsprocessor.core.api.data.ExecutionServiceInput import org.onap.ccsdk.cds.blueprintsprocessor.core.api.data.StepData +import org.onap.ccsdk.cds.blueprintsprocessor.services.execution.ComponentScriptExecutor import org.onap.ccsdk.cds.controllerblueprints.core.BluePrintConstants import org.onap.ccsdk.cds.controllerblueprints.core.asJsonPrimitive import org.onap.ccsdk.cds.controllerblueprints.core.service.BluePrintContext @@ -56,12 +56,12 @@ import kotlin.test.assertNotNull class ComponentRestconfExecutorTest { @Autowired - lateinit var componentRestconfExecutor: ComponentRestconfExecutor + lateinit var componentScriptExecutor: ComponentScriptExecutor @Test fun `test Restconf Component Instance`() { runBlocking { - assertNotNull(componentRestconfExecutor, "failed to get ComponentRestconfExecutor instance") + assertNotNull(componentScriptExecutor, "failed to get ComponentRestconfExecutor instance") val executionServiceInput = ExecutionServiceInput().apply { commonHeader = CommonHeader().apply { requestId = "1234" @@ -72,17 +72,16 @@ class ComponentRestconfExecutorTest { payload = JacksonUtils.jsonNode("{}") as ObjectNode } val bluePrintRuntime = mockk("1234") - componentRestconfExecutor.bluePrintRuntimeService = bluePrintRuntime - componentRestconfExecutor.stepName = "sample-step" + componentScriptExecutor.bluePrintRuntimeService = bluePrintRuntime + componentScriptExecutor.stepName = "sample-step" val operationInputs = hashMapOf() operationInputs[BluePrintConstants.PROPERTY_CURRENT_NODE_TEMPLATE] = "activate-restconf".asJsonPrimitive() operationInputs[BluePrintConstants.PROPERTY_CURRENT_INTERFACE] = "interfaceName".asJsonPrimitive() operationInputs[BluePrintConstants.PROPERTY_CURRENT_OPERATION] = "operationName".asJsonPrimitive() - operationInputs[ComponentRestconfExecutor.SCRIPT_TYPE] = BluePrintConstants.SCRIPT_INTERNAL.asJsonPrimitive() - operationInputs[ComponentRestconfExecutor.SCRIPT_CLASS_REFERENCE] = - "InternalSimpleRestconf_cba\$TestRestconfConfigure".asJsonPrimitive() - operationInputs[ComponentRestconfExecutor.INSTANCE_DEPENDENCIES] = JacksonUtils.jsonNode("[]") as ArrayNode + operationInputs[ComponentScriptExecutor.SCRIPT_TYPE] = BluePrintConstants.SCRIPT_INTERNAL.asJsonPrimitive() + operationInputs[ComponentScriptExecutor.SCRIPT_CLASS_REFERENCE] = + "internal.scripts.TestRestconfConfigure".asJsonPrimitive() val stepInputData = StepData().apply { name = "activate-restconf" @@ -103,7 +102,7 @@ class ComponentRestconfExecutorTest { "interfaceName", "operationName") } returns operationOutputs - componentRestconfExecutor.applyNB(executionServiceInput) + componentScriptExecutor.applyNB(executionServiceInput) } } } \ No newline at end of file -- cgit 1.2.3-korg