diff options
author | 2019-12-31 10:53:59 -0500 | |
---|---|---|
committer | 2019-12-31 10:53:59 -0500 | |
commit | ba75d2fad2b0111a510f4ee4cc87e658fb32ac4b (patch) | |
tree | 92c50b5bea79bb6c424aab6b0ac2e805a9e36e07 /ms/blueprintsprocessor/modules/services/execution-service/src/main | |
parent | 1fdaf4953daf15970afe6ee10491dfa2d0a76753 (diff) |
Flexible DSL Types and Templates definition.
Easy search definitions Types and Templates inside ServiceTemplate DSL builder.
Unit test modifications to support this change.
Issue-ID: CCSDK-1054
Signed-off-by: Brinda Santh <bs2796@att.com>
Change-Id: Ie944ff5f75f80c852555306e1a4e0fa7f5b803d7
Diffstat (limited to 'ms/blueprintsprocessor/modules/services/execution-service/src/main')
2 files changed, 46 insertions, 7 deletions
diff --git a/ms/blueprintsprocessor/modules/services/execution-service/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/services/execution/ComponentRemoteScriptExecutorDSL.kt b/ms/blueprintsprocessor/modules/services/execution-service/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/services/execution/ComponentRemoteScriptExecutorDSL.kt index 0210e88ea..7bb071501 100644 --- a/ms/blueprintsprocessor/modules/services/execution-service/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/services/execution/ComponentRemoteScriptExecutorDSL.kt +++ b/ms/blueprintsprocessor/modules/services/execution-service/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/services/execution/ComponentRemoteScriptExecutorDSL.kt @@ -25,9 +25,16 @@ import org.onap.ccsdk.cds.controllerblueprints.core.data.NodeTemplate import org.onap.ccsdk.cds.controllerblueprints.core.data.NodeType import org.onap.ccsdk.cds.controllerblueprints.core.dsl.AbstractNodeTemplateOperationImplBuilder import org.onap.ccsdk.cds.controllerblueprints.core.dsl.PropertiesAssignmentBuilder +import org.onap.ccsdk.cds.controllerblueprints.core.dsl.ServiceTemplateBuilder +import org.onap.ccsdk.cds.controllerblueprints.core.dsl.TopologyTemplateBuilder import org.onap.ccsdk.cds.controllerblueprints.core.dsl.nodeType /** Component Extensions **/ +fun ServiceTemplateBuilder.nodeTypeComponentRemoteScriptExecutor() { + val nodeType = BluePrintTypes.nodeTypeComponentRemoteScriptExecutor() + if (this.nodeTypes == null) this.nodeTypes = hashMapOf() + this.nodeTypes!![nodeType.id!!] = nodeType +} fun BluePrintTypes.nodeTypeComponentRemoteScriptExecutor(): NodeType { return nodeType( @@ -86,12 +93,24 @@ fun BluePrintTypes.nodeTypeComponentRemoteScriptExecutor(): NodeType { } /** Component Builder */ +fun TopologyTemplateBuilder.nodeTemplateComponentRemoteScriptExecutor( + id: String, + description: String, + block: ComponentRemoteScriptExecutorNodeTemplateBuilder.() -> Unit +) { + val nodeTemplate = BluePrintTypes.nodeTemplateComponentRemoteScriptExecutor( + id, description, + block + ) + if (nodeTemplates == null) nodeTemplates = hashMapOf() + nodeTemplates!![nodeTemplate.id!!] = nodeTemplate +} + fun BluePrintTypes.nodeTemplateComponentRemoteScriptExecutor( id: String, description: String, block: ComponentRemoteScriptExecutorNodeTemplateBuilder.() -> Unit -): - NodeTemplate { +): NodeTemplate { return ComponentRemoteScriptExecutorNodeTemplateBuilder(id, description).apply(block).build() } diff --git a/ms/blueprintsprocessor/modules/services/execution-service/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/services/execution/ComponentScriptExecutorDSL.kt b/ms/blueprintsprocessor/modules/services/execution-service/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/services/execution/ComponentScriptExecutorDSL.kt index d4ca0f487..8592ce62b 100644 --- a/ms/blueprintsprocessor/modules/services/execution-service/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/services/execution/ComponentScriptExecutorDSL.kt +++ b/ms/blueprintsprocessor/modules/services/execution-service/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/services/execution/ComponentScriptExecutorDSL.kt @@ -25,10 +25,17 @@ import org.onap.ccsdk.cds.controllerblueprints.core.data.NodeTemplate import org.onap.ccsdk.cds.controllerblueprints.core.data.NodeType import org.onap.ccsdk.cds.controllerblueprints.core.dsl.AbstractNodeTemplateOperationImplBuilder import org.onap.ccsdk.cds.controllerblueprints.core.dsl.PropertiesAssignmentBuilder +import org.onap.ccsdk.cds.controllerblueprints.core.dsl.ServiceTemplateBuilder +import org.onap.ccsdk.cds.controllerblueprints.core.dsl.TopologyTemplateBuilder import org.onap.ccsdk.cds.controllerblueprints.core.dsl.nodeType import kotlin.reflect.KClass /** Component Extensions **/ +fun ServiceTemplateBuilder.nodeTypeComponentScriptExecutor() { + val nodeType = BluePrintTypes.nodeTypeComponentScriptExecutor() + if (this.nodeTypes == null) this.nodeTypes = hashMapOf() + this.nodeTypes!![nodeType.id!!] = nodeType +} fun BluePrintTypes.nodeTypeComponentScriptExecutor(): NodeType { return nodeType( @@ -80,19 +87,31 @@ fun BluePrintTypes.nodeTypeComponentScriptExecutor(): NodeType { } /** Component Builder */ +fun TopologyTemplateBuilder.nodeTemplateComponentScriptExecutor( + id: String, + description: String, + block: ComponentScriptExecutorNodeTemplateBuilder.() -> Unit +) { + val nodeTemplate = BluePrintTypes.nodeTemplateComponentScriptExecutor( + id, description, + block + ) + if (nodeTemplates == null) nodeTemplates = hashMapOf() + nodeTemplates!![nodeTemplate.id!!] = nodeTemplate +} + fun BluePrintTypes.nodeTemplateComponentScriptExecutor( id: String, description: String, block: ComponentScriptExecutorNodeTemplateBuilder.() -> Unit -): - NodeTemplate { +): NodeTemplate { return ComponentScriptExecutorNodeTemplateBuilder(id, description).apply(block).build() } class ComponentScriptExecutorNodeTemplateBuilder(id: String, description: String) : AbstractNodeTemplateOperationImplBuilder<PropertiesAssignmentBuilder, - ComponentScriptExecutorNodeTemplateBuilder.InputsBuilder, - ComponentScriptExecutorNodeTemplateBuilder.OutputsBuilder>( + ComponentScriptExecutorNodeTemplateBuilder.InputsBuilder, + ComponentScriptExecutorNodeTemplateBuilder.OutputsBuilder>( id, "component-script-executor", "ComponentScriptExecutor", description @@ -110,7 +129,8 @@ class ComponentScriptExecutorNodeTemplateBuilder(id: String, description: String scriptClassReference(scriptClassReference.qualifiedName!!) } - fun scriptClassReference(scriptClassReference: String) = scriptClassReference(scriptClassReference.asJsonPrimitive()) + fun scriptClassReference(scriptClassReference: String) = + scriptClassReference(scriptClassReference.asJsonPrimitive()) fun scriptClassReference(scriptClassReference: JsonNode) { property(ComponentScriptExecutor.INPUT_SCRIPT_CLASS_REFERENCE, scriptClassReference) |