import org.junit.Test;\r
import org.junit.runner.RunWith;\r
import org.onap.ccsdk.apps.controllerblueprints.service.domain.ConfigModel;\r
-import org.slf4j.Logger;\r
-import org.slf4j.LoggerFactory;\r
+import com.att.eelf.configuration.EELFLogger;\r
+import com.att.eelf.configuration.EELFManager;\r
import org.springframework.beans.factory.annotation.Autowired;\r
import org.springframework.boot.test.context.SpringBootTest;\r
import org.springframework.boot.test.context.SpringBootTest.WebEnvironment;\r
@RunWith(SpringRunner.class)\r
@SpringBootTest(webEnvironment = WebEnvironment.RANDOM_PORT)\r
public class ControllerBluprintsApplicationTest {\r
- private static Logger log = LoggerFactory.getLogger(ControllerBluprintsApplicationTest.class);\r
+ private static EELFLogger log = EELFManager.getInstance().getLogger(ControllerBluprintsApplicationTest.class);\r
\r
@Autowired\r
private TestRestTemplate restTemplate;\r
const val PATH_ATTRIBUTES: String = "attributes"\r
const val PATH_ARTIFACTS: String = "artifacts"\r
\r
+ const val MODEL_DIR_MODEL_TYPE: String = "model_type"\r
+\r
const val MODEL_DEFINITION_TYPE_NODE_TYPE: String = "node_type"\r
const val MODEL_DEFINITION_TYPE_ARTIFACT_TYPE: String = "artifact_type"\r
const val MODEL_DEFINITION_TYPE_CAPABILITY_TYPE: String = "capability_type"\r
import org.onap.ccsdk.apps.controllerblueprints.core.format\r
import com.att.eelf.configuration.EELFLogger\r
import com.att.eelf.configuration.EELFManager\r
+import org.onap.ccsdk.apps.controllerblueprints.core.utils.JacksonReactorUtils\r
import java.io.Serializable\r
\r
/**\r
@Throws(BluePrintException::class)\r
fun enhance(content: String): ServiceTemplate\r
\r
- @Throws(BluePrintException::class)\r
- fun enhance(serviceTemplate: ServiceTemplate): ServiceTemplate\r
-\r
/**\r
* Read Blueprint from CSAR structure Directory\r
*/\r
@Throws(BluePrintException::class)\r
fun enhance(fileName: String, basePath: String): ServiceTemplate\r
+\r
+ @Throws(BluePrintException::class)\r
+ fun enhance(serviceTemplate: ServiceTemplate): ServiceTemplate\r
+\r
+ @Throws(BluePrintException::class)\r
+ fun enrichNodeTemplate(nodeTemplateName: String, nodeTemplate: NodeTemplate)\r
+\r
+ @Throws(BluePrintException::class)\r
+ fun enrichNodeType(nodeTypeName: String, nodeType: NodeType)\r
+\r
+ @Throws(BluePrintException::class)\r
+ fun enrichPropertyDefinition(propertyName: String, propertyDefinition: PropertyDefinition)\r
}\r
\r
open class BluePrintEnhancerDefaultService(val bluePrintRepoService: BluePrintRepoService) : BluePrintEnhancerService {\r
\r
lateinit var serviceTemplate: ServiceTemplate\r
\r
+ @Throws(BluePrintException::class)\r
override fun enhance(content: String): ServiceTemplate {\r
- TODO("not implemented") //To change body of created functions use File | Settings | File Templates.\r
+ return JacksonReactorUtils.readValueFromFile(content, ServiceTemplate::class.java).map { serviceTemplate ->\r
+ enhance(serviceTemplate!!)\r
+ }.block()!!\r
}\r
\r
+ @Throws(BluePrintException::class)\r
override fun enhance(fileName: String, basePath: String): ServiceTemplate {\r
TODO("not implemented") //To change body of created functions use File | Settings | File Templates.\r
}\r
\r
+ @Throws(BluePrintException::class)\r
override fun enhance(serviceTemplate: ServiceTemplate): ServiceTemplate {\r
this.serviceTemplate = serviceTemplate\r
initialCleanUp()\r
enrichTopologyTemplate(serviceTemplate)\r
\r
- // log.info("Enriched Blueprint :\n {}", JacksonUtils.getJson(serviceTemplate, true))\r
+ // log.info("Enriched Blueprint :\n {}", JacksonUtils.getJson(serviceTemplate, true))\r
return this.serviceTemplate\r
}\r
\r
\r
}\r
\r
+ @Throws(BluePrintException::class)\r
open fun enrichTopologyTemplate(serviceTemplate: ServiceTemplate) {\r
serviceTemplate.topologyTemplate?.let { topologyTemplate ->\r
enrichTopologyTemplateInputs(topologyTemplate)\r
}\r
}\r
\r
+ @Throws(BluePrintException::class)\r
open fun enrichTopologyTemplateInputs(topologyTemplate: TopologyTemplate) {\r
topologyTemplate.inputs?.let { inputs ->\r
enrichPropertyDefinitions(inputs)\r
}\r
\r
@Throws(BluePrintException::class)\r
- open fun enrichNodeTemplate(nodeTemplateName: String, nodeTemplate: NodeTemplate) {\r
+ override fun enrichNodeTemplate(nodeTemplateName: String, nodeTemplate: NodeTemplate) {\r
val nodeTypeName = nodeTemplate.type\r
// Get NodeType from Repo and Update Service Template\r
val nodeType = populateNodeType(nodeTypeName)\r
enrichNodeTemplateArtifactDefinition(nodeTemplateName, nodeTemplate)\r
}\r
\r
- open fun enrichNodeType(nodeTypeName: String, nodeType: NodeType) {\r
+ @Throws(BluePrintException::class)\r
+ override fun enrichNodeType(nodeTypeName: String, nodeType: NodeType) {\r
\r
// NodeType Property Definitions\r
enrichNodeTypeProperties(nodeTypeName, nodeType)\r
\r
open fun enrichNodeTypeRequirements(nodeTypeName: String, nodeType: NodeType) {\r
\r
- nodeType.requirements?.forEach { requirementDefinitionName, requirementDefinition ->\r
+ nodeType.requirements?.forEach { _, requirementDefinition ->\r
// Populate Requirement Node\r
requirementDefinition.node?.let { requirementNodeTypeName ->\r
// Get Requirement NodeType from Repo and Update Service Template\r
}\r
}\r
\r
- open fun enrichPropertyDefinition(propertyName: String, propertyDefinition: PropertyDefinition) {\r
+ @Throws(BluePrintException::class)\r
+ override fun enrichPropertyDefinition(propertyName: String, propertyDefinition: PropertyDefinition) {\r
val propertyType = propertyDefinition.type\r
if (BluePrintTypes.validPrimitiveTypes().contains(propertyType)) {\r
\r
\r
package org.onap.ccsdk.apps.controllerblueprints.core.service\r
\r
-import com.google.common.base.Preconditions\r
-import org.apache.commons.io.FileUtils\r
-import org.apache.commons.lang3.StringUtils\r
import org.onap.ccsdk.apps.controllerblueprints.core.BluePrintConstants\r
import org.onap.ccsdk.apps.controllerblueprints.core.BluePrintException\r
import org.onap.ccsdk.apps.controllerblueprints.core.data.*\r
-import org.onap.ccsdk.apps.controllerblueprints.core.utils.JacksonUtils\r
import com.att.eelf.configuration.EELFLogger\r
import com.att.eelf.configuration.EELFManager\r
+import org.onap.ccsdk.apps.controllerblueprints.core.utils.JacksonReactorUtils\r
import reactor.core.publisher.Mono\r
import java.io.File\r
import java.io.Serializable\r
}\r
\r
\r
-class BluePrintRepoFileService(val basePath: String) : BluePrintRepoService {\r
+open class BluePrintRepoFileService(modelTypePath: String) : BluePrintRepoService {\r
\r
- private val log: EELFLogger = EELFManager.getInstance().getLogger(this::class.toString())\r
+ private val log: EELFLogger = EELFManager.getInstance().getLogger(BluePrintRepoFileService::class.toString())\r
\r
- private val dataTypePath = basePath.plus(BluePrintConstants.PATH_DIVIDER).plus(BluePrintConstants.MODEL_DEFINITION_TYPE_DATA_TYPE)\r
- private val nodeTypePath = basePath.plus(BluePrintConstants.PATH_DIVIDER).plus(BluePrintConstants.MODEL_DEFINITION_TYPE_NODE_TYPE)\r
- private val artifactTypePath = basePath.plus(BluePrintConstants.PATH_DIVIDER).plus(BluePrintConstants.MODEL_DEFINITION_TYPE_ARTIFACT_TYPE)\r
- private val capabilityTypePath = basePath.plus(BluePrintConstants.PATH_DIVIDER).plus(BluePrintConstants.MODEL_DEFINITION_TYPE_CAPABILITY_TYPE)\r
- private val relationshipTypePath = basePath.plus(BluePrintConstants.PATH_DIVIDER).plus(BluePrintConstants.MODEL_DEFINITION_TYPE_RELATIONSHIP_TYPE)\r
+ private val dataTypePath = modelTypePath.plus(BluePrintConstants.PATH_DIVIDER).plus(BluePrintConstants.MODEL_DEFINITION_TYPE_DATA_TYPE)\r
+ private val nodeTypePath = modelTypePath.plus(BluePrintConstants.PATH_DIVIDER).plus(BluePrintConstants.MODEL_DEFINITION_TYPE_NODE_TYPE)\r
+ private val artifactTypePath = modelTypePath.plus(BluePrintConstants.PATH_DIVIDER).plus(BluePrintConstants.MODEL_DEFINITION_TYPE_ARTIFACT_TYPE)\r
+ private val capabilityTypePath = modelTypePath.plus(BluePrintConstants.PATH_DIVIDER).plus(BluePrintConstants.MODEL_DEFINITION_TYPE_CAPABILITY_TYPE)\r
+ private val relationshipTypePath = modelTypePath.plus(BluePrintConstants.PATH_DIVIDER).plus(BluePrintConstants.MODEL_DEFINITION_TYPE_RELATIONSHIP_TYPE)\r
private val extension = ".json"\r
\r
override fun getDataType(dataTypeName: String): Mono<DataType>? {\r
}\r
\r
private fun <T> getModelType(fileName: String, valueType: Class<T>): Mono<T> {\r
- return getFileContent(fileName).map { content ->\r
- Preconditions.checkArgument(StringUtils.isNotBlank(content),\r
- String.format("Failed to get model content for file (%s)", fileName))\r
-\r
- JacksonUtils.readValue(content, valueType)\r
- ?: throw BluePrintException(String.format("Failed to get model file from content for file (%s)", fileName))\r
-\r
- }\r
- }\r
-\r
- private fun getFileContent(fileName: String): Mono<String> {\r
- return Mono.just(FileUtils.readFileToString(File(fileName), Charset.defaultCharset()))\r
+ return JacksonReactorUtils.readValueFromFile(fileName, valueType)\r
}\r
}
\ No newline at end of file
--- /dev/null
+/*\r
+ * Copyright © 2017-2018 AT&T Intellectual Property.\r
+ *\r
+ * Licensed under the Apache License, Version 2.0 (the "License");\r
+ * you may not use this file except in compliance with the License.\r
+ * You may obtain a copy of the License at\r
+ *\r
+ * http://www.apache.org/licenses/LICENSE-2.0\r
+ *\r
+ * Unless required by applicable law or agreed to in writing, software\r
+ * distributed under the License is distributed on an "AS IS" BASIS,\r
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+ * See the License for the specific language governing permissions and\r
+ * limitations under the License.\r
+ */\r
+\r
+package org.onap.ccsdk.apps.controllerblueprints.core.utils\r
+\r
+import com.att.eelf.configuration.EELFLogger\r
+import com.att.eelf.configuration.EELFManager\r
+import com.fasterxml.jackson.databind.JsonNode\r
+import com.fasterxml.jackson.module.kotlin.jacksonObjectMapper\r
+import reactor.core.publisher.Mono\r
+import reactor.core.publisher.toMono\r
+\r
+object JacksonReactorUtils {\r
+ private val log: EELFLogger = EELFManager.getInstance().getLogger(this::class.toString())\r
+\r
+ @JvmStatic\r
+ fun getContent(fileName: String): Mono<String> {\r
+ return JacksonUtils.getContent(fileName).toMono()\r
+ }\r
+\r
+ @JvmStatic\r
+ fun getClassPathFileContent(fileName: String): Mono<String> {\r
+ return JacksonUtils.getClassPathFileContent(fileName).toMono()\r
+ }\r
+\r
+ @JvmStatic\r
+ fun <T> readValue(content: String, valueType: Class<T>): Mono<T> {\r
+ return Mono.just(jacksonObjectMapper().readValue(content, valueType))\r
+ }\r
+\r
+ @JvmStatic\r
+ fun jsonNode(content: String): Mono<JsonNode> {\r
+ return Mono.just(jacksonObjectMapper().readTree(content))\r
+ }\r
+\r
+ @JvmStatic\r
+ fun getJson(any: kotlin.Any, pretty: Boolean = false): Mono<String> {\r
+ return Mono.just(JacksonUtils.getJson(any, pretty))\r
+ }\r
+\r
+ @JvmStatic\r
+ fun <T> getListFromJson(content: String, valueType: Class<T>): Mono<List<T>> {\r
+ val objectMapper = jacksonObjectMapper()\r
+ val javaType = objectMapper.typeFactory.constructCollectionType(List::class.java, valueType)\r
+ return objectMapper.readValue<List<T>>(content, javaType).toMono()\r
+ }\r
+\r
+ @JvmStatic\r
+ fun <T> readValueFromFile(fileName: String, valueType: Class<T>): Mono<T> {\r
+ return getContent(fileName)\r
+ .flatMap { content ->\r
+ readValue(content, valueType)\r
+ }\r
+ }\r
+\r
+ @JvmStatic\r
+ fun <T> readValueFromClassPathFile(fileName: String, valueType: Class<T>): Mono<T> {\r
+ return getClassPathFileContent(fileName)\r
+ .flatMap { content ->\r
+ readValue(content, valueType)\r
+ }\r
+ }\r
+\r
+ @JvmStatic\r
+ fun jsonNodeFromFile(fileName: String): Mono<JsonNode> {\r
+ return getContent(fileName)\r
+ .flatMap { content ->\r
+ jsonNode(content)\r
+ }\r
+ }\r
+\r
+ @JvmStatic\r
+ fun jsonNodeFromClassPathFile(fileName: String): Mono<JsonNode> {\r
+ return getClassPathFileContent(fileName)\r
+ .flatMap { content ->\r
+ jsonNode(content)\r
+ }\r
+ }\r
+\r
+ @JvmStatic\r
+ fun <T> getListFromFile(fileName: String, valueType: Class<T>): Mono<List<T>> {\r
+ return getContent(fileName)\r
+ .flatMap { content ->\r
+ getListFromJson(content, valueType)\r
+ }\r
+ }\r
+\r
+ @JvmStatic\r
+ fun <T> getListFromClassPathFile(fileName: String, valueType: Class<T>): Mono<List<T>> {\r
+ return getClassPathFileContent(fileName)\r
+ .flatMap { content ->\r
+ getListFromJson(content, valueType)\r
+ }\r
+ }\r
+}
\ No newline at end of file
import com.fasterxml.jackson.core.type.TypeReference\r
import com.fasterxml.jackson.databind.JsonNode\r
import com.fasterxml.jackson.databind.SerializationFeature\r
-import com.fasterxml.jackson.databind.node.ArrayNode\r
-import com.fasterxml.jackson.databind.node.NullNode\r
-import com.fasterxml.jackson.databind.node.ObjectNode\r
import com.fasterxml.jackson.module.kotlin.jacksonObjectMapper\r
import org.apache.commons.io.FileUtils\r
import org.apache.commons.io.IOUtils\r
return jacksonObjectMapper().readValue(content, valueType)\r
}\r
\r
+ @JvmStatic\r
+ fun getContent(fileName: String): String {\r
+ return File(fileName).readText(Charsets.UTF_8)\r
+ }\r
+\r
+ @JvmStatic\r
+ fun getClassPathFileContent(fileName: String): String {\r
+ return IOUtils.toString(JacksonUtils::class.java.classLoader\r
+ .getResourceAsStream(fileName), Charset.defaultCharset())\r
+ }\r
+\r
@JvmStatic\r
fun <T> readValueFromFile(fileName: String, valueType: Class<T>): T? {\r
val content: String = FileUtils.readFileToString(File(fileName), Charset.defaultCharset())\r
\r
@JvmStatic\r
fun <T> readValueFromClassPathFile(fileName: String, valueType: Class<T>): T? {\r
- val content: String = IOUtils.toString(JacksonUtils::class.java.classLoader.getResourceAsStream(fileName), Charset.defaultCharset())\r
- ?: throw BluePrintException(String.format("Failed to read json file : %s", fileName))\r
+ val content: String = getClassPathFileContent(fileName)\r
return readValue(content, valueType)\r
}\r
\r
\r
@JvmStatic\r
fun jsonNodeFromClassPathFile(fileName: String): JsonNode {\r
- val content: String = IOUtils.toString(JacksonUtils::class.java.classLoader.getResourceAsStream(fileName), Charset.defaultCharset())\r
- ?: throw BluePrintException(String.format("Failed to read json file : %s", fileName))\r
+ val content: String = getClassPathFileContent(fileName)\r
return jsonNode(content)\r
}\r
\r
\r
@JvmStatic\r
fun <T> getListFromClassPathFile(fileName: String, valueType: Class<T>): List<T>? {\r
- val content: String = IOUtils.toString(JacksonUtils::class.java.classLoader.getResourceAsStream(fileName), Charset.defaultCharset())\r
- ?: throw BluePrintException(String.format("Failed to read json file : %s", fileName))\r
+ val content: String = getClassPathFileContent(fileName)\r
return getListFromJson(content, valueType)\r
}\r
\r
@JvmStatic\r
fun checkJsonNodeValueOfPrimitiveType(primitiveType: String, jsonNode: JsonNode): Boolean {\r
when (primitiveType) {\r
- BluePrintConstants.DATA_TYPE_STRING -> {\r
- return jsonNode.isTextual\r
- }\r
- BluePrintConstants.DATA_TYPE_BOOLEAN -> {\r
- return jsonNode.isBoolean\r
- }\r
- BluePrintConstants.DATA_TYPE_INTEGER -> {\r
- return jsonNode.isInt\r
- }\r
- BluePrintConstants.DATA_TYPE_FLOAT -> {\r
- return jsonNode.isDouble\r
- }\r
- BluePrintConstants.DATA_TYPE_TIMESTAMP -> {\r
- return jsonNode.isTextual\r
- }\r
- else ->\r
- return false\r
+ BluePrintConstants.DATA_TYPE_STRING -> return jsonNode.isTextual\r
+ BluePrintConstants.DATA_TYPE_BOOLEAN -> return jsonNode.isBoolean\r
+ BluePrintConstants.DATA_TYPE_INTEGER -> return jsonNode.isInt\r
+ BluePrintConstants.DATA_TYPE_FLOAT -> return jsonNode.isDouble\r
+ BluePrintConstants.DATA_TYPE_TIMESTAMP -> return jsonNode.isTextual\r
+ else -> return false\r
}\r
}\r
\r
@JvmStatic\r
fun checkJsonNodeValueOfCollectionType(type: String, jsonNode: JsonNode): Boolean {\r
when (type) {\r
- BluePrintConstants.DATA_TYPE_LIST ->\r
- return jsonNode.isArray\r
- BluePrintConstants.DATA_TYPE_MAP ->\r
- return jsonNode.isContainerNode\r
- else ->\r
- return false\r
+ BluePrintConstants.DATA_TYPE_LIST -> return jsonNode.isArray\r
+ BluePrintConstants.DATA_TYPE_MAP -> return jsonNode.isContainerNode\r
+ else -> return false\r
}\r
\r
}\r
-\r
+/*\r
@JvmStatic\r
fun populatePrimitiveValues(key: String, value: Any, primitiveType: String, objectNode: ObjectNode) {\r
if (BluePrintConstants.DATA_TYPE_BOOLEAN == primitiveType) {\r
objectNode.set(key, nodeValue)\r
}\r
}\r
+ */\r
}
\ No newline at end of file
*/\r
class BluePrintRepoFileServiceTest {\r
\r
- val basePath = "load/model_type"\r
+ private val basePath = "load/model_type"\r
private val bluePrintEnhancerRepoFileService = BluePrintRepoFileService(basePath)\r
\r
@Test\r
fun testGetDataType() {\r
- val dataType = bluePrintEnhancerRepoFileService.getDataType("dt-v4-aggregate")\r
+ val dataType = bluePrintEnhancerRepoFileService.getDataType("dt-v4-aggregate")?.block()\r
assertNotNull(dataType, "Failed to get DataType from repo")\r
}\r
\r
@Test\r
fun testGetNodeType() {\r
- val nodeType = bluePrintEnhancerRepoFileService.getNodeType("component-resource-assignment")\r
+ val nodeType = bluePrintEnhancerRepoFileService.getNodeType("component-resource-assignment")?.block()\r
assertNotNull(nodeType, "Failed to get NodeType from repo")\r
}\r
\r
@Test\r
fun testGetArtifactType() {\r
- val nodeType = bluePrintEnhancerRepoFileService.getArtifactType("artifact-template-velocity")\r
+ val nodeType = bluePrintEnhancerRepoFileService.getArtifactType("artifact-template-velocity")?.block()\r
assertNotNull(nodeType, "Failed to get ArtifactType from repo")\r
}\r
\r
@Test(expected = FileNotFoundException::class)\r
fun testModelNotFound() {\r
- val dataType = bluePrintEnhancerRepoFileService.getDataType("dt-not-found")\r
+ val dataType = bluePrintEnhancerRepoFileService.getDataType("dt-not-found")?.block()\r
assertNotNull(dataType, "Failed to get DataType from repo")\r
}\r
}
\ No newline at end of file
--- /dev/null
+/*\r
+ * Copyright © 2017-2018 AT&T Intellectual Property.\r
+ *\r
+ * Licensed under the Apache License, Version 2.0 (the "License");\r
+ * you may not use this file except in compliance with the License.\r
+ * You may obtain a copy of the License at\r
+ *\r
+ * http://www.apache.org/licenses/LICENSE-2.0\r
+ *\r
+ * Unless required by applicable law or agreed to in writing, software\r
+ * distributed under the License is distributed on an "AS IS" BASIS,\r
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+ * See the License for the specific language governing permissions and\r
+ * limitations under the License.\r
+ */\r
+\r
+package org.onap.ccsdk.apps.controllerblueprints.core.utils\r
+\r
+import com.att.eelf.configuration.EELFLogger\r
+import com.att.eelf.configuration.EELFManager\r
+import org.junit.Test\r
+import org.onap.ccsdk.apps.controllerblueprints.core.data.ServiceTemplate\r
+import java.io.FileNotFoundException\r
+import kotlin.test.assertEquals\r
+import kotlin.test.assertNotNull\r
+\r
+class JacksonReactorUtilsTest {\r
+ private val log: EELFLogger = EELFManager.getInstance().getLogger(this::class.toString())\r
+ @Test\r
+ fun testReadValues() {\r
+\r
+ val serviceTemplate = JacksonReactorUtils.readValueFromFile("load/blueprints/baseconfiguration/Definitions/activation-blueprint.json",\r
+ ServiceTemplate::class.java).block()\r
+\r
+ assertNotNull(serviceTemplate, "Failed to simple transform Service Template")\r
+ assertEquals(true, serviceTemplate is ServiceTemplate, "failed to get Service Template instance")\r
+\r
+ val jsonContent = JacksonReactorUtils.getJson(serviceTemplate!!, true).block()\r
+ assertNotNull(jsonContent, "Failed to get json content")\r
+\r
+ val jsonNode = JacksonReactorUtils.jsonNodeFromFile("load/blueprints/baseconfiguration/Definitions/activation-blueprint.json")\r
+ .block()\r
+ assertNotNull(jsonContent, "Failed to get json Node")\r
+ }\r
+\r
+ @Test(expected = FileNotFoundException::class)\r
+ fun testReadValuesFailure() {\r
+ JacksonReactorUtils.jsonNodeFromFile("load/blueprints/not-found.json")\r
+ .block()\r
+ }\r
+}
\ No newline at end of file
{\r
- "name": "bundle-id",\r
+ "name": "db-source",\r
"property" :{\r
"description": "name of the ",\r
"type": "string"\r
{\r
"tags": "v4-ip-type, tosca.datatypes.Root, data_type, brindasanth@onap.com",\r
- "name": "v4-ip-type",\r
+ "name": "default-source",\r
"property" :{\r
"description": "name of the ",\r
"type": "string"\r
{\r
- "name": "action-name",\r
+ "name": "input-source",\r
"property" :{\r
"description": "name of the ",\r
"type": "string"\r
{\r
"tags": "oam-local-ipv4-address",\r
- "name": "oam-local-ipv4-address",\r
+ "name": "mdsal-source",\r
"property" :{\r
"description": "based on service-instance-id,network-role,v4-ip-type and vm-type get the ipv4-gateway-prefix from the SDN-GC mdsal",\r
"type": "string"\r
const val SOURCE_DEFAULT = "default"
const val SOURCE_DB = "db"
+ const val MODEL_DIR_RESOURCE_DEFINITION: String = "resource_dictionary"
+
const val PROPERTY_TYPE = "type"
const val PROPERTY_INPUT_KEY_MAPPING = "input-key-mapping"
const val PROPERTY_OUTPUT_KEY_MAPPING = "output-key-mapping"
--- /dev/null
+/*\r
+ * Copyright © 2017-2018 AT&T Intellectual Property.\r
+ *\r
+ * Licensed under the Apache License, Version 2.0 (the "License");\r
+ * you may not use this file except in compliance with the License.\r
+ * You may obtain a copy of the License at\r
+ *\r
+ * http://www.apache.org/licenses/LICENSE-2.0\r
+ *\r
+ * Unless required by applicable law or agreed to in writing, software\r
+ * distributed under the License is distributed on an "AS IS" BASIS,\r
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+ * See the License for the specific language governing permissions and\r
+ * limitations under the License.\r
+ */\r
+\r
+package org.onap.ccsdk.apps.controllerblueprints.resource.dict.service\r
+\r
+import com.att.eelf.configuration.EELFLogger\r
+import org.onap.ccsdk.apps.controllerblueprints.core.BluePrintException\r
+import org.onap.ccsdk.apps.controllerblueprints.core.data.ServiceTemplate\r
+import org.onap.ccsdk.apps.controllerblueprints.core.service.BluePrintEnhancerDefaultService\r
+import org.onap.ccsdk.apps.controllerblueprints.core.service.BluePrintEnhancerService\r
+import org.onap.ccsdk.apps.controllerblueprints.resource.dict.ResourceAssignment\r
+import org.onap.ccsdk.apps.controllerblueprints.resource.dict.ResourceDefinition\r
+import com.att.eelf.configuration.EELFManager\r
+\r
+/**\r
+ * ResourceAssignmentEnhancerService.\r
+ *\r
+ * @author Brinda Santh\r
+ */\r
+interface ResourceAssignmentEnhancerService {\r
+\r
+ @Throws(BluePrintException::class)\r
+ fun enhanceBluePrint(bluePrintEnhancerService: BluePrintEnhancerService,\r
+ resourceAssignments: List<ResourceAssignment>)\r
+\r
+ @Throws(BluePrintException::class)\r
+ fun enhanceBluePrint(resourceAssignments: List<ResourceAssignment>): ServiceTemplate\r
+}\r
+\r
+/**\r
+ * ResourceAssignmentEnhancerDefaultService.\r
+ *\r
+ * @author Brinda Santh\r
+ */\r
+open class ResourceAssignmentEnhancerDefaultService(private val resourceDefinitionRepoService: ResourceDefinitionRepoService)\r
+ : ResourceAssignmentEnhancerService {\r
+ private val log: EELFLogger = EELFManager.getInstance().getLogger(ResourceAssignmentValidationDefaultService::class.java)\r
+\r
+ /**\r
+ * Get the defined source instance from the ResourceAssignment,\r
+ * then get the NodeType of the Sources assigned\r
+ */\r
+ override fun enhanceBluePrint(bluePrintEnhancerService: BluePrintEnhancerService,\r
+ resourceAssignments: List<ResourceAssignment>) {\r
+\r
+ // Iterate the Resource Assignment and\r
+ resourceAssignments.map { resourceAssignment ->\r
+ val dictionaryName = resourceAssignment.dictionaryName!!\r
+ val dictionarySource = resourceAssignment.dictionarySource!!\r
+ log.info("Enriching Assignment name({}), dictionary name({}), source({})", resourceAssignment.name,\r
+ dictionaryName, dictionarySource)\r
+ // Get the Resource Definition from Repo\r
+ val resourceDefinition: ResourceDefinition = getResourceDefinition(dictionaryName)\r
+\r
+ val sourceNodeTemplate = resourceDefinition.sources.get(dictionarySource)\r
+\r
+ // Enrich as NodeTemplate\r
+ bluePrintEnhancerService.enrichNodeTemplate(dictionarySource, sourceNodeTemplate!!)\r
+ }\r
+ }\r
+\r
+ override fun enhanceBluePrint(resourceAssignments: List<ResourceAssignment>): ServiceTemplate {\r
+ val bluePrintEnhancerService = BluePrintEnhancerDefaultService(resourceDefinitionRepoService)\r
+ bluePrintEnhancerService.serviceTemplate = ServiceTemplate()\r
+ bluePrintEnhancerService.initialCleanUp()\r
+ enhanceBluePrint(bluePrintEnhancerService, resourceAssignments)\r
+ return bluePrintEnhancerService.serviceTemplate\r
+ }\r
+\r
+ private fun getResourceDefinition(name: String): ResourceDefinition {\r
+ return resourceDefinitionRepoService.getResourceDefinition(name)!!.block()!!\r
+ }\r
+}
\ No newline at end of file
package org.onap.ccsdk.apps.controllerblueprints.resource.dict.service
+import com.att.eelf.configuration.EELFLogger
import org.apache.commons.collections.CollectionUtils
import org.apache.commons.lang3.StringUtils
import org.apache.commons.lang3.text.StrBuilder
import org.onap.ccsdk.apps.controllerblueprints.core.BluePrintException
import org.onap.ccsdk.apps.controllerblueprints.core.utils.TopologicalSortingUtils
import org.onap.ccsdk.apps.controllerblueprints.resource.dict.ResourceAssignment
-import org.slf4j.LoggerFactory
+import com.att.eelf.configuration.EELFManager
import java.io.Serializable
/**
* @author Brinda Santh
*/
open class ResourceAssignmentValidationDefaultService : ResourceAssignmentValidationService {
- private val log = LoggerFactory.getLogger(ResourceAssignmentValidationDefaultService::class.java)
+ private val log: EELFLogger = EELFManager.getInstance().getLogger(ResourceAssignmentValidationDefaultService::class.java)
open var resourceAssignmentMap: Map<String, ResourceAssignment> = hashMapOf()
open val validationMessage = StrBuilder()
--- /dev/null
+/*\r
+ * Copyright © 2017-2018 AT&T Intellectual Property.\r
+ *\r
+ * Licensed under the Apache License, Version 2.0 (the "License");\r
+ * you may not use this file except in compliance with the License.\r
+ * You may obtain a copy of the License at\r
+ *\r
+ * http://www.apache.org/licenses/LICENSE-2.0\r
+ *\r
+ * Unless required by applicable law or agreed to in writing, software\r
+ * distributed under the License is distributed on an "AS IS" BASIS,\r
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+ * See the License for the specific language governing permissions and\r
+ * limitations under the License.\r
+ */\r
+\r
+package org.onap.ccsdk.apps.controllerblueprints.resource.dict.service\r
+\r
+import org.onap.ccsdk.apps.controllerblueprints.core.BluePrintConstants\r
+import org.onap.ccsdk.apps.controllerblueprints.core.service.BluePrintRepoFileService\r
+import org.onap.ccsdk.apps.controllerblueprints.core.service.BluePrintRepoService\r
+import org.onap.ccsdk.apps.controllerblueprints.core.utils.JacksonReactorUtils\r
+import org.onap.ccsdk.apps.controllerblueprints.resource.dict.ResourceDefinition\r
+import reactor.core.publisher.Mono\r
+/**\r
+ * ResourceDefinitionRepoService.\r
+ *\r
+ * @author Brinda Santh\r
+ */\r
+interface ResourceDefinitionRepoService : BluePrintRepoService {\r
+\r
+ fun getResourceDefinition(resourceDefinitionName: String): Mono<ResourceDefinition>?\r
+}\r
+\r
+/**\r
+ * ResourceDefinitionFileRepoService.\r
+ *\r
+ * @author Brinda Santh\r
+ */\r
+open class ResourceDefinitionFileRepoService : BluePrintRepoFileService,\r
+ ResourceDefinitionRepoService {\r
+\r
+ private var resourceDefinitionPath: String\r
+ private val extension = ".json"\r
+\r
+ constructor(basePath: String) : this(basePath,\r
+ basePath.plus(BluePrintConstants.PATH_DIVIDER)\r
+ .plus(BluePrintConstants.MODEL_DIR_MODEL_TYPE))\r
+\r
+ constructor(basePath: String, modelTypePath: String) : super(modelTypePath) {\r
+ resourceDefinitionPath = basePath.plus("/resource_dictionary")\r
+ }\r
+\r
+ override fun getResourceDefinition(resourceDefinitionName: String): Mono<ResourceDefinition>? {\r
+\r
+ val fileName = resourceDefinitionPath.plus(BluePrintConstants.PATH_DIVIDER)\r
+ .plus(resourceDefinitionName).plus(extension)\r
+\r
+ return JacksonReactorUtils.readValueFromFile(fileName, ResourceDefinition::class.java)\r
+ }\r
+}\r
package org.onap.ccsdk.apps.controllerblueprints.resource.dict.service
+import com.att.eelf.configuration.EELFLogger
import com.fasterxml.jackson.databind.JsonNode
import com.google.common.base.Preconditions
import org.onap.ccsdk.apps.controllerblueprints.core.BluePrintException
import org.onap.ccsdk.apps.controllerblueprints.core.service.BluePrintRepoService
import org.onap.ccsdk.apps.controllerblueprints.core.utils.JacksonUtils
import org.onap.ccsdk.apps.controllerblueprints.resource.dict.ResourceDefinition
-import org.slf4j.LoggerFactory
+import com.att.eelf.configuration.EELFManager
import java.io.Serializable
/**
* ResourceDefinitionValidationService.
*/
open class ResourceDefinitionDefaultValidationService(private val bluePrintRepoService: BluePrintRepoService) : ResourceDefinitionValidationService {
- private val log = LoggerFactory.getLogger(ResourceDefinitionValidationService::class.java)
+ private val log: EELFLogger = EELFManager.getInstance().getLogger(ResourceDefinitionValidationService::class.java)
override fun validate(resourceDefinition: ResourceDefinition) {
Preconditions.checkNotNull(resourceDefinition, "Failed to get Resource Definition")
\r
package org.onap.ccsdk.apps.controllerblueprints.resource.dict.utils\r
\r
+import com.att.eelf.configuration.EELFLogger\r
import org.apache.commons.collections.CollectionUtils\r
import org.onap.ccsdk.apps.controllerblueprints.core.utils.TopologicalSortingUtils\r
import org.onap.ccsdk.apps.controllerblueprints.resource.dict.ResourceAssignment\r
-import org.slf4j.LoggerFactory\r
+import com.att.eelf.configuration.EELFManager\r
import java.util.ArrayList\r
/**\r
* BulkResourceSequencingUtils.\r
* @author Brinda Santh\r
*/\r
object BulkResourceSequencingUtils {\r
- private val log = LoggerFactory.getLogger(BulkResourceSequencingUtils::class.java)\r
+ private val log: EELFLogger = EELFManager.getInstance().getLogger(BulkResourceSequencingUtils::class.java)\r
\r
@JvmStatic\r
fun process(resourceAssignments: MutableList<ResourceAssignment>): List<List<ResourceAssignment>> {\r
package org.onap.ccsdk.apps.controllerblueprints.resource.dict.utils
+import com.att.eelf.configuration.EELFLogger
import com.fasterxml.jackson.databind.JsonNode
import com.fasterxml.jackson.databind.node.NullNode
import org.apache.commons.collections.MapUtils
import org.onap.ccsdk.apps.controllerblueprints.resource.dict.ResourceAssignment
import org.onap.ccsdk.apps.controllerblueprints.resource.dict.ResourceDefinition
import org.onap.ccsdk.apps.controllerblueprints.resource.dict.ResourceDictionaryConstants
-import org.slf4j.LoggerFactory
+import com.att.eelf.configuration.EELFManager
object ResourceDictionaryUtils {
- private val log = LoggerFactory.getLogger(ResourceDictionaryUtils::class.java)
+ private val log: EELFLogger = EELFManager.getInstance().getLogger(ResourceDictionaryUtils::class.java)
@JvmStatic
fun populateSourceMapping(resourceAssignment: ResourceAssignment,
import org.junit.Assert;\r
import org.junit.Test;\r
import org.onap.ccsdk.apps.controllerblueprints.core.utils.JacksonUtils;\r
-import org.slf4j.Logger;\r
-import org.slf4j.LoggerFactory;\r
+import com.att.eelf.configuration.EELFLogger;\r
+import com.att.eelf.configuration.EELFManager;\r
\r
public class ResourceDefinitionTest {\r
- private Logger log = LoggerFactory.getLogger(ResourceDefinitionTest.class);\r
- String basePath = "load/resource_dictionary";\r
+ private EELFLogger log = EELFManager.getInstance().getLogger(ResourceDefinitionTest.class);\r
+ private String basePath = "load/resource_dictionary";\r
\r
@Test\r
public void testDictionaryDefinitionInputSource(){\r
--- /dev/null
+/*\r
+ * Copyright © 2017-2018 AT&T Intellectual Property.\r
+ *\r
+ * Licensed under the Apache License, Version 2.0 (the "License");\r
+ * you may not use this file except in compliance with the License.\r
+ * You may obtain a copy of the License at\r
+ *\r
+ * http://www.apache.org/licenses/LICENSE-2.0\r
+ *\r
+ * Unless required by applicable law or agreed to in writing, software\r
+ * distributed under the License is distributed on an "AS IS" BASIS,\r
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+ * See the License for the specific language governing permissions and\r
+ * limitations under the License.\r
+ */\r
+\r
+package org.onap.ccsdk.apps.controllerblueprints.resource.dict.service;\r
+\r
+import org.junit.Assert;\r
+import org.junit.Test;\r
+import org.onap.ccsdk.apps.controllerblueprints.core.BluePrintException;\r
+import org.onap.ccsdk.apps.controllerblueprints.core.data.ServiceTemplate;\r
+import org.onap.ccsdk.apps.controllerblueprints.core.utils.JacksonReactorUtils;\r
+import org.onap.ccsdk.apps.controllerblueprints.resource.dict.ResourceAssignment;\r
+\r
+import java.util.List;\r
+\r
+/**\r
+ * ResourceAssignmentEnhancerService.\r
+ *\r
+ * @author Brinda Santh\r
+ */\r
+public class ResourceAssignmentEnhancerServiceTest {\r
+\r
+ @Test\r
+ public void testEnhanceBluePrint() throws BluePrintException {\r
+\r
+ List<ResourceAssignment> resourceAssignments = JacksonReactorUtils\r
+ .getListFromClassPathFile("enrich/simple-enrich.json", ResourceAssignment.class).block();\r
+ Assert.assertNotNull("Failed to get Resource Assignment", resourceAssignments);\r
+ ResourceDefinitionRepoService resourceDefinitionRepoService = new ResourceDefinitionFileRepoService("load");\r
+ ResourceAssignmentEnhancerService resourceAssignmentEnhancerService =\r
+ new ResourceAssignmentEnhancerDefaultService(resourceDefinitionRepoService);\r
+ ServiceTemplate serviceTemplate = resourceAssignmentEnhancerService.enhanceBluePrint(resourceAssignments);\r
+ Assert.assertNotNull("Failed to get Enriched service Template", serviceTemplate);\r
+ }\r
+}\r
+\r
\r
package org.onap.ccsdk.apps.controllerblueprints.resource.dict.service\r
\r
+import com.att.eelf.configuration.EELFLogger\r
import org.junit.Assert\r
import org.junit.Test\r
import org.onap.ccsdk.apps.controllerblueprints.core.BluePrintException\r
import org.onap.ccsdk.apps.controllerblueprints.core.utils.JacksonUtils\r
import org.onap.ccsdk.apps.controllerblueprints.resource.dict.ResourceAssignment\r
-import org.slf4j.LoggerFactory\r
+import com.att.eelf.configuration.EELFManager\r
/**\r
* ResourceAssignmentValidationServiceTest.\r
*\r
* @author Brinda Santh\r
*/\r
class ResourceAssignmentValidationServiceTest {\r
- private val log = LoggerFactory.getLogger(ResourceAssignmentValidationServiceTest::class.java)\r
+ private val log: EELFLogger = EELFManager.getInstance().getLogger(ResourceAssignmentValidationServiceTest::class.java)\r
@Test\r
fun testValidateSuccess() {\r
log.info("**************** testValidateSuccess *****************")\r
--- /dev/null
+/*\r
+ * Copyright © 2017-2018 AT&T Intellectual Property.\r
+ *\r
+ * Licensed under the Apache License, Version 2.0 (the "License");\r
+ * you may not use this file except in compliance with the License.\r
+ * You may obtain a copy of the License at\r
+ *\r
+ * http://www.apache.org/licenses/LICENSE-2.0\r
+ *\r
+ * Unless required by applicable law or agreed to in writing, software\r
+ * distributed under the License is distributed on an "AS IS" BASIS,\r
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+ * See the License for the specific language governing permissions and\r
+ * limitations under the License.\r
+ */\r
+\r
+package org.onap.ccsdk.apps.controllerblueprints.resource.dict.service;\r
+\r
+import org.junit.Assert;\r
+import org.junit.Test;\r
+import org.onap.ccsdk.apps.controllerblueprints.core.data.NodeType;\r
+import org.onap.ccsdk.apps.controllerblueprints.resource.dict.ResourceDefinition;\r
+\r
+public class ResourceDefinitionRepoServiceTest {\r
+\r
+ @Test\r
+ public void testGetResourceDefinition() throws Exception{\r
+ ResourceDefinitionRepoService resourceDefinitionRepoService = new ResourceDefinitionFileRepoService("load");\r
+ ResourceDefinition resourceDefinition = resourceDefinitionRepoService\r
+ .getResourceDefinition("db-source").block();\r
+ Assert.assertNotNull("Failed to get Resource Definition db-source", resourceDefinition);\r
+\r
+ NodeType nodeType = resourceDefinitionRepoService.getNodeType("source-db").block();\r
+ Assert.assertNotNull("Failed to get Node Type source-db", resourceDefinition);\r
+ }\r
+}
\ No newline at end of file
import org.onap.ccsdk.apps.controllerblueprints.resource.dict.ResourceAssignment;\r
import org.onap.ccsdk.apps.controllerblueprints.resource.dict.ResourceDefinition;\r
import org.onap.ccsdk.apps.controllerblueprints.resource.dict.ResourceDictionaryConstants;\r
-import org.slf4j.Logger;\r
-import org.slf4j.LoggerFactory;\r
+import com.att.eelf.configuration.EELFLogger;\r
+import com.att.eelf.configuration.EELFManager;\r
\r
import java.util.HashMap;\r
import java.util.Map;\r
* @author Brinda Santh\r
*/\r
public class ResourceDictionaryUtilsTest {\r
- private static final Logger log = LoggerFactory.getLogger(ResourceDictionaryUtilsTest.class);\r
+ private static final EELFLogger log = EELFManager.getInstance().getLogger(ResourceDictionaryUtilsTest.class);\r
\r
@Test\r
public void testPopulateSourceMapping() {\r
\r
ResourceAssignment resourceAssignment = new ResourceAssignment();\r
+ resourceAssignment.setName("sample-assignment");\r
ResourceDefinition resourceDefinition = new ResourceDefinition();\r
Map<String, NodeTemplate> sources = new HashMap<>();\r
resourceDefinition.setSources(sources);\r
--- /dev/null
+[\r
+ {\r
+ "name": "rs-db-source",\r
+ "input-param": true,\r
+ "property": {\r
+ "type": "string",\r
+ "required": true\r
+ },\r
+ "dictionary-name": "db-source",\r
+ "dictionary-source": "db",\r
+ "dependencies": [\r
+ "input-source"\r
+ ]\r
+ },\r
+ {\r
+ "name": "ra-default-source",\r
+ "input-param": true,\r
+ "property": {\r
+ "type": "string",\r
+ "required": true\r
+ },\r
+ "dictionary-name": "default-source",\r
+ "dictionary-source": "default",\r
+ "dependencies": []\r
+ },\r
+ {\r
+ "name": "ra-input-source",\r
+ "input-param": true,\r
+ "property": {\r
+ "type": "string",\r
+ "required": true\r
+ },\r
+ "dictionary-name": "input-source",\r
+ "dictionary-source": "input",\r
+ "dependencies": []\r
+ }\r
+]\r
import org.onap.ccsdk.apps.controllerblueprints.service.domain.ResourceDictionary;\r
import org.onap.ccsdk.apps.controllerblueprints.service.model.AutoMapResponse;\r
import org.onap.ccsdk.apps.controllerblueprints.service.repository.ResourceDictionaryRepository;\r
-import org.slf4j.Logger;\r
-import org.slf4j.LoggerFactory;\r
+import com.att.eelf.configuration.EELFLogger;\r
+import com.att.eelf.configuration.EELFManager;\r
import org.springframework.stereotype.Service;\r
\r
import java.util.ArrayList;\r
@SuppressWarnings("unused")\r
public class AutoResourceMappingService {\r
\r
- private static Logger log = LoggerFactory.getLogger(AutoResourceMappingService.class);\r
+ private static EELFLogger log = EELFManager.getInstance().getLogger(AutoResourceMappingService.class);\r
\r
private ResourceDictionaryRepository dataDictionaryRepository;\r
\r
import org.onap.ccsdk.apps.controllerblueprints.core.service.BluePrintRepoService;\r
import org.onap.ccsdk.apps.controllerblueprints.core.utils.JacksonUtils;\r
import org.onap.ccsdk.apps.controllerblueprints.resource.dict.ResourceAssignment;\r
-import org.slf4j.Logger;\r
-import org.slf4j.LoggerFactory;\r
+import com.att.eelf.configuration.EELFLogger;\r
+import com.att.eelf.configuration.EELFManager;\r
import org.springframework.stereotype.Service;\r
\r
import java.util.HashMap;\r
@Service\r
public class BluePrintEnhancerService extends BluePrintEnhancerDefaultService {\r
\r
- private static Logger log = LoggerFactory.getLogger(BluePrintEnhancerService.class);\r
+ private static EELFLogger log = EELFManager.getInstance().getLogger(BluePrintEnhancerService.class);\r
\r
private Map<String, DataType> recipeDataTypes = new HashMap<>();\r
\r
}\r
\r
@Override\r
- public void enrichTopologyTemplate(@NotNull ServiceTemplate serviceTemplate) {\r
+ public void enrichTopologyTemplate(@NotNull ServiceTemplate serviceTemplate) throws BluePrintException{\r
super.enrichTopologyTemplate(serviceTemplate);\r
\r
// Update the Recipe Inputs and DataTypes\r
}\r
\r
private Map<String, PropertyDefinition> getCapabilityMappingProperties(String nodeTemplateName,\r
- NodeTemplate nodeTemplate) {\r
+ NodeTemplate nodeTemplate) throws BluePrintException {\r
\r
Map<String, PropertyDefinition> dataTypeProperties = null;\r
if (nodeTemplate != null && MapUtils.isNotEmpty(nodeTemplate.getCapabilities())) {\r
import org.onap.ccsdk.apps.controllerblueprints.service.domain.ConfigModel;\r
import org.onap.ccsdk.apps.controllerblueprints.service.domain.ConfigModelContent;\r
import org.onap.ccsdk.apps.controllerblueprints.service.repository.ConfigModelRepository;\r
-import org.slf4j.Logger;\r
-import org.slf4j.LoggerFactory;\r
+import com.att.eelf.configuration.EELFLogger;\r
+import com.att.eelf.configuration.EELFManager;\r
import org.springframework.stereotype.Service;\r
\r
import java.io.IOException;\r
@Service\r
public class ConfigModelCreateService {\r
\r
- private static Logger log = LoggerFactory.getLogger(ConfigModelCreateService.class);\r
+ private static EELFLogger log = EELFManager.getInstance().getLogger(ConfigModelCreateService.class);\r
\r
private ConfigModelRepository configModelRepository;\r
private ConfigModelValidatorService configModelValidatorService;\r
import org.onap.ccsdk.apps.controllerblueprints.service.domain.ConfigModelContent;\r
import org.onap.ccsdk.apps.controllerblueprints.service.repository.ConfigModelContentRepository;\r
import org.onap.ccsdk.apps.controllerblueprints.service.repository.ConfigModelRepository;\r
-import org.slf4j.Logger;\r
-import org.slf4j.LoggerFactory;\r
+import com.att.eelf.configuration.EELFLogger;\r
+import com.att.eelf.configuration.EELFManager;\r
import org.springframework.stereotype.Service;\r
import org.springframework.transaction.annotation.Transactional;\r
\r
@Service\r
public class ConfigModelService {\r
\r
- private static Logger log = LoggerFactory.getLogger(ConfigModelService.class);\r
+ private static EELFLogger log = EELFManager.getInstance().getLogger(ConfigModelService.class);\r
\r
private ConfigModelRepository configModelRepository;\r
private ConfigModelContentRepository configModelContentRepository;\r
\r
/**\r
* This is a ConfigModelService constructor.\r
- * \r
- * @param configModelRepository\r
- * @param configModelContentRepository\r
- * @param configModelCreateService\r
+ *\r
+ * @param configModelRepository configModelRepository\r
+ * @param configModelContentRepository configModelContentRepository\r
+ * @param configModelCreateService configModelCreateService\r
*/\r
public ConfigModelService(ConfigModelRepository configModelRepository,\r
- ConfigModelContentRepository configModelContentRepository,\r
- ConfigModelCreateService configModelCreateService) {\r
+ ConfigModelContentRepository configModelContentRepository,\r
+ ConfigModelCreateService configModelCreateService) {\r
this.configModelRepository = configModelRepository;\r
this.configModelContentRepository = configModelContentRepository;\r
this.configModelCreateService = configModelCreateService;\r
\r
/**\r
* This is a getInitialConfigModel method\r
- * \r
- * @param templateName\r
+ *\r
+ * @param templateName templateName\r
* @return ConfigModel\r
- * @throws BluePrintException\r
+ * @throws BluePrintException BluePrintException\r
*/\r
public ConfigModel getInitialConfigModel(String templateName) throws BluePrintException {\r
ConfigModel configModel = null;\r
\r
/**\r
* This is a saveConfigModel method\r
- * \r
- * @param configModel\r
+ *\r
+ * @param configModel configModel\r
* @return ConfigModel\r
- * @throws BluePrintException\r
+ * @throws BluePrintException BluePrintException\r
*/\r
public ConfigModel saveConfigModel(ConfigModel configModel) throws BluePrintException {\r
return this.configModelCreateService.saveConfigModel(configModel);\r
\r
/**\r
* This is a publishConfigModel method\r
- * \r
- * @param id\r
+ *\r
+ * @param id id\r
* @return ConfigModel\r
- * @throws BluePrintException\r
+ * @throws BluePrintException BluePrintException\r
*/\r
public ConfigModel publishConfigModel(Long id) throws BluePrintException {\r
return this.configModelCreateService.publishConfigModel(id);\r
\r
/**\r
* This is a searchConfigModels method\r
- * \r
- * @param tags\r
+ *\r
+ * @param tags tags\r
* @return ConfigModel\r
*/\r
public List<ConfigModel> searchConfigModels(String tags) {\r
\r
/**\r
* This is a getConfigModelByNameAndVersion method\r
- * \r
- * @param name\r
- * @param version\r
+ *\r
+ * @param name name\r
+ * @param version version\r
* @return ConfigModel\r
*/\r
public ConfigModel getConfigModelByNameAndVersion(String name, String version) {\r
\r
/**\r
* This is a getConfigModel method\r
- * \r
- * @param id\r
+ *\r
+ * @param id id\r
* @return ConfigModel\r
*/\r
public ConfigModel getConfigModel(Long id) {\r
\r
/**\r
* This method returns clone of the given model id, by masking the other unrelated fields\r
- * \r
- * @param id\r
- * @return\r
+ *\r
+ * @param id id\r
+ * @return ConfigModel\r
*/\r
\r
public ConfigModel getCloneConfigModel(Long id) {\r
\r
/**\r
* This is a deleteConfigModel method\r
- * \r
- * @param id\r
+ *\r
+ * @param id id\r
*/\r
\r
@Transactional\r
import org.apache.commons.io.IOUtils;\r
import org.apache.commons.lang3.StringUtils;\r
import org.apache.commons.lang3.text.StrBuilder;\r
+import org.jetbrains.annotations.NotNull;\r
import org.onap.ccsdk.apps.controllerblueprints.core.BluePrintConstants;\r
import org.onap.ccsdk.apps.controllerblueprints.core.BluePrintException;\r
import org.onap.ccsdk.apps.controllerblueprints.core.data.ArtifactType;\r
import org.onap.ccsdk.apps.controllerblueprints.service.domain.ModelType;\r
import org.onap.ccsdk.apps.controllerblueprints.service.domain.ResourceDictionary;\r
import org.onap.ccsdk.apps.controllerblueprints.service.utils.ConfigModelUtils;\r
-import org.slf4j.Logger;\r
-import org.slf4j.LoggerFactory;\r
+import com.att.eelf.configuration.EELFLogger;\r
+import com.att.eelf.configuration.EELFManager;\r
import org.springframework.beans.factory.annotation.Autowired;\r
import org.springframework.beans.factory.annotation.Value;\r
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;\r
@ConditionalOnProperty(name = "blueprints.load.initial-data", havingValue = "true")\r
public class DataBaseInitService {\r
\r
- private static Logger log = LoggerFactory.getLogger(DataBaseInitService.class);\r
+ private static EELFLogger log = EELFManager.getInstance().getLogger(DataBaseInitService.class);\r
@Value("${blueprints.load.path}")\r
private String modelLoadPath;\r
private ModelTypeService modelTypeService;\r
}\r
\r
@PostConstruct\r
+ @SuppressWarnings("unused")\r
private void initDatabase() {\r
log.info("loading Blueprints from DIR : {}", modelLoadPath);\r
dataTypePath = modelLoadPath + "/model_type/data_type";\r
}\r
}\r
\r
- private void loadDataType(Resource file, StrBuilder errorBuilder) {\r
+ private void loadDataType(@NotNull Resource file, StrBuilder errorBuilder) {\r
try {\r
log.trace("Loading Data Type: {}", file.getFilename());\r
String dataKey = file.getFilename().replace(".json", "");\r
import org.onap.ccsdk.apps.controllerblueprints.core.data.ServiceTemplate;\r
import org.onap.ccsdk.apps.controllerblueprints.core.utils.JacksonUtils;\r
import org.onap.ccsdk.apps.controllerblueprints.service.common.SwaggerGenerator;\r
-import org.slf4j.Logger;\r
-import org.slf4j.LoggerFactory;\r
+import com.att.eelf.configuration.EELFLogger;\r
+import com.att.eelf.configuration.EELFManager;\r
\r
import java.util.HashMap;\r
import java.util.Map;\r
*/\r
\r
public class SchemaGeneratorService {\r
- private static Logger log = LoggerFactory.getLogger(SchemaGeneratorService.class);\r
+ private static EELFLogger log = EELFManager.getInstance().getLogger(SchemaGeneratorService.class);\r
\r
private Map<String, DataType> dataTypes;\r
\r
* @param serviceTemplate serviceTemplate\r
* @return ServiceTemplate\r
*/\r
- public ServiceTemplate enrichServiceTemplate(ServiceTemplate serviceTemplate) {\r
+ public ServiceTemplate enrichServiceTemplate(ServiceTemplate serviceTemplate) throws BluePrintException {\r
this.bluePrintEnhancerService.enhance(serviceTemplate);\r
return serviceTemplate;\r
}\r
\r
@Override\r
public String toString() {\r
- StringBuilder builder = new StringBuilder("[");\r
- builder.append("id = " + id);\r
- builder.append(", name = " + name);\r
- builder.append(", contentType = " + contentType);\r
- builder.append("]");\r
- return builder.toString();\r
+ String builder = "[" + "id = " + id +\r
+ ", name = " + name +\r
+ ", contentType = " + contentType +\r
+ "]";\r
+ return builder;\r
}\r
\r
@Override\r
\r
@Override\r
public String toString() {\r
- StringBuilder buffer = new StringBuilder("[");\r
- buffer.append(", modelName = " + modelName);\r
- buffer.append(", derivedFrom = " + derivedFrom);\r
- buffer.append(", definitionType = " + definitionType);\r
- buffer.append(", description = " + description);\r
- buffer.append(", creationDate = " + creationDate);\r
- buffer.append(", version = " + version);\r
- buffer.append(", updatedBy = " + updatedBy);\r
- buffer.append(", tags = " + tags);\r
- buffer.append("]");\r
- return buffer.toString();\r
+ String buffer = "[" + ", modelName = " + modelName +\r
+ ", derivedFrom = " + derivedFrom +\r
+ ", definitionType = " + definitionType +\r
+ ", description = " + description +\r
+ ", creationDate = " + creationDate +\r
+ ", version = " + version +\r
+ ", updatedBy = " + updatedBy +\r
+ ", tags = " + tags +\r
+ "]";\r
+ return buffer;\r
}\r
\r
public String getModelName() {\r
\r
@Override\r
public String toString() {\r
- StringBuilder buffer = new StringBuilder("[");\r
- buffer.append(", name = " + name);\r
- buffer.append(", resourcePath = " + resourcePath);\r
- buffer.append(", resourceType = " + resourceType);\r
- buffer.append(", dataType = " + dataType);\r
- buffer.append(", entrySchema = " + entrySchema);\r
- buffer.append(", validValues = " + validValues);\r
- buffer.append(", definition =" + definition);\r
- buffer.append(", description = " + description);\r
- buffer.append(", updatedBy = " + updatedBy);\r
- buffer.append(", tags = " + tags);\r
- buffer.append(", creationDate = " + creationDate);\r
- buffer.append("]");\r
- return buffer.toString();\r
+ String buffer = "[" + ", name = " + name +\r
+ ", resourcePath = " + resourcePath +\r
+ ", resourceType = " + resourceType +\r
+ ", dataType = " + dataType +\r
+ ", entrySchema = " + entrySchema +\r
+ ", validValues = " + validValues +\r
+ ", definition =" + definition +\r
+ ", description = " + description +\r
+ ", updatedBy = " + updatedBy +\r
+ ", tags = " + tags +\r
+ ", creationDate = " + creationDate +\r
+ "]";\r
+ return buffer;\r
}\r
\r
public String getResourcePath() {\r
import org.onap.ccsdk.apps.controllerblueprints.core.utils.BluePrintMetadataUtils;\r
import org.onap.ccsdk.apps.controllerblueprints.service.domain.ConfigModel;\r
import org.onap.ccsdk.apps.controllerblueprints.service.domain.ConfigModelContent;\r
-import org.slf4j.Logger;\r
-import org.slf4j.LoggerFactory;\r
+import com.att.eelf.configuration.EELFLogger;\r
+import com.att.eelf.configuration.EELFManager;\r
\r
import java.io.File;\r
import java.io.IOException;\r
\r
}\r
\r
- private static Logger log = LoggerFactory.getLogger(ConfigModelUtils.class);\r
+ private static EELFLogger log = EELFManager.getInstance().getLogger(ConfigModelUtils.class);\r
\r
public static ConfigModel getConfigModel(String blueprintPath) throws Exception {\r
Preconditions.checkArgument(StringUtils.isNotBlank(blueprintPath), "Blueprint Path is missing");\r
import org.junit.Test;\r
import org.junit.runners.MethodSorters;\r
import org.onap.ccsdk.apps.controllerblueprints.service.SchemaGeneratorService;\r
-import org.slf4j.Logger;\r
-import org.slf4j.LoggerFactory;\r
+import com.att.eelf.configuration.EELFLogger;\r
+import com.att.eelf.configuration.EELFManager;\r
\r
import java.io.File;\r
import java.nio.charset.Charset;\r
@FixMethodOrder(MethodSorters.NAME_ASCENDING)\r
public class SchemaGeneratorServiceTest {\r
\r
- private static Logger log = LoggerFactory.getLogger(SchemaGeneratorServiceTest.class);\r
+ private static EELFLogger log = EELFManager.getInstance().getLogger(SchemaGeneratorServiceTest.class);\r
\r
@Test\r
public void test01GenerateSwaggerData() throws Exception {\r
import org.onap.ccsdk.apps.controllerblueprints.TestApplication;\r
import org.onap.ccsdk.apps.controllerblueprints.service.domain.ConfigModel;\r
import org.onap.ccsdk.apps.controllerblueprints.service.utils.ConfigModelUtils;\r
-import org.slf4j.Logger;\r
-import org.slf4j.LoggerFactory;\r
+import com.att.eelf.configuration.EELFLogger;\r
+import com.att.eelf.configuration.EELFManager;\r
import org.springframework.beans.factory.annotation.Autowired;\r
import org.springframework.boot.test.context.SpringBootTest;\r
import org.springframework.boot.test.context.SpringBootTest.WebEnvironment;\r
@FixMethodOrder(MethodSorters.NAME_ASCENDING)\r
public class ConfigModelRestTest {\r
\r
- private static Logger log = LoggerFactory.getLogger(ConfigModelRestTest.class);\r
+ private static EELFLogger log = EELFManager.getInstance().getLogger(ConfigModelRestTest.class);\r
\r
@Autowired\r
ConfigModelRest configModelRest;\r
import org.onap.ccsdk.apps.controllerblueprints.TestApplication;\r
import org.onap.ccsdk.apps.controllerblueprints.core.BluePrintConstants;\r
import org.onap.ccsdk.apps.controllerblueprints.service.domain.ModelType;\r
-import org.slf4j.Logger;\r
-import org.slf4j.LoggerFactory;\r
+import com.att.eelf.configuration.EELFLogger;\r
+import com.att.eelf.configuration.EELFManager;\r
import org.springframework.beans.factory.annotation.Autowired;\r
import org.springframework.boot.test.context.SpringBootTest;\r
import org.springframework.boot.test.context.SpringBootTest.WebEnvironment;\r
@ContextConfiguration(classes = {TestApplication.class})\r
@FixMethodOrder(MethodSorters.NAME_ASCENDING)\r
public class ModelTypeRestTest {\r
- private static Logger log = LoggerFactory.getLogger(ModelTypeRestTest.class);\r
+ private static EELFLogger log = EELFManager.getInstance().getLogger(ModelTypeRestTest.class);\r
@Autowired\r
ModelTypeRest modelTypeRest;\r
\r
import org.junit.runners.MethodSorters;\r
import org.onap.ccsdk.apps.controllerblueprints.TestApplication;\r
import org.onap.ccsdk.apps.controllerblueprints.service.domain.ResourceDictionary;\r
-import org.slf4j.Logger;\r
-import org.slf4j.LoggerFactory;\r
+import com.att.eelf.configuration.EELFLogger;\r
+import com.att.eelf.configuration.EELFManager;\r
import org.springframework.beans.factory.annotation.Autowired;\r
import org.springframework.boot.test.context.SpringBootTest;\r
import org.springframework.boot.test.context.SpringBootTest.WebEnvironment;\r
@FixMethodOrder(MethodSorters.NAME_ASCENDING)\r
public class ResourceDictionaryRestTest {\r
\r
- private static Logger log = LoggerFactory.getLogger(ResourceDictionaryRestTest.class);\r
+ private static EELFLogger log = EELFManager.getInstance().getLogger(ResourceDictionaryRestTest.class);\r
\r
@Autowired\r
protected ResourceDictionaryRest resourceDictionaryRest;\r
import org.onap.ccsdk.apps.controllerblueprints.resource.dict.ResourceAssignment;\r
import org.onap.ccsdk.apps.controllerblueprints.service.domain.ConfigModelContent;\r
import org.onap.ccsdk.apps.controllerblueprints.service.model.AutoMapResponse;\r
-import org.slf4j.Logger;\r
-import org.slf4j.LoggerFactory;\r
+import com.att.eelf.configuration.EELFLogger;\r
+import com.att.eelf.configuration.EELFManager;\r
import org.springframework.beans.factory.annotation.Autowired;\r
import org.springframework.boot.test.context.SpringBootTest;\r
import org.springframework.boot.test.context.SpringBootTest.WebEnvironment;\r
@FixMethodOrder(MethodSorters.NAME_ASCENDING)\r
public class ServiceTemplateRestTest {\r
\r
- private static Logger log = LoggerFactory.getLogger(ServiceTemplateRestTest.class);\r
+ private static EELFLogger log = EELFManager.getInstance().getLogger(ServiceTemplateRestTest.class);\r
@Autowired\r
ModelTypeRest modelTypeRest;\r
\r
import org.onap.ccsdk.apps.controllerblueprints.core.data.ServiceTemplate;\r
import org.onap.ccsdk.apps.controllerblueprints.core.utils.JacksonUtils;\r
import org.onap.ccsdk.apps.controllerblueprints.service.utils.ConfigModelUtils;\r
-import org.slf4j.Logger;\r
-import org.slf4j.LoggerFactory;\r
+import com.att.eelf.configuration.EELFLogger;\r
+import com.att.eelf.configuration.EELFManager;\r
\r
import java.io.File;\r
import java.nio.charset.Charset;\r
import java.util.List;\r
\r
public class ServiceTemplateValidationTest {\r
- private static Logger log = LoggerFactory.getLogger(ServiceTemplateValidationTest.class);\r
+ private static EELFLogger log = EELFManager.getInstance().getLogger(ServiceTemplateValidationTest.class);\r
\r
@Test\r
public void testBluePrintDirs() {\r