import org.onap.ccsdk.apps.controllerblueprints.core.data.NodeTemplate\r
import org.onap.ccsdk.apps.controllerblueprints.core.data.PropertyDefinition\r
import org.onap.ccsdk.apps.controllerblueprints.core.utils.JacksonUtils\r
+import org.onap.ccsdk.apps.controllerblueprints.core.BluePrintConstants\r
import org.slf4j.Logger\r
import org.slf4j.LoggerFactory\r
/**\r
*\r
* @author Brinda Santh\r
*/\r
-class BluePrintRuntimeService(var bluePrintContext: BluePrintContext, var context: MutableMap<String, Any> = hashMapOf()) {\r
+open class BluePrintRuntimeService(var bluePrintContext: BluePrintContext, var context: MutableMap<String, Any> = hashMapOf()) {\r
\r
private val logger: Logger = LoggerFactory.getLogger(this::class.toString())\r
\r
/*\r
Get the Node Type Definition for the Node Template, Then iterate Node Type Properties and resolve the expressing\r
*/\r
- fun resolveNodeTemplateProperties(nodeTemplateName: String): MutableMap<String, Any?> {\r
+ open fun resolveNodeTemplateProperties(nodeTemplateName: String): MutableMap<String, Any?> {\r
logger.info("resolveNodeTemplatePropertyValues for node template ({})", nodeTemplateName)\r
val propertyAssignmentValue: MutableMap<String, Any?> = hashMapOf()\r
\r
return propertyAssignmentValue\r
}\r
\r
- fun resolveNodeTemplateInterfaceOperationInputs(nodeTemplateName: String,\r
+ open fun resolveNodeTemplateInterfaceOperationInputs(nodeTemplateName: String,\r
interfaceName: String, operationName: String): MutableMap<String, Any?> {\r
logger.info("nodeTemplateInterfaceOperationInputsResolvedExpression for node template ({}),interface name ({}), " +\r
"operationName({})", nodeTemplateName, interfaceName, operationName)\r
var resolvedValue: JsonNode = NullNode.getInstance()\r
if (propertyAssignment != null) {\r
// Resolve the Expressing\r
- val propertyAssignmentExpression = PropertyAssignmentService( context, this)\r
+ val propertyAssignmentExpression = PropertyAssignmentService(context, this)\r
resolvedValue = propertyAssignmentExpression.resolveAssignmentExpression(nodeTemplateName, nodeTypePropertyName, propertyAssignment)\r
} else {\r
// Assign default value to the Operation\r
}\r
\r
\r
- fun resolveNodeTemplateInterfaceOperationOutputs(nodeTemplateName: String,\r
- interfaceName: String, operationName: String, componentContext: MutableMap<String, Any?>): Unit {\r
+ open fun resolveNodeTemplateInterfaceOperationOutputs(nodeTemplateName: String,\r
+ interfaceName: String, operationName: String, componentContext: MutableMap<String, Any?>) {\r
logger.info("nodeTemplateInterfaceOperationInputsResolvedExpression for node template ({}),interface name ({}), " +\r
"operationName({})", nodeTemplateName, interfaceName, operationName)\r
\r
}\r
}\r
\r
- fun resolveNodeTemplateArtifact(nodeTemplateName: String,\r
+ open fun resolveNodeTemplateArtifact(nodeTemplateName: String,\r
artifactName: String): String {\r
val nodeTemplate = bluePrintContext.nodeTemplateByName(nodeTemplateName)\r
\r
val artifactDefinition: ArtifactDefinition = nodeTemplate.artifacts?.get(artifactName)\r
?: throw BluePrintProcessorException(String.format("failed to get artifat definition {} from the node template"\r
, artifactName))\r
- val propertyAssignmentExpression = PropertyAssignmentService( context, this)\r
+ val propertyAssignmentExpression = PropertyAssignmentService(context, this)\r
return propertyAssignmentExpression.artifactContent(artifactDefinition)\r
}\r
\r
\r
- fun setInputValue(propertyName: String, propertyDefinition: PropertyDefinition, value: JsonNode): Unit {\r
- val path = StringBuilder(org.onap.ccsdk.apps.controllerblueprints.core.BluePrintConstants.PATH_INPUTS)\r
- .append(org.onap.ccsdk.apps.controllerblueprints.core.BluePrintConstants.PATH_DIVIDER).append(propertyName).toString()\r
+ open fun setInputValue(propertyName: String, propertyDefinition: PropertyDefinition, value: JsonNode) {\r
+ val path = StringBuilder(BluePrintConstants.PATH_INPUTS)\r
+ .append(BluePrintConstants.PATH_DIVIDER).append(propertyName).toString()\r
logger.trace("setting input path ({}), values ({})", path, value)\r
context[path] = value\r
}\r
\r
- fun setWorkflowInputValue(workflowName: String, propertyName: String, value: JsonNode): Unit {\r
- val path: String = StringBuilder(org.onap.ccsdk.apps.controllerblueprints.core.BluePrintConstants.PATH_NODE_WORKFLOWS).append(org.onap.ccsdk.apps.controllerblueprints.core.BluePrintConstants.PATH_DIVIDER).append(workflowName)\r
- .append(org.onap.ccsdk.apps.controllerblueprints.core.BluePrintConstants.PATH_DIVIDER).append(org.onap.ccsdk.apps.controllerblueprints.core.BluePrintConstants.PATH_INPUTS)\r
- .append(org.onap.ccsdk.apps.controllerblueprints.core.BluePrintConstants.PATH_DIVIDER).append(org.onap.ccsdk.apps.controllerblueprints.core.BluePrintConstants.PATH_PROPERTIES)\r
- .append(org.onap.ccsdk.apps.controllerblueprints.core.BluePrintConstants.PATH_DIVIDER).append(propertyName).toString()\r
+ open fun setWorkflowInputValue(workflowName: String, propertyName: String, value: JsonNode) {\r
+ val path: String = StringBuilder(BluePrintConstants.PATH_NODE_WORKFLOWS).append(BluePrintConstants.PATH_DIVIDER).append(workflowName)\r
+ .append(BluePrintConstants.PATH_DIVIDER).append(BluePrintConstants.PATH_INPUTS)\r
+ .append(BluePrintConstants.PATH_DIVIDER).append(BluePrintConstants.PATH_PROPERTIES)\r
+ .append(BluePrintConstants.PATH_DIVIDER).append(propertyName).toString()\r
context[path] = value\r
}\r
\r
- fun setNodeTemplatePropertyValue(nodeTemplateName: String, propertyName: String, value: JsonNode): Unit {\r
+ open fun setNodeTemplatePropertyValue(nodeTemplateName: String, propertyName: String, value: JsonNode) {\r
\r
- val path: String = StringBuilder(org.onap.ccsdk.apps.controllerblueprints.core.BluePrintConstants.PATH_NODE_TEMPLATES).append(org.onap.ccsdk.apps.controllerblueprints.core.BluePrintConstants.PATH_DIVIDER).append(nodeTemplateName)\r
- .append(org.onap.ccsdk.apps.controllerblueprints.core.BluePrintConstants.PATH_DIVIDER).append(org.onap.ccsdk.apps.controllerblueprints.core.BluePrintConstants.PATH_PROPERTIES)\r
- .append(org.onap.ccsdk.apps.controllerblueprints.core.BluePrintConstants.PATH_DIVIDER).append(propertyName).toString()\r
+ val path: String = StringBuilder(BluePrintConstants.PATH_NODE_TEMPLATES).append(BluePrintConstants.PATH_DIVIDER).append(nodeTemplateName)\r
+ .append(BluePrintConstants.PATH_DIVIDER).append(BluePrintConstants.PATH_PROPERTIES)\r
+ .append(BluePrintConstants.PATH_DIVIDER).append(propertyName).toString()\r
context[path] = value\r
}\r
\r
- fun setNodeTemplateOperationPropertyValue(nodeTemplateName: String, interfaceName: String, operationName: String, propertyName: String,\r
- value: JsonNode): Unit {\r
- val path: String = StringBuilder(org.onap.ccsdk.apps.controllerblueprints.core.BluePrintConstants.PATH_NODE_TEMPLATES).append(org.onap.ccsdk.apps.controllerblueprints.core.BluePrintConstants.PATH_DIVIDER).append(nodeTemplateName)\r
- .append(org.onap.ccsdk.apps.controllerblueprints.core.BluePrintConstants.PATH_DIVIDER).append(org.onap.ccsdk.apps.controllerblueprints.core.BluePrintConstants.PATH_INTERFACES).append(org.onap.ccsdk.apps.controllerblueprints.core.BluePrintConstants.PATH_DIVIDER).append(interfaceName)\r
- .append(org.onap.ccsdk.apps.controllerblueprints.core.BluePrintConstants.PATH_DIVIDER).append(org.onap.ccsdk.apps.controllerblueprints.core.BluePrintConstants.PATH_OPERATIONS).append(org.onap.ccsdk.apps.controllerblueprints.core.BluePrintConstants.PATH_DIVIDER).append(operationName)\r
- .append(org.onap.ccsdk.apps.controllerblueprints.core.BluePrintConstants.PATH_DIVIDER).append(org.onap.ccsdk.apps.controllerblueprints.core.BluePrintConstants.PATH_PROPERTIES)\r
- .append(org.onap.ccsdk.apps.controllerblueprints.core.BluePrintConstants.PATH_DIVIDER).append(propertyName).toString()\r
+ open fun setNodeTemplateOperationPropertyValue(nodeTemplateName: String, interfaceName: String, operationName: String, propertyName: String,\r
+ value: JsonNode) {\r
+ val path: String = StringBuilder(BluePrintConstants.PATH_NODE_TEMPLATES).append(BluePrintConstants.PATH_DIVIDER).append(nodeTemplateName)\r
+ .append(BluePrintConstants.PATH_DIVIDER).append(BluePrintConstants.PATH_INTERFACES).append(BluePrintConstants.PATH_DIVIDER).append(interfaceName)\r
+ .append(BluePrintConstants.PATH_DIVIDER).append(BluePrintConstants.PATH_OPERATIONS).append(BluePrintConstants.PATH_DIVIDER).append(operationName)\r
+ .append(BluePrintConstants.PATH_DIVIDER).append(BluePrintConstants.PATH_PROPERTIES)\r
+ .append(BluePrintConstants.PATH_DIVIDER).append(propertyName).toString()\r
logger.trace("setting operation property path ({}), values ({})", path, value)\r
context[path] = value\r
}\r
\r
- fun setNodeTemplateOperationInputValue(nodeTemplateName: String, interfaceName: String, operationName: String, propertyName: String,\r
- value: JsonNode): Unit {\r
- val path: String = StringBuilder(org.onap.ccsdk.apps.controllerblueprints.core.BluePrintConstants.PATH_NODE_TEMPLATES).append(org.onap.ccsdk.apps.controllerblueprints.core.BluePrintConstants.PATH_DIVIDER).append(nodeTemplateName)\r
- .append(org.onap.ccsdk.apps.controllerblueprints.core.BluePrintConstants.PATH_DIVIDER).append(org.onap.ccsdk.apps.controllerblueprints.core.BluePrintConstants.PATH_INTERFACES).append(interfaceName)\r
- .append(org.onap.ccsdk.apps.controllerblueprints.core.BluePrintConstants.PATH_DIVIDER).append(org.onap.ccsdk.apps.controllerblueprints.core.BluePrintConstants.PATH_OPERATIONS).append(operationName)\r
- .append(org.onap.ccsdk.apps.controllerblueprints.core.BluePrintConstants.PATH_DIVIDER).append(org.onap.ccsdk.apps.controllerblueprints.core.BluePrintConstants.PATH_INPUTS)\r
- .append(org.onap.ccsdk.apps.controllerblueprints.core.BluePrintConstants.PATH_DIVIDER).append(org.onap.ccsdk.apps.controllerblueprints.core.BluePrintConstants.PATH_PROPERTIES)\r
- .append(org.onap.ccsdk.apps.controllerblueprints.core.BluePrintConstants.PATH_DIVIDER).append(propertyName).toString()\r
+ open fun setNodeTemplateOperationInputValue(nodeTemplateName: String, interfaceName: String, operationName: String, propertyName: String,\r
+ value: JsonNode) {\r
+ val path: String = StringBuilder(BluePrintConstants.PATH_NODE_TEMPLATES).append(BluePrintConstants.PATH_DIVIDER).append(nodeTemplateName)\r
+ .append(BluePrintConstants.PATH_DIVIDER).append(BluePrintConstants.PATH_INTERFACES).append(interfaceName)\r
+ .append(BluePrintConstants.PATH_DIVIDER).append(BluePrintConstants.PATH_OPERATIONS).append(operationName)\r
+ .append(BluePrintConstants.PATH_DIVIDER).append(BluePrintConstants.PATH_INPUTS)\r
+ .append(BluePrintConstants.PATH_DIVIDER).append(BluePrintConstants.PATH_PROPERTIES)\r
+ .append(BluePrintConstants.PATH_DIVIDER).append(propertyName).toString()\r
context[path] = value\r
}\r
\r
- fun setNodeTemplateOperationOutputValue(nodeTemplateName: String, interfaceName: String, operationName: String, propertyName: String,\r
- value: JsonNode): Unit {\r
- val path: String = StringBuilder(org.onap.ccsdk.apps.controllerblueprints.core.BluePrintConstants.PATH_NODE_TEMPLATES).append(org.onap.ccsdk.apps.controllerblueprints.core.BluePrintConstants.PATH_DIVIDER).append(nodeTemplateName)\r
- .append(org.onap.ccsdk.apps.controllerblueprints.core.BluePrintConstants.PATH_DIVIDER).append(org.onap.ccsdk.apps.controllerblueprints.core.BluePrintConstants.PATH_INTERFACES).append(interfaceName)\r
- .append(org.onap.ccsdk.apps.controllerblueprints.core.BluePrintConstants.PATH_DIVIDER).append(org.onap.ccsdk.apps.controllerblueprints.core.BluePrintConstants.PATH_OPERATIONS).append(operationName)\r
- .append(org.onap.ccsdk.apps.controllerblueprints.core.BluePrintConstants.PATH_DIVIDER).append(org.onap.ccsdk.apps.controllerblueprints.core.BluePrintConstants.PATH_OUTPUTS)\r
- .append(org.onap.ccsdk.apps.controllerblueprints.core.BluePrintConstants.PATH_DIVIDER).append(org.onap.ccsdk.apps.controllerblueprints.core.BluePrintConstants.PATH_PROPERTIES)\r
- .append(org.onap.ccsdk.apps.controllerblueprints.core.BluePrintConstants.PATH_DIVIDER).append(propertyName).toString()\r
+ open fun setNodeTemplateOperationOutputValue(nodeTemplateName: String, interfaceName: String, operationName: String, propertyName: String,\r
+ value: JsonNode) {\r
+ val path: String = StringBuilder(BluePrintConstants.PATH_NODE_TEMPLATES).append(BluePrintConstants.PATH_DIVIDER).append(nodeTemplateName)\r
+ .append(BluePrintConstants.PATH_DIVIDER).append(BluePrintConstants.PATH_INTERFACES).append(interfaceName)\r
+ .append(BluePrintConstants.PATH_DIVIDER).append(BluePrintConstants.PATH_OPERATIONS).append(operationName)\r
+ .append(BluePrintConstants.PATH_DIVIDER).append(BluePrintConstants.PATH_OUTPUTS)\r
+ .append(BluePrintConstants.PATH_DIVIDER).append(BluePrintConstants.PATH_PROPERTIES)\r
+ .append(BluePrintConstants.PATH_DIVIDER).append(propertyName).toString()\r
context[path] = value\r
}\r
\r
\r
- fun getInputValue(propertyName: String): JsonNode {\r
- val path = StringBuilder(org.onap.ccsdk.apps.controllerblueprints.core.BluePrintConstants.PATH_INPUTS)\r
- .append(org.onap.ccsdk.apps.controllerblueprints.core.BluePrintConstants.PATH_DIVIDER).append(propertyName).toString()\r
+ open fun getInputValue(propertyName: String): JsonNode {\r
+ val path = StringBuilder(BluePrintConstants.PATH_INPUTS)\r
+ .append(BluePrintConstants.PATH_DIVIDER).append(propertyName).toString()\r
return context[path] as? JsonNode ?: NullNode.instance\r
}\r
\r
- fun getNodeTemplateOperationOutputValue(nodeTemplateName: String, interfaceName: String, operationName: String, propertyName: String): JsonNode {\r
- val path: String = StringBuilder(org.onap.ccsdk.apps.controllerblueprints.core.BluePrintConstants.PATH_NODE_TEMPLATES).append(org.onap.ccsdk.apps.controllerblueprints.core.BluePrintConstants.PATH_DIVIDER).append(nodeTemplateName)\r
- .append(org.onap.ccsdk.apps.controllerblueprints.core.BluePrintConstants.PATH_DIVIDER).append(org.onap.ccsdk.apps.controllerblueprints.core.BluePrintConstants.PATH_INTERFACES).append(org.onap.ccsdk.apps.controllerblueprints.core.BluePrintConstants.PATH_DIVIDER).append(interfaceName)\r
- .append(org.onap.ccsdk.apps.controllerblueprints.core.BluePrintConstants.PATH_DIVIDER).append(org.onap.ccsdk.apps.controllerblueprints.core.BluePrintConstants.PATH_OPERATIONS).append(org.onap.ccsdk.apps.controllerblueprints.core.BluePrintConstants.PATH_DIVIDER).append(operationName)\r
- .append(org.onap.ccsdk.apps.controllerblueprints.core.BluePrintConstants.PATH_DIVIDER).append(org.onap.ccsdk.apps.controllerblueprints.core.BluePrintConstants.PATH_PROPERTIES)\r
- .append(org.onap.ccsdk.apps.controllerblueprints.core.BluePrintConstants.PATH_DIVIDER).append(propertyName).toString()\r
+ open fun getNodeTemplateOperationOutputValue(nodeTemplateName: String, interfaceName: String, operationName: String, propertyName: String): JsonNode {\r
+ val path: String = StringBuilder(BluePrintConstants.PATH_NODE_TEMPLATES).append(BluePrintConstants.PATH_DIVIDER).append(nodeTemplateName)\r
+ .append(BluePrintConstants.PATH_DIVIDER).append(BluePrintConstants.PATH_INTERFACES).append(BluePrintConstants.PATH_DIVIDER).append(interfaceName)\r
+ .append(BluePrintConstants.PATH_DIVIDER).append(BluePrintConstants.PATH_OPERATIONS).append(BluePrintConstants.PATH_DIVIDER).append(operationName)\r
+ .append(BluePrintConstants.PATH_DIVIDER).append(BluePrintConstants.PATH_PROPERTIES)\r
+ .append(BluePrintConstants.PATH_DIVIDER).append(propertyName).toString()\r
return context[path] as JsonNode\r
}\r
\r
- fun getPropertyValue(nodeTemplateName: String, propertyName: String): JsonNode? {\r
- val path: String = StringBuilder(org.onap.ccsdk.apps.controllerblueprints.core.BluePrintConstants.PATH_NODE_TEMPLATES).append(org.onap.ccsdk.apps.controllerblueprints.core.BluePrintConstants.PATH_DIVIDER).append(nodeTemplateName)\r
- .append(org.onap.ccsdk.apps.controllerblueprints.core.BluePrintConstants.PATH_DIVIDER).append(org.onap.ccsdk.apps.controllerblueprints.core.BluePrintConstants.PATH_PROPERTIES)\r
- .append(org.onap.ccsdk.apps.controllerblueprints.core.BluePrintConstants.PATH_DIVIDER).append(propertyName).toString()\r
+ open fun getPropertyValue(nodeTemplateName: String, propertyName: String): JsonNode? {\r
+ val path: String = StringBuilder(BluePrintConstants.PATH_NODE_TEMPLATES).append(BluePrintConstants.PATH_DIVIDER).append(nodeTemplateName)\r
+ .append(BluePrintConstants.PATH_DIVIDER).append(BluePrintConstants.PATH_PROPERTIES)\r
+ .append(BluePrintConstants.PATH_DIVIDER).append(propertyName).toString()\r
return context[path] as JsonNode\r
}\r
\r
- fun getRequirementPropertyValue(nodeTemplateName: String, requirementName: String, propertyName: String): JsonNode? {\r
- val path: String = StringBuilder(org.onap.ccsdk.apps.controllerblueprints.core.BluePrintConstants.PATH_NODE_TEMPLATES).append(org.onap.ccsdk.apps.controllerblueprints.core.BluePrintConstants.PATH_DIVIDER).append(nodeTemplateName)\r
- .append(org.onap.ccsdk.apps.controllerblueprints.core.BluePrintConstants.PATH_DIVIDER).append(org.onap.ccsdk.apps.controllerblueprints.core.BluePrintConstants.PATH_REQUIREMENTS).append(requirementName)\r
- .append(org.onap.ccsdk.apps.controllerblueprints.core.BluePrintConstants.PATH_DIVIDER).append(org.onap.ccsdk.apps.controllerblueprints.core.BluePrintConstants.PATH_PROPERTIES)\r
- .append(org.onap.ccsdk.apps.controllerblueprints.core.BluePrintConstants.PATH_DIVIDER).append(propertyName).toString()\r
+ open fun getRequirementPropertyValue(nodeTemplateName: String, requirementName: String, propertyName: String): JsonNode? {\r
+ val path: String = StringBuilder(BluePrintConstants.PATH_NODE_TEMPLATES).append(BluePrintConstants.PATH_DIVIDER).append(nodeTemplateName)\r
+ .append(BluePrintConstants.PATH_DIVIDER).append(BluePrintConstants.PATH_REQUIREMENTS).append(requirementName)\r
+ .append(BluePrintConstants.PATH_DIVIDER).append(BluePrintConstants.PATH_PROPERTIES)\r
+ .append(BluePrintConstants.PATH_DIVIDER).append(propertyName).toString()\r
return context[path] as JsonNode\r
}\r
\r
- fun getCapabilityPropertyValue(nodeTemplateName: String, capabilityName: String, propertyName: String): JsonNode? {\r
- val path: String = StringBuilder(org.onap.ccsdk.apps.controllerblueprints.core.BluePrintConstants.PATH_NODE_TEMPLATES).append(org.onap.ccsdk.apps.controllerblueprints.core.BluePrintConstants.PATH_DIVIDER).append(nodeTemplateName)\r
- .append(org.onap.ccsdk.apps.controllerblueprints.core.BluePrintConstants.PATH_DIVIDER).append(org.onap.ccsdk.apps.controllerblueprints.core.BluePrintConstants.PATH_CAPABILITIES).append(capabilityName)\r
- .append(org.onap.ccsdk.apps.controllerblueprints.core.BluePrintConstants.PATH_DIVIDER).append(org.onap.ccsdk.apps.controllerblueprints.core.BluePrintConstants.PATH_PROPERTIES)\r
- .append(org.onap.ccsdk.apps.controllerblueprints.core.BluePrintConstants.PATH_DIVIDER).append(propertyName).toString()\r
+ open fun getCapabilityPropertyValue(nodeTemplateName: String, capabilityName: String, propertyName: String): JsonNode? {\r
+ val path: String = StringBuilder(BluePrintConstants.PATH_NODE_TEMPLATES).append(BluePrintConstants.PATH_DIVIDER).append(nodeTemplateName)\r
+ .append(BluePrintConstants.PATH_DIVIDER).append(BluePrintConstants.PATH_CAPABILITIES).append(capabilityName)\r
+ .append(BluePrintConstants.PATH_DIVIDER).append(BluePrintConstants.PATH_PROPERTIES)\r
+ .append(BluePrintConstants.PATH_DIVIDER).append(propertyName).toString()\r
return context[path] as JsonNode\r
}\r
\r
- fun assignInputs(jsonNode: JsonNode): Unit {\r
+ open fun assignInputs(jsonNode: JsonNode) {\r
logger.info("assignInputs from input JSON ({})", jsonNode.toString())\r
bluePrintContext.inputs?.forEach { propertyName, property ->\r
- val valueNode: JsonNode = jsonNode.at("/" + propertyName) ?: NullNode.getInstance()\r
+ val valueNode: JsonNode = jsonNode.at(BluePrintConstants.PATH_DIVIDER + propertyName)\r
+ ?: NullNode.getInstance()\r
setInputValue(propertyName, property, valueNode)\r
}\r
}\r
\r
- fun assignWorkflowInputs(workflowName: String, jsonNode: JsonNode): Unit {\r
+ open fun assignWorkflowInputs(workflowName: String, jsonNode: JsonNode) {\r
logger.info("assign workflow {} input value ({})", workflowName, jsonNode.toString())\r
bluePrintContext.workflowByName(workflowName)?.inputs?.forEach { propertyName, property ->\r
- val valueNode: JsonNode = jsonNode.at("/" + propertyName) ?: NullNode.getInstance()\r
+ val valueNode: JsonNode = jsonNode.at(BluePrintConstants.PATH_DIVIDER + propertyName)\r
+ ?: NullNode.getInstance()\r
setWorkflowInputValue(workflowName, propertyName, valueNode)\r
}\r
}\r
package org.onap.ccsdk.apps.controllerblueprints.service;\r
\r
import com.google.common.base.Preconditions;\r
+import org.apache.commons.collections.CollectionUtils;\r
import org.apache.commons.lang3.StringUtils;\r
import org.onap.ccsdk.apps.controllerblueprints.core.BluePrintException;\r
import org.onap.ccsdk.apps.controllerblueprints.core.data.PropertyDefinition;\r
\r
private ResourceDictionaryRepository resourceDictionaryRepository;\r
\r
- private ResourceDictionaryValidationService resourceDictionaryValidationService;\r
+ private ResourceDefinitionValidationService resourceDictionaryValidationService;\r
\r
/**\r
* This is a DataDictionaryService, used to save and get the Resource Mapping stored in database\r
*\r
- * @param dataDictionaryRepository\r
- * @param resourceDictionaryValidationService\r
+ * @param dataDictionaryRepository dataDictionaryRepository\r
+ * @param resourceDictionaryValidationService resourceDictionaryValidationService\r
*/\r
public ResourceDictionaryService(ResourceDictionaryRepository dataDictionaryRepository,\r
- ResourceDictionaryValidationService resourceDictionaryValidationService) {\r
+ ResourceDefinitionValidationService resourceDictionaryValidationService) {\r
this.resourceDictionaryRepository = dataDictionaryRepository;\r
this.resourceDictionaryValidationService = resourceDictionaryValidationService;\r
}\r
/**\r
* This is a getDataDictionaryByName service\r
*\r
- * @param name\r
+ * @param name name\r
* @return DataDictionary\r
- * @throws BluePrintException\r
+ * @throws BluePrintException BluePrintException\r
*/\r
public ResourceDictionary getResourceDictionaryByName(String name) throws BluePrintException {\r
- if (StringUtils.isNotBlank(name)) {\r
- return resourceDictionaryRepository.findByName(name).get();\r
+ Preconditions.checkArgument(StringUtils.isNotBlank(name), "Resource dictionary Name Information is missing.");\r
+ Optional<ResourceDictionary> resourceDictionaryDb = resourceDictionaryRepository.findByName(name);\r
+ if (resourceDictionaryDb.isPresent()) {\r
+ return resourceDictionaryDb.get();\r
} else {\r
- throw new BluePrintException("Resource Mapping Name Information is missing.");\r
+ throw new BluePrintException(String.format("couldn't get resource dictionary for name (%s)", name));\r
}\r
}\r
\r
/**\r
* This is a searchResourceDictionaryByNames service\r
*\r
- * @param names\r
+ * @param names names\r
* @return List<ResourceDictionary>\r
- * @throws BluePrintException\r
*/\r
- public List<ResourceDictionary> searchResourceDictionaryByNames(List<String> names)\r
- throws BluePrintException {\r
- if (names != null && !names.isEmpty()) {\r
- return resourceDictionaryRepository.findByNameIn(names);\r
- } else {\r
- throw new BluePrintException("No Search Information provide");\r
- }\r
+ public List<ResourceDictionary> searchResourceDictionaryByNames(List<String> names) {\r
+ Preconditions.checkArgument(CollectionUtils.isNotEmpty(names), "No Search Information provide");\r
+ return resourceDictionaryRepository.findByNameIn(names);\r
}\r
\r
/**\r
* This is a searchResourceDictionaryByTags service\r
*\r
- * @param tags\r
+ * @param tags tags\r
* @return List<ResourceDictionary>\r
- * @throws BluePrintException\r
*/\r
- public List<ResourceDictionary> searchResourceDictionaryByTags(String tags) throws BluePrintException {\r
- if (StringUtils.isNotBlank(tags)) {\r
- return resourceDictionaryRepository.findByTagsContainingIgnoreCase(tags);\r
- } else {\r
- throw new BluePrintException("No Search Information provide");\r
- }\r
+ public List<ResourceDictionary> searchResourceDictionaryByTags(String tags) {\r
+ Preconditions.checkArgument(StringUtils.isNotBlank(tags), "No search tag information provide");\r
+ return resourceDictionaryRepository.findByTagsContainingIgnoreCase(tags);\r
}\r
\r
/**\r
* This is a saveDataDictionary service\r
*\r
- * @param resourceDictionary\r
+ * @param resourceDictionary resourceDictionary\r
* @return DataDictionary\r
- * @throws BluePrintException\r
*/\r
- public ResourceDictionary saveResourceDictionary(ResourceDictionary resourceDictionary)\r
- throws BluePrintException {\r
+ public ResourceDictionary saveResourceDictionary(ResourceDictionary resourceDictionary) {\r
Preconditions.checkNotNull(resourceDictionary, "Resource Dictionary information is missing");\r
Preconditions.checkArgument(StringUtils.isNotBlank(resourceDictionary.getDefinition()),\r
"Resource Dictionary definition information is missing");\r
PropertyDefinition propertyDefinition = resourceDefinition.getProperty();\r
resourceDictionary.setDescription(propertyDefinition.getDescription());\r
resourceDictionary.setDataType(propertyDefinition.getType());\r
- if(propertyDefinition.getEntrySchema() != null){\r
+ if (propertyDefinition.getEntrySchema() != null) {\r
resourceDictionary.setEntrySchema(propertyDefinition.getEntrySchema().getType());\r
}\r
\r
/**\r
* This is a deleteResourceDictionary service\r
*\r
- * @param name\r
- * @throws BluePrintException\r
+ * @param name name\r
*/\r
- public void deleteResourceDictionary(String name) throws BluePrintException {\r
- if (name != null) {\r
- resourceDictionaryRepository.deleteByName(name);\r
- } else {\r
- throw new BluePrintException("Resource Mapping Id Information is missing.");\r
- }\r
-\r
+ public void deleteResourceDictionary(String name) {\r
+ Preconditions.checkArgument(StringUtils.isNotBlank(name), "Resource dictionary Name Information is missing.");\r
+ resourceDictionaryRepository.deleteByName(name);\r
}\r
}\r