1 package org.onap.ccsdk.apps.blueprintsprocessor.functions.resource.resolution
\r
3 import com.fasterxml.jackson.databind.JsonNode
\r
4 import org.onap.ccsdk.apps.controllerblueprints.core.BluePrintProcessorException
\r
5 import org.onap.ccsdk.apps.controllerblueprints.core.service.BluePrintContext
\r
6 import org.onap.ccsdk.apps.controllerblueprints.core.service.DefaultBluePrintRuntimeService
\r
8 class ResourceAssignmentRuntimeService(private var id: String, private var bluePrintContext: BluePrintContext)
\r
9 : DefaultBluePrintRuntimeService(id, bluePrintContext){
\r
11 private var resourceResolutionStore: MutableMap<String, JsonNode> = hashMapOf()
\r
13 override fun getExecutionContext(): MutableMap<String, JsonNode> {
\r
14 return resourceResolutionStore
\r
17 @Suppress("UNCHECKED_CAST")
\r
18 override fun setExecutionContext(executionContext: MutableMap<String, JsonNode>) {
\r
19 this.resourceResolutionStore = executionContext
\r
22 override fun put(key: String, value: JsonNode) {
\r
23 resourceResolutionStore[key] = value
\r
26 override fun get(key: String): JsonNode {
\r
27 return resourceResolutionStore[key] ?: throw BluePrintProcessorException("failed to get execution property($key)")
\r
30 override fun check(key: String): Boolean {
\r
31 return resourceResolutionStore.containsKey(key)
\r
34 override fun cleanRuntime() {
\r
35 resourceResolutionStore.clear()
\r
38 private fun getJsonNode(key: String): JsonNode {
\r
42 override fun getAsString(key: String): String? {
\r
43 return get(key).asText()
\r
46 override fun getAsBoolean(key: String): Boolean? {
\r
47 return get(key).asBoolean()
\r
50 override fun getAsInt(key: String): Int? {
\r
51 return get(key).asInt()
\r
54 override fun getAsDouble(key: String): Double? {
\r
55 return get(key).asDouble()
\r