From df2a3d8a475d02ec842c1ca612567b106bb21843 Mon Sep 17 00:00:00 2001 From: "Muthuramalingam, Brinda Santh(bs2796)" Date: Tue, 20 Nov 2018 15:55:29 -0500 Subject: Add directed graph reterive and execution service. Change-Id: Ia31af4d14e38e6229166cda0f39fa090764ef1cb Issue-ID: CCSDK-672 Signed-off-by: Muthuramalingam, Brinda Santh(bs2796) --- .../core/service/BluePrintContext.kt | 16 ++++++++-- .../core/service/BluePrintRuntimeService.kt | 28 ++++++++++++++++-- .../Definitions/activation-blueprint.json | 6 ++-- .../Plans/CONFIG_ActivateNetconf_1.0.0.xml | 34 ++++++++++++++++++++++ 4 files changed, 76 insertions(+), 8 deletions(-) create mode 100644 components/model-catalog/blueprint-model/starter-blueprint/baseconfiguration/Plans/CONFIG_ActivateNetconf_1.0.0.xml (limited to 'components') diff --git a/components/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/service/BluePrintContext.kt b/components/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/service/BluePrintContext.kt index 4764479a..f73fb727 100644 --- a/components/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/service/BluePrintContext.kt +++ b/components/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/service/BluePrintContext.kt @@ -57,10 +57,15 @@ class BluePrintContext(val serviceTemplate: ServiceTemplate) { ?: throw BluePrintException("could't get step($stepName) for workflow($workFlowName)") } - fun workflowStepNodeTemplate(workFlowName: String, stepName: String): NodeTemplate { - val nodeTemplateName = workflowStepByName(workFlowName, stepName).target + fun workflowStepNodeTemplate(workFlowName: String, stepName: String): String { + return workflowStepByName(workFlowName, stepName).target ?: throw BluePrintException("could't get node template name for workflow($workFlowName)'s step($stepName)") - return nodeTemplateByName(nodeTemplateName) + } + + fun workflowFirstStepNodeTemplate(workFlowName: String): String { + val firstStepName = workflowByName(workFlowName).steps?.keys?.first() + ?: throw BluePrintException("could't get first step for workflow($workFlowName)") + return workflowStepNodeTemplate(workFlowName, firstStepName) } fun workflowStepFirstCallOperation(workFlowName: String, stepName: String): String { @@ -156,6 +161,11 @@ class BluePrintContext(val serviceTemplate: ServiceTemplate) { ?: throw BluePrintException("could't get NodeTemplate($nodeTemplateName)'s ArtifactDefinition($artifactName)") } + fun nodeTemplateArtifactForArtifactType(nodeTemplateName: String, artifactType: String): ArtifactDefinition { + return nodeTemplateArtifacts(nodeTemplateName)?.filter { it.value.type == artifactType }?.map { it.value }?.get(0) + ?: throw BluePrintException("could't get NodeTemplate($nodeTemplateName)'s Artifact Type($artifactType)") + } + fun nodeTemplateFirstInterface(nodeTemplateName: String): InterfaceAssignment { return nodeTemplateByName(nodeTemplateName).interfaces?.values?.first() ?: throw BluePrintException("could't get NodeTemplate($nodeTemplateName)'s first InterfaceAssignment") diff --git a/components/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/service/BluePrintRuntimeService.kt b/components/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/service/BluePrintRuntimeService.kt index 9da5b0ee..84ba1047 100644 --- a/components/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/service/BluePrintRuntimeService.kt +++ b/components/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/service/BluePrintRuntimeService.kt @@ -48,6 +48,14 @@ interface BluePrintRuntimeService { fun cleanRuntime() + fun getAsString(key: String): String? + + fun getAsBoolean(key: String): Boolean? + + fun getAsInt(key: String): Int? + + fun getAsDouble(key: String): Double? + /* Get the Node Type Definition for the Node Template, Then iterate Node Type Properties and resolve the expressing */ @@ -139,9 +147,25 @@ open class DefaultBluePrintRuntimeService(private var id: String, private var bl return get(key) } + override fun getAsString(key: String): String? { + return get(key).asText() + } + + override fun getAsBoolean(key: String): Boolean? { + return get(key).asBoolean() + } + + override fun getAsInt(key: String): Int? { + return get(key).asInt() + } + + override fun getAsDouble(key: String): Double? { + return get(key).asDouble() + } + /* - Get the Node Type Definition for the Node Template, Then iterate Node Type Properties and resolve the expressing - */ + Get the Node Type Definition for the Node Template, Then iterate Node Type Properties and resolve the expressing + */ override fun resolveNodeTemplateProperties(nodeTemplateName: String): MutableMap { log.info("resolveNodeTemplatePropertyValues for node template ({})", nodeTemplateName) val propertyAssignmentValue: MutableMap = hashMapOf() diff --git a/components/model-catalog/blueprint-model/starter-blueprint/baseconfiguration/Definitions/activation-blueprint.json b/components/model-catalog/blueprint-model/starter-blueprint/baseconfiguration/Definitions/activation-blueprint.json index 269fd0cf..9d1172fc 100644 --- a/components/model-catalog/blueprint-model/starter-blueprint/baseconfiguration/Definitions/activation-blueprint.json +++ b/components/model-catalog/blueprint-model/starter-blueprint/baseconfiguration/Definitions/activation-blueprint.json @@ -60,7 +60,7 @@ "artifacts": { "dg-activate-process": { "type": "artifact-directed-graph", - "file": "Plans/ActivateProcess.bpmn" + "file": "Plans/CONFIG_ActivateNetconf_1.0.0.xml" } } }, @@ -230,9 +230,9 @@ } }, "steps": { - "call-resource-assignment": { + "activate-process": { "description": "Netconf Activation Workflow", - "target": "resource-assignment", + "target": "activate-process", "activities": [ { "call_operation": "ResourceAssignmentComponent.process" diff --git a/components/model-catalog/blueprint-model/starter-blueprint/baseconfiguration/Plans/CONFIG_ActivateNetconf_1.0.0.xml b/components/model-catalog/blueprint-model/starter-blueprint/baseconfiguration/Plans/CONFIG_ActivateNetconf_1.0.0.xml new file mode 100644 index 00000000..d256bbd2 --- /dev/null +++ b/components/model-catalog/blueprint-model/starter-blueprint/baseconfiguration/Plans/CONFIG_ActivateNetconf_1.0.0.xml @@ -0,0 +1,34 @@ + + + + + + + + + + + + + + + + + + \ No newline at end of file -- cgit 1.2.3-korg