summaryrefslogtreecommitdiffstats
path: root/ms/controllerblueprints/modules/resource-dict/src/main/kotlin
diff options
context:
space:
mode:
authorBrinda Santh <brindasanth@in.ibm.com>2018-08-28 22:46:02 -0400
committerBrinda Santh <brindasanth@in.ibm.com>2018-08-28 22:52:52 -0400
commite10032c90bfcf5c56fc3200e89b142b782eac88f (patch)
treed14002d422535e2b62c761e69b47575fd48be52d /ms/controllerblueprints/modules/resource-dict/src/main/kotlin
parentafee4df36caa1a979586c8badf160c3ff49b97a0 (diff)
Controller Blueprints Microservice
Add resource assignment json data to input property convertor utlity and their test cases. Change-Id: Ie4557048e85df38c75ac3d31ff62d4fce0662d9f Issue-ID: CCSDK-488 Signed-off-by: Brinda Santh <brindasanth@in.ibm.com>
Diffstat (limited to 'ms/controllerblueprints/modules/resource-dict/src/main/kotlin')
-rw-r--r--ms/controllerblueprints/modules/resource-dict/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/resource/dict/ResourceDictionaryConstants.kt32
-rw-r--r--ms/controllerblueprints/modules/resource-dict/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/resource/dict/service/ResourceDefinitionValidationService.kt (renamed from ms/controllerblueprints/modules/resource-dict/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/resource/dict/service/ResourceDictionaryValidationService.kt)15
-rw-r--r--ms/controllerblueprints/modules/resource-dict/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/resource/dict/utils/ResourceDictionaryUtils.kt15
3 files changed, 54 insertions, 8 deletions
diff --git a/ms/controllerblueprints/modules/resource-dict/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/resource/dict/ResourceDictionaryConstants.kt b/ms/controllerblueprints/modules/resource-dict/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/resource/dict/ResourceDictionaryConstants.kt
new file mode 100644
index 000000000..9b89f6f40
--- /dev/null
+++ b/ms/controllerblueprints/modules/resource-dict/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/resource/dict/ResourceDictionaryConstants.kt
@@ -0,0 +1,32 @@
+/*
+ * 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.apps.controllerblueprints.resource.dict
+/**
+ * ResourceDictionaryConstants
+ *
+ * @author Brinda Santh
+ */
+object ResourceDictionaryConstants {
+ const val SOURCE_INPUT = "input"
+ const val SOURCE_DEFAULT = "default"
+ const val SOURCE_DB = "db"
+
+ const val PROPERTY_TYPE = "type"
+ const val PROPERTY_INPUT_KEY_MAPPING = "input-key-mapping"
+ const val PROPERTY_OUTPUT_KEY_MAPPING = "output-key-mapping"
+ const val PROPERTY_KEY_DEPENDENCIES = "key-dependencies"
+} \ No newline at end of file
diff --git a/ms/controllerblueprints/modules/resource-dict/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/resource/dict/service/ResourceDictionaryValidationService.kt b/ms/controllerblueprints/modules/resource-dict/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/resource/dict/service/ResourceDefinitionValidationService.kt
index e4835a06d..1defa538c 100644
--- a/ms/controllerblueprints/modules/resource-dict/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/resource/dict/service/ResourceDictionaryValidationService.kt
+++ b/ms/controllerblueprints/modules/resource-dict/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/resource/dict/service/ResourceDefinitionValidationService.kt
@@ -32,24 +32,24 @@ import org.onap.ccsdk.apps.controllerblueprints.resource.dict.ResourceDefinition
import org.slf4j.LoggerFactory
import java.io.Serializable
/**
- * ResourceDictionaryValidationService.
+ * ResourceDefinitionValidationService.
*
* @author Brinda Santh
*/
-interface ResourceDictionaryValidationService : Serializable {
+interface ResourceDefinitionValidationService : Serializable {
@Throws(BluePrintException::class)
fun validate(resourceDefinition: ResourceDefinition)
}
/**
- * ResourceDictionaryDefaultValidationService.
+ * ResourceDefinitionValidationService.
*
* @author Brinda Santh
*/
-open class ResourceDictionaryDefaultValidationService(private val bluePrintRepoService: BluePrintRepoService) : ResourceDictionaryValidationService {
+open class ResourceDefinitionDefaultValidationService(private val bluePrintRepoService: BluePrintRepoService) : ResourceDefinitionValidationService {
- private val log = LoggerFactory.getLogger(ResourceDictionaryDefaultValidationService::class.java)
+ private val log = LoggerFactory.getLogger(ResourceDefinitionValidationService::class.java)
override fun validate(resourceDefinition: ResourceDefinition) {
Preconditions.checkNotNull(resourceDefinition, "Failed to get Resource Definition")
@@ -90,7 +90,7 @@ open class ResourceDictionaryDefaultValidationService(private val bluePrintRepoS
open fun checkPropertyValue(propertyDefinition: PropertyDefinition, propertyName: String, propertyAssignment: JsonNode) {
val propertyType = propertyDefinition.type
- var isValid = false
+ val isValid : Boolean
if (BluePrintTypes.validPrimitiveTypes().contains(propertyType)) {
isValid = JacksonUtils.checkJsonNodeValueOfPrimitiveType(propertyType, propertyAssignment)
@@ -102,8 +102,7 @@ open class ResourceDictionaryDefaultValidationService(private val bluePrintRepoS
bluePrintRepoService.getDataType(propertyType)
?: throw BluePrintException(format("property({}) defined of data type({}) is not in repository",
propertyName, propertyType))
-
- isValid = true;
+ isValid = true
}
check(isValid) {
diff --git a/ms/controllerblueprints/modules/resource-dict/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/resource/dict/utils/ResourceDictionaryUtils.kt b/ms/controllerblueprints/modules/resource-dict/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/resource/dict/utils/ResourceDictionaryUtils.kt
index e08c09c8e..733a443fd 100644
--- a/ms/controllerblueprints/modules/resource-dict/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/resource/dict/utils/ResourceDictionaryUtils.kt
+++ b/ms/controllerblueprints/modules/resource-dict/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/resource/dict/utils/ResourceDictionaryUtils.kt
@@ -16,8 +16,11 @@
package org.onap.ccsdk.apps.controllerblueprints.resource.dict.utils
+import com.fasterxml.jackson.databind.JsonNode
+import com.fasterxml.jackson.databind.node.NullNode
import org.apache.commons.collections.MapUtils
import org.apache.commons.lang3.StringUtils
+import org.onap.ccsdk.apps.controllerblueprints.core.BluePrintConstants
import org.onap.ccsdk.apps.controllerblueprints.core.data.NodeTemplate
import org.onap.ccsdk.apps.controllerblueprints.resource.dict.ResourceAssignment
import org.onap.ccsdk.apps.controllerblueprints.resource.dict.ResourceDefinition
@@ -59,4 +62,16 @@ object ResourceDictionaryUtils {
}
return source
}
+
+ @JvmStatic
+ fun assignInputs(data: JsonNode, context: MutableMap<String, Any>) {
+ log.trace("assignInputs from input JSON ({})", data.toString())
+ data.fields().forEach { field ->
+ val valueNode: JsonNode = data.at("/".plus(field.key)) ?: NullNode.getInstance()
+
+ val path = BluePrintConstants.PATH_INPUTS.plus(BluePrintConstants.PATH_DIVIDER).plus(field.key)
+ log.trace("setting path ({}), values ({})", path, valueNode)
+ context[path] = valueNode
+ }
+ }
} \ No newline at end of file