aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--components/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/BluePrintConstants.kt14
-rw-r--r--components/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/BluePrintTypes.kt2
-rw-r--r--components/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/CustomFunctions.kt31
-rw-r--r--components/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/data/BlueprintErrorCode.kt97
-rwxr-xr-xcomponents/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/interfaces/BluePrintCatalogService.kt41
-rw-r--r--components/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/service/BluePrintValidatorService.kt2
-rwxr-xr-xcomponents/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/utils/BluePrintArchiveUtils.kt65
-rwxr-xr-xcomponents/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/utils/BluePrintFileUtils.kt24
-rw-r--r--components/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/utils/JacksonUtils.kt70
-rw-r--r--components/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/validation/BluePrintNodeTypeValidatorImpl.kt4
-rw-r--r--components/core/src/test/resources/dictionary/dictionary_schema.json4
-rw-r--r--components/model-catalog/api-definition/proto/BluePrintManagement.proto56
-rw-r--r--components/model-catalog/blueprint-model/service-blueprint/vFW/Definitions/vFW_spinup.json82
-rw-r--r--components/model-catalog/proto-definition/pom.xml81
-rw-r--r--components/model-catalog/proto-definition/proto/BluePrintManagement.proto38
-rw-r--r--components/model-catalog/proto-definition/proto/BluePrintProcessing.proto (renamed from components/model-catalog/api-definition/proto/BluePrintProcessing.proto)2
-rwxr-xr-xcomponents/model-catalog/resource-dictionary/starter-dictionary/nf-role.json4
-rwxr-xr-xcomponents/model-catalog/resource-dictionary/starter-dictionary/nfc-naming-code.json4
-rwxr-xr-xcomponents/model-catalog/resource-dictionary/starter-dictionary/onap_private_net_cidr.json4
-rw-r--r--[-rwxr-xr-x]components/model-catalog/resource-dictionary/starter-dictionary/primary-db-source.json (renamed from components/model-catalog/resource-dictionary/starter-dictionary/db-source.json)6
-rwxr-xr-xcomponents/model-catalog/resource-dictionary/starter-dictionary/private-prefix-id.json4
-rwxr-xr-xcomponents/model-catalog/resource-dictionary/starter-dictionary/protected-prefix-id.json4
-rwxr-xr-xcomponents/model-catalog/resource-dictionary/starter-dictionary/protected_private_net_cidr.json4
-rw-r--r--components/model-catalog/resource-dictionary/starter-dictionary/sample-primary-db-source.json (renamed from components/model-catalog/resource-dictionary/starter-dictionary/sample-db-source.json)6
-rwxr-xr-xcomponents/model-catalog/resource-dictionary/starter-dictionary/unprotected-prefix-id.json4
-rwxr-xr-xcomponents/model-catalog/resource-dictionary/starter-dictionary/unprotected_private_net_cidr.json4
-rwxr-xr-xcomponents/model-catalog/resource-dictionary/starter-dictionary/vf-module-label.json4
-rwxr-xr-xcomponents/model-catalog/resource-dictionary/starter-dictionary/vf-module-type.json4
-rwxr-xr-xcomponents/model-catalog/resource-dictionary/starter-dictionary/vf-naming-policy.json4
-rwxr-xr-xcomponents/model-catalog/resource-dictionary/starter-dictionary/vf-nf-code.json4
-rwxr-xr-xcomponents/model-catalog/resource-dictionary/starter-dictionary/vfccustomizationuuid.json4
-rwxr-xr-xcomponents/model-catalog/resource-dictionary/starter-dictionary/vm-type.json4
-rwxr-xr-xcomponents/model-catalog/resource-dictionary/starter-dictionary/vnfc-model-invariant-uuid.json4
-rwxr-xr-xcomponents/model-catalog/resource-dictionary/starter-dictionary/vnfc-model-version.json4
-rw-r--r--components/parent/pom.xml12
-rw-r--r--components/pom.xml4
-rw-r--r--components/resource-dict/load/model_type/node_type/source-primary-db.json (renamed from components/resource-dict/load/model_type/node_type/source-db.json)0
-rw-r--r--components/resource-dict/load/resource_dictionary/nf-role.json4
-rw-r--r--components/resource-dict/load/resource_dictionary/nfc-naming-code.json4
-rw-r--r--components/resource-dict/load/resource_dictionary/onap_private_net_cidr.json4
-rw-r--r--components/resource-dict/load/resource_dictionary/primary-db-source.json (renamed from components/resource-dict/load/resource_dictionary/db-source.json)6
-rw-r--r--components/resource-dict/load/resource_dictionary/private-prefix-id.json4
-rw-r--r--components/resource-dict/load/resource_dictionary/protected-prefix-id.json4
-rw-r--r--components/resource-dict/load/resource_dictionary/protected_private_net_cidr.json4
-rw-r--r--components/resource-dict/load/resource_dictionary/unprotected-prefix-id.json4
-rw-r--r--components/resource-dict/load/resource_dictionary/unprotected_private_net_cidr.json4
-rw-r--r--components/resource-dict/load/resource_dictionary/vf-module-label.json4
-rw-r--r--components/resource-dict/load/resource_dictionary/vf-module-type.json4
-rw-r--r--components/resource-dict/load/resource_dictionary/vf-naming-policy.json4
-rw-r--r--components/resource-dict/load/resource_dictionary/vf-nf-code.json4
-rw-r--r--components/resource-dict/load/resource_dictionary/vfccustomizationuuid.json4
-rw-r--r--components/resource-dict/load/resource_dictionary/vm-type.json4
-rw-r--r--components/resource-dict/load/resource_dictionary/vnfc-model-invariant-uuid.json4
-rw-r--r--components/resource-dict/load/resource_dictionary/vnfc-model-version.json4
-rw-r--r--components/resource-dict/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/resource/dict/ResourceDictionaryConstants.kt4
-rw-r--r--components/resource-dict/src/test/java/org/onap/ccsdk/apps/controllerblueprints/resource/dict/ResourceDefinitionTest.java4
-rw-r--r--components/resource-dict/src/test/java/org/onap/ccsdk/apps/controllerblueprints/resource/dict/factory/ResourceSourceMappingFactoryTest.java6
-rw-r--r--components/resource-dict/src/test/java/org/onap/ccsdk/apps/controllerblueprints/resource/dict/service/ResourceDefinitionValidationServiceTest.java4
-rw-r--r--components/resource-dict/src/test/java/org/onap/ccsdk/apps/controllerblueprints/resource/dict/utils/ResourceDictionaryUtilsTest.java6
-rw-r--r--components/resource-dict/src/test/kotlin/org/onap/ccsdk/apps/controllerblueprints/resource/dict/utils/ResourceDictionaryTestUtils.kt (renamed from components/resource-dict/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/resource/dict/utils/ResourceDictionaryTestUtils.kt)2
-rw-r--r--components/resource-dict/src/test/resources/validation/cyclic.json2
-rw-r--r--components/resource-dict/src/test/resources/validation/duplicate.json2
-rw-r--r--components/resource-dict/src/test/resources/validation/success.json2
63 files changed, 518 insertions, 289 deletions
diff --git a/components/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/BluePrintConstants.kt b/components/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/BluePrintConstants.kt
index 102e2ebd3..4ef0e82b2 100644
--- a/components/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/BluePrintConstants.kt
+++ b/components/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/BluePrintConstants.kt
@@ -27,16 +27,18 @@ object BluePrintConstants {
const val RESPONSE_HEADER_TRANSACTION_ID: String = "X-ONAP-RequestID"
const val RESPONSE_HEADER_MINOR_VERSION: String = "X-MinorVersion"
const val RESPONSE_HEADER_PATCH_VERSION: String = "X-PatchVersion"
- const val RESPONSE_HEADER_LATEST_VERSION: String = "X-LatestVersion"
-
- const val STATUS_SUCCESS: String = "success"
- const val STATUS_FAILURE: String = "failure"
-
- const val TYPE_DEFAULT: String = "default"
+ const val RESPONSE_HEADER_LATEST_VERSION: String = "X-LatestVersion"
+
+ const val STATUS_SUCCESS: String = "success"
+ const val STATUS_PROCESSING: String = "processing"
+ const val STATUS_FAILURE: String = "failure"
+
+ const val TYPE_DEFAULT: String = "default"
const val DATA_TYPE_STRING: String = "string"
const val DATA_TYPE_INTEGER: String = "integer"
const val DATA_TYPE_FLOAT: String = "float"
+ const val DATA_TYPE_DOUBLE: String = "double"
const val DATA_TYPE_BOOLEAN: String = "boolean"
const val DATA_TYPE_TIMESTAMP: String = "timestamp"
const val DATA_TYPE_NULL: String = "null"
diff --git a/components/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/BluePrintTypes.kt b/components/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/BluePrintTypes.kt
index 64797ed40..4c35b53a2 100644
--- a/components/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/BluePrintTypes.kt
+++ b/components/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/BluePrintTypes.kt
@@ -103,6 +103,7 @@ object BluePrintTypes {
validTypes.add(BluePrintConstants.DATA_TYPE_STRING)
validTypes.add(BluePrintConstants.DATA_TYPE_INTEGER)
validTypes.add(BluePrintConstants.DATA_TYPE_FLOAT)
+ validTypes.add(BluePrintConstants.DATA_TYPE_DOUBLE)
validTypes.add(BluePrintConstants.DATA_TYPE_BOOLEAN)
validTypes.add(BluePrintConstants.DATA_TYPE_TIMESTAMP)
validTypes.add(BluePrintConstants.DATA_TYPE_NULL)
@@ -117,6 +118,7 @@ object BluePrintTypes {
validTypes.add(BluePrintConstants.DATA_TYPE_STRING)
validTypes.add(BluePrintConstants.DATA_TYPE_INTEGER)
validTypes.add(BluePrintConstants.DATA_TYPE_FLOAT)
+ validTypes.add(BluePrintConstants.DATA_TYPE_DOUBLE)
validTypes.add(BluePrintConstants.DATA_TYPE_BOOLEAN)
validTypes.add(BluePrintConstants.DATA_TYPE_TIMESTAMP)
validTypes.add(BluePrintConstants.DATA_TYPE_NULL)
diff --git a/components/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/CustomFunctions.kt b/components/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/CustomFunctions.kt
index 4d1d9b653..11f709c9a 100644
--- a/components/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/CustomFunctions.kt
+++ b/components/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/CustomFunctions.kt
@@ -112,25 +112,40 @@ fun MutableMap<String, JsonNode>.getAsDouble(key: String): Double {
// Checks
fun checkNotEmpty(value: String?): Boolean {
- return value != null && value.isNotEmpty()
+ return value != null && value.isNotBlank()
}
-fun checkNotEmptyNThrow(value: String?, message: String? = value.plus(" is null/empty ")): Boolean {
- val notEmpty = value != null && value.isNotEmpty()
+fun checkNotEmptyOrThrow(value: String?, message: String? = value.plus(" is null/empty ")): Boolean {
+ val notEmpty = checkNotEmpty(value)
if (!notEmpty) {
throw BluePrintException(message!!)
}
return notEmpty
}
+fun checkEqualsOrThrow(value1: String?, value2: String?, lazyMessage: () -> Any): Boolean {
+ if (value1.equals(value2, ignoreCase = true)) {
+ return true
+ } else {
+ throw BluePrintException(lazyMessage().toString())
+ }
+}
+
+fun nullToEmpty(value: String?): String {
+ return if (checkNotEmpty(value)) value!! else ""
+}
+
+fun returnNotEmptyOrThrow(value: String?, lazyMessage: () -> Any): String {
+ if (checkNotEmpty(value)) {
+ return value!!
+ } else {
+ throw IllegalStateException(lazyMessage().toString())
+ }
+}
+
fun InputStream.toFile(path: String): File {
val file = File(path)
file.outputStream().use { this.copyTo(it) }
return file
}
-
-
-
-
-
diff --git a/components/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/data/BlueprintErrorCode.kt b/components/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/data/BlueprintErrorCode.kt
new file mode 100644
index 000000000..bef174b9d
--- /dev/null
+++ b/components/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/data/BlueprintErrorCode.kt
@@ -0,0 +1,97 @@
+/*
+ * Copyright © 2018-2019 Bell Canada Intellectual Property.
+ *
+ * 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.core.data
+
+import java.util.HashMap
+
+/**
+ * ErrorCode.java Purpose: Maintain a list of HTTP status codes
+ *
+ * @author Steve Siani
+ * @version 1.0
+ */
+enum class ErrorCode (val value: Int, val httpCode: Int) {
+
+ /// TODO: Add more attribute for each needed application protocol
+ // TODO: Example: INVALID_FILE_EXTENSION(2, 415, 25)
+ GENERIC_FAILURE(1, 500) {
+ override fun message(detailMsg: String): String {
+ return "Generic failure. Details : {$detailMsg}"
+ }
+ },
+ INVALID_FILE_EXTENSION(2, 415) {
+ override fun message(detailMsg: String): String {
+ return "Unexpected file extension. Details : {$detailMsg}"
+ }
+ },
+ BLUEPRINT_PATH_MISSING(3, 503) {
+ override fun message(detailMsg: String): String {
+ return "Blueprint path missing or wrong. Details : {$detailMsg}"
+ }
+ },
+ BLUEPRINT_WRITING_FAIL(4, 503) {
+ override fun message(detailMsg: String): String {
+ return "Fail to write blueprint files. Details : {$detailMsg}"
+ }
+ },
+ IO_FILE_INTERRUPT(5, 503) {
+ override fun message(detailMsg: String): String {
+ return "IO file system interruption. Details : {$detailMsg}"
+ }
+ },
+ INVALID_REQUEST_FORMAT(6, 400) {
+ override fun message(detailMsg: String): String {
+ return "Bad request. Details : {$detailMsg}"
+ }
+ },
+ UNAUTHORIZED_REQUEST(7, 401) {
+ override fun message(detailMsg: String): String {
+ return "The request requires user authentication. Details : {$detailMsg}"
+ }
+ },
+ REQUEST_NOT_FOUND(8, 404) {
+ override fun message(detailMsg: String): String {
+ return "Request mapping doesn't exist. Details : {$detailMsg}"
+ }
+ },
+ RESOURCE_NOT_FOUND(9, 404) {
+ override fun message(detailMsg: String): String {
+ return "No response was found for this request in the server. Details : {$detailMsg}"
+ }
+ },
+ CONFLICT_ADDING_RESOURCE(10, 409) {
+ override fun message(detailMsg: String): String {
+ return "Duplicated entry while saving Blueprint. Details : {$detailMsg}"
+ }
+ };
+
+ abstract fun message(detailMsg: String): String
+
+ companion object {
+
+ private val map = HashMap<Int, ErrorCode>()
+
+ init {
+ for (errorCode in ErrorCode.values()) {
+ map[errorCode.value] = errorCode
+ }
+ }
+
+ fun valueOf(value: Int): ErrorCode? {
+ return if (map.containsKey(value)) map[value] else map[1]
+ }
+ }
+} \ No newline at end of file
diff --git a/components/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/interfaces/BluePrintCatalogService.kt b/components/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/interfaces/BluePrintCatalogService.kt
index 9186635ee..c99cdf749 100755
--- a/components/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/interfaces/BluePrintCatalogService.kt
+++ b/components/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/interfaces/BluePrintCatalogService.kt
@@ -16,25 +16,44 @@
package org.onap.ccsdk.apps.controllerblueprints.core.interfaces
-interface BluePrintCatalogService {
+import org.jetbrains.annotations.NotNull
+import org.jetbrains.annotations.Nullable
+import org.onap.ccsdk.apps.controllerblueprints.core.BluePrintException
+import java.io.File
+import java.nio.file.Path
- /**
- * Upload the CBA Zip fle to data base and return the Database identifier
- */
- fun uploadToDataBase(file: String, validate : Boolean): String
+interface BluePrintCatalogService {
/**
- * Download the CBA zip file from the data base and place it in a path and return the CBA zip absolute path
+ * Save the CBA to database.
+ * @param blueprintFile Either a directory, or an archive
+ * @param validate whether to validate blueprint content. Default true.
+ * @return The unique blueprint identifier
+ * @throws BluePrintException if process failed
*/
- fun downloadFromDataBase(name: String, version: String, path: String): String
+ @NotNull
+ @Throws(BluePrintException::class)
+ fun saveToDatabase(@NotNull blueprintFile: File, @Nullable validate: Boolean = true): String
/**
- * Get the Blueprint from Data Base and Download it under working directory and return the path path
+ * Retrieve the CBA from database either archived or extracted.
+ * @param name Name of the blueprint
+ * @param version Version of the blueprint
+ * @param extract true to extract the content, false for archived content. Default to true
+ * @return Path where CBA is located
+ * @throws BluePrintException if process failed
*/
- fun prepareBluePrint(name: String, version: String): String
+ @NotNull
+ @Throws(BluePrintException::class)
+ fun getFromDatabase(@NotNull name: String, @NotNull version: String, @Nullable extract: Boolean = true): Path
/**
- * Get blueprint archive with zip file from Data Base
+ * Delete the CBA from database.
+ * @param name Name of the blueprint
+ * @param version Version of the blueprint
+ * @throws BluePrintException if process failed
*/
- fun downloadFromDataBase(uuid: String, path: String): String
+ @NotNull
+ @Throws(BluePrintException::class)
+ fun deleteFromDatabase(@NotNull name: String, @NotNull version: String)
} \ No newline at end of file
diff --git a/components/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/service/BluePrintValidatorService.kt b/components/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/service/BluePrintValidatorService.kt
index 178373704..b33cc3f0c 100644
--- a/components/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/service/BluePrintValidatorService.kt
+++ b/components/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/service/BluePrintValidatorService.kt
@@ -523,7 +523,7 @@ open class BluePrintValidatorDefaultService : BluePrintValidatorService {
@Throws(BluePrintException::class)
open fun validateImplementation(implementation: Implementation) {
- checkNotEmptyNThrow(implementation.primary)
+ checkNotEmptyOrThrow(implementation.primary)
}
@Throws(BluePrintException::class)
diff --git a/components/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/utils/BluePrintArchiveUtils.kt b/components/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/utils/BluePrintArchiveUtils.kt
index ab5175dea..fe7929e85 100755
--- a/components/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/utils/BluePrintArchiveUtils.kt
+++ b/components/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/utils/BluePrintArchiveUtils.kt
@@ -24,13 +24,18 @@ import org.apache.commons.compress.archivers.zip.ZipArchiveOutputStream
import org.apache.commons.io.IOUtils
import org.onap.ccsdk.apps.controllerblueprints.core.BluePrintException
import org.onap.ccsdk.apps.controllerblueprints.core.BluePrintProcessorException
-import java.io.*
+import org.slf4j.LoggerFactory
+import java.io.BufferedInputStream
+import java.io.File
+import java.io.FileInputStream
+import java.io.IOException
import java.nio.charset.Charset
import java.util.zip.ZipFile
class BluePrintArchiveUtils {
companion object {
+ private val log = LoggerFactory.getLogger(BluePrintArchiveUtils::class.java)
fun getFileContent(fileName: String): String = runBlocking {
async {
@@ -51,50 +56,20 @@ class BluePrintArchiveUtils {
/**
* Create a new Zip from a root directory
*
- * @param directory the base directory
- * @param filename the output filename
+ * @param source the base directory
+ * @param destination the output filename
* @param absolute store absolute filepath (from directory) or only filename
* @return True if OK
*/
fun compress(source: File, destination: File, absolute: Boolean): Boolean {
- // recursive call
- val zaos: ZipArchiveOutputStream
try {
- zaos = ZipArchiveOutputStream(FileOutputStream(destination))
- } catch (e: FileNotFoundException) {
- return false
- }
-
- try {
- recurseFiles(source, source, zaos, absolute)
- } catch (e2: IOException) {
- try {
- zaos.close()
- } catch (e: IOException) {
- // ignore
+ ZipArchiveOutputStream(destination).use {
+ recurseFiles(source, source, it, absolute)
}
-
+ } catch (e: Exception) {
+ log.error("Fail to compress folder(:$source) to path(${destination.path}", e)
return false
}
-
- try {
- zaos.finish()
- } catch (e1: IOException) {
- // ignore
- }
-
- try {
- zaos.flush()
- } catch (e: IOException) {
- // ignore
- }
-
- try {
- zaos.close()
- } catch (e: IOException) {
- // ignore
- }
-
return true
}
@@ -113,21 +88,19 @@ class BluePrintArchiveUtils {
if (file.isDirectory) {
// recursive call
val files = file.listFiles()
- for (file2 in files!!) {
- recurseFiles(root, file2, zaos, absolute)
+ for (fileChild in files!!) {
+ recurseFiles(root, fileChild, zaos, absolute)
}
} else if (!file.name.endsWith(".zip") && !file.name.endsWith(".ZIP")) {
- var filename: String? = null
- if (absolute) {
- filename = file.absolutePath.substring(root.absolutePath.length)
+ val filename = if (absolute) {
+ file.absolutePath.substring(root.absolutePath.length)
} else {
- filename = file.name
+ file.name
}
val zae = ZipArchiveEntry(filename)
- zae.setSize(file.length())
+ zae.size = file.length()
zaos.putArchiveEntry(zae)
- val fis = FileInputStream(file)
- IOUtils.copy(fis, zaos)
+ FileInputStream(file).use { IOUtils.copy(it, zaos) }
zaos.closeArchiveEntry()
}
}
diff --git a/components/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/utils/BluePrintFileUtils.kt b/components/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/utils/BluePrintFileUtils.kt
index 5a10e43f4..9746bf579 100755
--- a/components/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/utils/BluePrintFileUtils.kt
+++ b/components/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/utils/BluePrintFileUtils.kt
@@ -24,6 +24,7 @@ import org.apache.commons.io.FileUtils
import org.apache.commons.lang3.StringUtils
import org.onap.ccsdk.apps.controllerblueprints.core.BluePrintConstants
import org.onap.ccsdk.apps.controllerblueprints.core.BluePrintException
+import org.onap.ccsdk.apps.controllerblueprints.core.data.ErrorCode
import org.onap.ccsdk.apps.controllerblueprints.core.data.ImportDefinition
import org.onap.ccsdk.apps.controllerblueprints.core.data.ServiceTemplate
import org.onap.ccsdk.apps.controllerblueprints.core.service.BluePrintContext
@@ -105,7 +106,8 @@ class BluePrintFileUtils {
val definitionDir = File(definitionPath)
check(definitionDir.exists()) {
- throw BluePrintException("couldn't get definition file under path(${definitionDir.absolutePath})")
+ throw BluePrintException(ErrorCode.BLUEPRINT_PATH_MISSING.value, "couldn't get definition file under " +
+ "path(${definitionDir.absolutePath})")
}
blueprintContext.serviceTemplate.dataTypes?.let {
@@ -192,7 +194,8 @@ class BluePrintFileUtils {
Files.write(definitionFile.toPath(), content.toByteArray(), StandardOpenOption.CREATE_NEW)
check(definitionFile.exists()) {
- throw BluePrintException("couldn't write definition file under path(${definitionFile.absolutePath})")
+ throw BluePrintException(ErrorCode.BLUEPRINT_WRITING_FAIL.value, "couldn't write definition file under " +
+ "path(${definitionFile.absolutePath})")
}
}
@@ -201,7 +204,8 @@ class BluePrintFileUtils {
Files.write(typeFile.toPath(), content.toByteArray(), StandardOpenOption.CREATE_NEW)
check(typeFile.exists()) {
- throw BluePrintException("couldn't write $type.json file under path(${typeFile.absolutePath})")
+ throw BluePrintException(ErrorCode.BLUEPRINT_WRITING_FAIL.value, "couldn't write $type.json file under " +
+ "path(${typeFile.absolutePath})")
}
}
@@ -213,9 +217,21 @@ class BluePrintFileUtils {
"\nTemplate-Tags: <TAGS>"
}
+
+ fun getBluePrintFile(fileName: String, targetPath: Path) : File {
+ val filePath = targetPath.resolve(fileName).toString()
+ val file = File(filePath)
+ check(file.exists()) {
+ throw BluePrintException(ErrorCode.BLUEPRINT_PATH_MISSING.value, "couldn't get definition file under " +
+ "path(${file.absolutePath})")
+ }
+ return file
+ }
+
fun getCbaStorageDirectory(path: String): Path {
check(StringUtils.isNotBlank(path)) {
- throw BluePrintException("CBA Path is missing.")
+ throw BluePrintException(ErrorCode.BLUEPRINT_PATH_MISSING.value, "couldn't get " +
+ "Blueprint folder under path($path)")
}
val fileStorageLocation = Paths.get(path).toAbsolutePath().normalize()
diff --git a/components/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/utils/JacksonUtils.kt b/components/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/utils/JacksonUtils.kt
index 6321a8385..2e5a040c5 100644
--- a/components/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/utils/JacksonUtils.kt
+++ b/components/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/utils/JacksonUtils.kt
@@ -33,9 +33,11 @@ import kotlinx.coroutines.withContext
import org.apache.commons.io.IOUtils
import org.onap.ccsdk.apps.controllerblueprints.core.BluePrintConstants
import org.onap.ccsdk.apps.controllerblueprints.core.BluePrintException
+import org.onap.ccsdk.apps.controllerblueprints.core.BluePrintProcessorException
import org.onap.ccsdk.apps.controllerblueprints.core.BluePrintTypes
import java.io.File
import java.nio.charset.Charset
+import kotlin.reflect.jvm.internal.impl.load.kotlin.JvmType
/**
*
@@ -174,8 +176,13 @@ class JacksonUtils {
return getMapFromJson(content, valueType)
}
+ fun <T> getInstanceFromMap(properties: MutableMap<String, JsonNode>, classType: Class<T>): T {
+ return readValue(getJson(properties), classType)
+ ?: throw BluePrintProcessorException("failed to transform content ($properties) to type ($classType)")
+ }
+
fun checkJsonNodeValueOfType(type: String, jsonNode: JsonNode): Boolean {
- if (BluePrintTypes.validPrimitiveTypes().contains(type)) {
+ if (BluePrintTypes.validPrimitiveTypes().contains(type.toLowerCase())) {
return checkJsonNodeValueOfPrimitiveType(type, jsonNode)
} else if (BluePrintTypes.validCollectionTypes().contains(type)) {
return checkJsonNodeValueOfCollectionType(type, jsonNode)
@@ -183,59 +190,76 @@ class JacksonUtils {
return false
}
+ fun checkIfPrimitiveType(primitiveType: String): Boolean {
+ return when (primitiveType.toLowerCase()) {
+ BluePrintConstants.DATA_TYPE_STRING -> true
+ BluePrintConstants.DATA_TYPE_BOOLEAN -> true
+ BluePrintConstants.DATA_TYPE_INTEGER -> true
+ BluePrintConstants.DATA_TYPE_FLOAT -> true
+ BluePrintConstants.DATA_TYPE_DOUBLE -> true
+ BluePrintConstants.DATA_TYPE_TIMESTAMP -> true
+ else -> false
+ }
+ }
+
fun checkJsonNodeValueOfPrimitiveType(primitiveType: String, jsonNode: JsonNode): Boolean {
- when (primitiveType) {
- BluePrintConstants.DATA_TYPE_STRING -> return jsonNode.isTextual
- BluePrintConstants.DATA_TYPE_BOOLEAN -> return jsonNode.isBoolean
- BluePrintConstants.DATA_TYPE_INTEGER -> return jsonNode.isInt
- BluePrintConstants.DATA_TYPE_FLOAT -> return jsonNode.isDouble
- BluePrintConstants.DATA_TYPE_TIMESTAMP -> return jsonNode.isTextual
- else -> return false
+ return when (primitiveType.toLowerCase()) {
+ BluePrintConstants.DATA_TYPE_STRING -> jsonNode.isTextual
+ BluePrintConstants.DATA_TYPE_BOOLEAN -> jsonNode.isBoolean
+ BluePrintConstants.DATA_TYPE_INTEGER -> jsonNode.isInt
+ BluePrintConstants.DATA_TYPE_FLOAT -> jsonNode.isDouble
+ BluePrintConstants.DATA_TYPE_DOUBLE -> jsonNode.isDouble
+ BluePrintConstants.DATA_TYPE_TIMESTAMP -> jsonNode.isTextual
+ else -> false
}
}
fun checkJsonNodeValueOfCollectionType(type: String, jsonNode: JsonNode): Boolean {
- when (type) {
- BluePrintConstants.DATA_TYPE_LIST -> return jsonNode.isArray
- BluePrintConstants.DATA_TYPE_MAP -> return jsonNode.isContainerNode
- else -> return false
+ return when (type.toLowerCase()) {
+ BluePrintConstants.DATA_TYPE_LIST -> jsonNode.isArray
+ BluePrintConstants.DATA_TYPE_MAP -> jsonNode.isContainerNode
+ else -> false
}
}
fun populatePrimitiveValues(key: String, value: Any, primitiveType: String, objectNode: ObjectNode) {
- when (primitiveType) {
+ when (primitiveType.toLowerCase()) {
BluePrintConstants.DATA_TYPE_BOOLEAN -> objectNode.put(key, value as Boolean)
BluePrintConstants.DATA_TYPE_INTEGER -> objectNode.put(key, value as Int)
BluePrintConstants.DATA_TYPE_FLOAT -> objectNode.put(key, value as Float)
+ BluePrintConstants.DATA_TYPE_DOUBLE -> objectNode.put(key, value as Double)
BluePrintConstants.DATA_TYPE_TIMESTAMP -> objectNode.put(key, value as String)
else -> objectNode.put(key, value as String)
}
}
fun populatePrimitiveValues(value: Any, primitiveType: String, arrayNode: ArrayNode) {
- when (primitiveType) {
+ when (primitiveType.toLowerCase()) {
BluePrintConstants.DATA_TYPE_BOOLEAN -> arrayNode.add(value as Boolean)
BluePrintConstants.DATA_TYPE_INTEGER -> arrayNode.add(value as Int)
BluePrintConstants.DATA_TYPE_FLOAT -> arrayNode.add(value as Float)
+ BluePrintConstants.DATA_TYPE_DOUBLE -> arrayNode.add(value as Double)
BluePrintConstants.DATA_TYPE_TIMESTAMP -> arrayNode.add(value as String)
else -> arrayNode.add(value as String)
}
}
fun populatePrimitiveDefaultValues(key: String, primitiveType: String, objectNode: ObjectNode) {
- when (primitiveType) {
+ when (primitiveType.toLowerCase()) {
BluePrintConstants.DATA_TYPE_BOOLEAN -> objectNode.put(key, false)
BluePrintConstants.DATA_TYPE_INTEGER -> objectNode.put(key, 0)
BluePrintConstants.DATA_TYPE_FLOAT -> objectNode.put(key, 0.0)
+ BluePrintConstants.DATA_TYPE_DOUBLE -> objectNode.put(key, 0.0)
else -> objectNode.put(key, "")
}
}
fun populatePrimitiveDefaultValuesForArrayNode(primitiveType: String, arrayNode: ArrayNode) {
- when (primitiveType) {
+ when (primitiveType.toLowerCase()) {
BluePrintConstants.DATA_TYPE_BOOLEAN -> arrayNode.add(false)
BluePrintConstants.DATA_TYPE_INTEGER -> arrayNode.add(0)
BluePrintConstants.DATA_TYPE_FLOAT -> arrayNode.add(0.0)
+ BluePrintConstants.DATA_TYPE_DOUBLE -> arrayNode.add(0.0)
else -> arrayNode.add("")
}
}
@@ -250,13 +274,15 @@ class JacksonUtils {
}
}
- fun convertPrimitiveResourceValue(type: String, value: String): JsonNode? {
- when (type) {
- BluePrintConstants.DATA_TYPE_BOOLEAN -> return JacksonUtils.getJsonNode(value as Boolean)
- BluePrintConstants.DATA_TYPE_INTEGER -> return JacksonUtils.getJsonNode(value as Int)
- BluePrintConstants.DATA_TYPE_FLOAT -> return JacksonUtils.getJsonNode(value as Float)
- else -> return JacksonUtils.getJsonNode(value)
+ fun convertPrimitiveResourceValue(type: String, value: String): JsonNode {
+ return when (type.toLowerCase()) {
+ BluePrintConstants.DATA_TYPE_BOOLEAN -> jsonNodeFromObject(java.lang.Boolean.valueOf(value))
+ BluePrintConstants.DATA_TYPE_INTEGER -> jsonNodeFromObject(Integer.valueOf(value))
+ BluePrintConstants.DATA_TYPE_FLOAT -> jsonNodeFromObject(java.lang.Float.valueOf(value))
+ BluePrintConstants.DATA_TYPE_DOUBLE -> jsonNodeFromObject(java.lang.Double.valueOf(value))
+ else -> getJsonNode(value)
}
}
+
}
} \ No newline at end of file
diff --git a/components/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/validation/BluePrintNodeTypeValidatorImpl.kt b/components/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/validation/BluePrintNodeTypeValidatorImpl.kt
index 2e4a733a8..1077f347e 100644
--- a/components/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/validation/BluePrintNodeTypeValidatorImpl.kt
+++ b/components/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/validation/BluePrintNodeTypeValidatorImpl.kt
@@ -20,7 +20,7 @@ import com.att.eelf.configuration.EELFLogger
import com.att.eelf.configuration.EELFManager
import org.onap.ccsdk.apps.controllerblueprints.core.BluePrintException
import org.onap.ccsdk.apps.controllerblueprints.core.BluePrintTypes
-import org.onap.ccsdk.apps.controllerblueprints.core.checkNotEmptyNThrow
+import org.onap.ccsdk.apps.controllerblueprints.core.checkNotEmptyOrThrow
import org.onap.ccsdk.apps.controllerblueprints.core.data.*
import org.onap.ccsdk.apps.controllerblueprints.core.interfaces.BluePrintNodeTypeValidator
import org.onap.ccsdk.apps.controllerblueprints.core.interfaces.BluePrintTypeValidatorService
@@ -149,7 +149,7 @@ open class BluePrintNodeTypeValidatorImpl(private val bluePrintTypeValidatorServ
}
open fun validateImplementation(implementation: Implementation) {
- checkNotEmptyNThrow(implementation.primary)
+ checkNotEmptyOrThrow(implementation.primary)
}
} \ No newline at end of file
diff --git a/components/core/src/test/resources/dictionary/dictionary_schema.json b/components/core/src/test/resources/dictionary/dictionary_schema.json
index d03170050..f9ef9eeed 100644
--- a/components/core/src/test/resources/dictionary/dictionary_schema.json
+++ b/components/core/src/test/resources/dictionary/dictionary_schema.json
@@ -104,7 +104,7 @@
}
}
},
- "db": {
+ "primary-db": {
"type": "object",
"properties": {
"query": {
@@ -210,7 +210,7 @@
}
}
},
- "db": {
+ "primary-db": {
"type": "object",
"properties": {
"names": {
diff --git a/components/model-catalog/api-definition/proto/BluePrintManagement.proto b/components/model-catalog/api-definition/proto/BluePrintManagement.proto
deleted file mode 100644
index 55f9466e4..000000000
--- a/components/model-catalog/api-definition/proto/BluePrintManagement.proto
+++ /dev/null
@@ -1,56 +0,0 @@
-syntax = "proto3";
-option java_multiple_files = true;
-package org.onap.ccsdk.apps.controllerblueprints.management.api;
-
-message BluePrintUploadInput {
- CommonHeader commonHeader = 1;
- string blueprintName = 2;
- string blueprintVersion = 3;
- FileChunk fileChunk = 4;
-}
-
-message FileChunk {
- bytes chunk = 1;
-}
-
-message BluePrintUploadOutput {
- CommonHeader commonHeader = 1;
- Status status = 3;
-}
-
-message BluePrintRemoveInput {
- CommonHeader commonHeader = 1;
- string blueprintName = 2;
- string blueprintVersion = 3;
-}
-
-message BluePrintRemoveOutput {
- CommonHeader commonHeader = 1;
- Status status = 3;
-}
-
-message CommonHeader {
- string timestamp = 1;
- string originatorId = 23;
- string requestId = 3;
- string subRequestId = 4;
-}
-
-message ActionIdentifiers {
- string blueprintName = 1;
- string blueprintVersion = 2;
- string actionName = 3;
- string mode = 4;
-}
-
-message Status {
- string timestamp = 1;
- int32 code = 2;
- string message = 3;
- string errorMessage = 4;
-}
-
-service BluePrintManagementService {
- rpc uploadBlueprint (BluePrintUploadInput) returns (BluePrintUploadOutput);
- rpc removeBlueprint (BluePrintRemoveInput) returns (BluePrintRemoveOutput);
-}
diff --git a/components/model-catalog/blueprint-model/service-blueprint/vFW/Definitions/vFW_spinup.json b/components/model-catalog/blueprint-model/service-blueprint/vFW/Definitions/vFW_spinup.json
index 1137c1d58..13847bbb4 100644
--- a/components/model-catalog/blueprint-model/service-blueprint/vFW/Definitions/vFW_spinup.json
+++ b/components/model-catalog/blueprint-model/service-blueprint/vFW/Definitions/vFW_spinup.json
@@ -411,7 +411,7 @@
},
"input-param": false,
"dictionary-name": "nf-role",
- "dictionary-source": "db",
+ "dictionary-source": "primary-db",
"dependencies": [
"vnf-model-customization-uuid"
],
@@ -531,7 +531,7 @@
},
"input-param": false,
"dictionary-name": "protected-prefix-id",
- "dictionary-source": "db",
+ "dictionary-source": "primary-db",
"dependencies": [
],
@@ -555,7 +555,7 @@
},
"input-param": false,
"dictionary-name": "unprotected-prefix-id",
- "dictionary-source": "db",
+ "dictionary-source": "primary-db",
"dependencies": [
],
@@ -579,7 +579,7 @@
},
"input-param": false,
"dictionary-name": "vf-nf-code",
- "dictionary-source": "db",
+ "dictionary-source": "primary-db",
"dependencies": [
"vnf-model-customization-uuid"
],
@@ -740,7 +740,7 @@
},
"input-param": false,
"dictionary-name": "vf-module-type",
- "dictionary-source": "db",
+ "dictionary-source": "primary-db",
"dependencies": [
"vf-module-model-customization-uuid"
],
@@ -788,7 +788,7 @@
},
"input-param": false,
"dictionary-name": "vfccustomizationuuid",
- "dictionary-source": "db",
+ "dictionary-source": "primary-db",
"dependencies": [
"vf-module-model-customization-uuid"
],
@@ -836,7 +836,7 @@
},
"input-param": false,
"dictionary-name": "vm-type",
- "dictionary-source": "db",
+ "dictionary-source": "primary-db",
"dependencies": [
],
@@ -860,7 +860,7 @@
},
"input-param": false,
"dictionary-name": "vnfc-model-invariant-uuid",
- "dictionary-source": "db",
+ "dictionary-source": "primary-db",
"dependencies": [
"vfccustomizationuuid"
],
@@ -884,7 +884,7 @@
},
"input-param": false,
"dictionary-name": "vnfc-model-version",
- "dictionary-source": "db",
+ "dictionary-source": "primary-db",
"dependencies": [
"vfccustomizationuuid"
],
@@ -933,7 +933,7 @@
},
"input-param": false,
"dictionary-name": "nfc-naming-code",
- "dictionary-source": "db",
+ "dictionary-source": "primary-db",
"dependencies": [
"vfccustomizationuuid"
],
@@ -1107,7 +1107,7 @@
},
"input-param": false,
"dictionary-name": "unprotected_private_net_cidr",
- "dictionary-source": "db",
+ "dictionary-source": "primary-db",
"dependencies": [
],
@@ -1131,7 +1131,7 @@
},
"input-param": false,
"dictionary-name": "protected_private_net_cidr",
- "dictionary-source": "db",
+ "dictionary-source": "primary-db",
"dependencies": [
],
@@ -1205,7 +1205,7 @@
},
"input-param": false,
"dictionary-name": "onap_private_net_cidr",
- "dictionary-source": "db",
+ "dictionary-source": "primary-db",
"dependencies": [
],
@@ -1302,7 +1302,7 @@
},
"input-param": false,
"dictionary-name": "vf-module-label",
- "dictionary-source": "db",
+ "dictionary-source": "primary-db",
"dependencies": [
"vf-module-model-customization-uuid"
],
@@ -1326,7 +1326,7 @@
},
"input-param": false,
"dictionary-name": "private-prefix-id",
- "dictionary-source": "db",
+ "dictionary-source": "primary-db",
"dependencies": [
],
@@ -1535,7 +1535,7 @@
},
"input-param": false,
"dictionary-name": "vf-module-type",
- "dictionary-source": "db",
+ "dictionary-source": "primary-db",
"dependencies": [
"vf-module-model-customization-uuid"
],
@@ -1583,7 +1583,7 @@
},
"input-param": false,
"dictionary-name": "vfccustomizationuuid",
- "dictionary-source": "db",
+ "dictionary-source": "primary-db",
"dependencies": [
"vf-module-model-customization-uuid"
],
@@ -1631,7 +1631,7 @@
},
"input-param": false,
"dictionary-name": "vm-type",
- "dictionary-source": "db",
+ "dictionary-source": "primary-db",
"dependencies": [
],
@@ -1655,7 +1655,7 @@
},
"input-param": false,
"dictionary-name": "vnfc-model-invariant-uuid",
- "dictionary-source": "db",
+ "dictionary-source": "primary-db",
"dependencies": [
"vfccustomizationuuid"
],
@@ -1679,7 +1679,7 @@
},
"input-param": false,
"dictionary-name": "vnfc-model-version",
- "dictionary-source": "db",
+ "dictionary-source": "primary-db",
"dependencies": [
"vfccustomizationuuid"
],
@@ -1728,7 +1728,7 @@
},
"input-param": false,
"dictionary-name": "nfc-naming-code",
- "dictionary-source": "db",
+ "dictionary-source": "primary-db",
"dependencies": [
"vfccustomizationuuid"
],
@@ -1902,7 +1902,7 @@
},
"input-param": false,
"dictionary-name": "unprotected_private_net_cidr",
- "dictionary-source": "db",
+ "dictionary-source": "primary-db",
"dependencies": [
],
@@ -1926,7 +1926,7 @@
},
"input-param": false,
"dictionary-name": "onap_private_net_cidr",
- "dictionary-source": "db",
+ "dictionary-source": "primary-db",
"dependencies": [
],
@@ -2148,7 +2148,7 @@
},
"input-param": false,
"dictionary-name": "vf-module-label",
- "dictionary-source": "db",
+ "dictionary-source": "primary-db",
"dependencies": [
"vf-module-model-customization-uuid"
],
@@ -2172,7 +2172,7 @@
},
"input-param": false,
"dictionary-name": "private-prefix-id",
- "dictionary-source": "db",
+ "dictionary-source": "primary-db",
"dependencies": [
],
@@ -2357,7 +2357,7 @@
},
"input-param": false,
"dictionary-name": "vf-module-type",
- "dictionary-source": "db",
+ "dictionary-source": "primary-db",
"dependencies": [
"vf-module-model-customization-uuid"
],
@@ -2405,7 +2405,7 @@
},
"input-param": false,
"dictionary-name": "vfccustomizationuuid",
- "dictionary-source": "db",
+ "dictionary-source": "primary-db",
"dependencies": [
"vf-module-model-customization-uuid"
],
@@ -2453,7 +2453,7 @@
},
"input-param": false,
"dictionary-name": "vm-type",
- "dictionary-source": "db",
+ "dictionary-source": "primary-db",
"dependencies": [
],
@@ -2477,7 +2477,7 @@
},
"input-param": false,
"dictionary-name": "vnfc-model-invariant-uuid",
- "dictionary-source": "db",
+ "dictionary-source": "primary-db",
"dependencies": [
"vfccustomizationuuid"
],
@@ -2501,7 +2501,7 @@
},
"input-param": false,
"dictionary-name": "vnfc-model-version",
- "dictionary-source": "db",
+ "dictionary-source": "primary-db",
"dependencies": [
"vfccustomizationuuid"
],
@@ -2550,7 +2550,7 @@
},
"input-param": false,
"dictionary-name": "nfc-naming-code",
- "dictionary-source": "db",
+ "dictionary-source": "primary-db",
"dependencies": [
"vfccustomizationuuid"
],
@@ -2725,7 +2725,7 @@
},
"input-param": false,
"dictionary-name": "unprotected_private_net_cidr",
- "dictionary-source": "db",
+ "dictionary-source": "primary-db",
"dependencies": [
],
@@ -2749,7 +2749,7 @@
},
"input-param": false,
"dictionary-name": "protected_private_net_cidr",
- "dictionary-source": "db",
+ "dictionary-source": "primary-db",
"dependencies": [
],
@@ -2773,7 +2773,7 @@
},
"input-param": false,
"dictionary-name": "onap_private_net_cidr",
- "dictionary-source": "db",
+ "dictionary-source": "primary-db",
"dependencies": [
],
@@ -2946,7 +2946,7 @@
},
"input-param": false,
"dictionary-name": "vf-module-label",
- "dictionary-source": "db",
+ "dictionary-source": "primary-db",
"dependencies": [
"vf-module-model-customization-uuid"
],
@@ -2970,7 +2970,7 @@
},
"input-param": false,
"dictionary-name": "private-prefix-id",
- "dictionary-source": "db",
+ "dictionary-source": "primary-db",
"dependencies": [
],
@@ -3018,7 +3018,7 @@
},
"input-param": false,
"dictionary-name": "protected-prefix-id",
- "dictionary-source": "db",
+ "dictionary-source": "primary-db",
"dependencies": [
],
@@ -3082,7 +3082,7 @@
},
"input-param": false,
"dictionary-name": "vf-module-type",
- "dictionary-source": "db",
+ "dictionary-source": "primary-db",
"dependencies": [
"vf-module-model-customization-uuid"
],
@@ -3226,7 +3226,7 @@
},
"input-param": false,
"dictionary-name": "nf-role",
- "dictionary-source": "db",
+ "dictionary-source": "primary-db",
"dependencies": [
"vnf-model-customization-uuid"
],
@@ -3275,7 +3275,7 @@
},
"input-param": false,
"dictionary-name": "unprotected_private_net_cidr",
- "dictionary-source": "db",
+ "dictionary-source": "primary-db",
"dependencies": [
],
@@ -3299,7 +3299,7 @@
},
"input-param": false,
"dictionary-name": "protected_private_net_cidr",
- "dictionary-source": "db",
+ "dictionary-source": "primary-db",
"dependencies": [
],
diff --git a/components/model-catalog/proto-definition/pom.xml b/components/model-catalog/proto-definition/pom.xml
new file mode 100644
index 000000000..c1f77922c
--- /dev/null
+++ b/components/model-catalog/proto-definition/pom.xml
@@ -0,0 +1,81 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ * Copyright (C) 2019 Bell Canada
+*
+ * 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.
+ -->
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <parent>
+ <groupId>org.onap.ccsdk.apps.controllerblueprints</groupId>
+ <artifactId>modules</artifactId>
+ <version>0.4.1-SNAPSHOT</version>
+ </parent>
+
+ <artifactId>proto-definition</artifactId>
+ <packaging>jar</packaging>
+
+ <name>Controller Blueprints Proto Definition</name>
+ <description>Controller Blueprints Proto Definition</description>
+
+ <dependencies>
+ <dependency>
+ <groupId>io.grpc</groupId>
+ <artifactId>grpc-protobuf</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>io.grpc</groupId>
+ <artifactId>grpc-stub</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>com.google.protobuf</groupId>
+ <artifactId>protobuf-java-util</artifactId>
+ </dependency>
+ </dependencies>
+
+ <build>
+ <extensions>
+ <extension>
+ <groupId>kr.motd.maven</groupId>
+ <artifactId>os-maven-plugin</artifactId>
+ <version>1.6.1</version>
+ </extension>
+ </extensions>
+ <plugins>
+ <plugin>
+ <groupId>org.xolstice.maven.plugins</groupId>
+ <artifactId>protobuf-maven-plugin</artifactId>
+ <version>0.6.1</version>
+ <configuration>
+ <protocArtifact>
+ com.google.protobuf:protoc:3.5.1-1:exe:${os.detected.classifier}
+ </protocArtifact>
+ <pluginId>grpc-java</pluginId>
+ <pluginArtifact>
+ io.grpc:protoc-gen-grpc-java:1.16.1:exe:${os.detected.classifier}
+ </pluginArtifact>
+ <protoSourceRoot>proto</protoSourceRoot>
+ </configuration>
+ <executions>
+ <execution>
+ <goals>
+ <goal>compile</goal>
+ <goal>compile-custom</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+</project> \ No newline at end of file
diff --git a/components/model-catalog/proto-definition/proto/BluePrintManagement.proto b/components/model-catalog/proto-definition/proto/BluePrintManagement.proto
new file mode 100644
index 000000000..dc0680d57
--- /dev/null
+++ b/components/model-catalog/proto-definition/proto/BluePrintManagement.proto
@@ -0,0 +1,38 @@
+syntax = "proto3";
+option java_multiple_files = true;
+package org.onap.ccsdk.apps.controllerblueprints.management.api;
+
+message BluePrintManagementInput {
+ CommonHeader commonHeader = 1;
+ string blueprintName = 2;
+ string blueprintVersion = 3;
+ FileChunk fileChunk = 4;
+}
+
+message BluePrintManagementOutput {
+ CommonHeader commonHeader = 1;
+ Status status = 3;
+}
+
+message FileChunk {
+ bytes chunk = 1;
+}
+
+message CommonHeader {
+ string timestamp = 1;
+ string originatorId = 23;
+ string requestId = 3;
+ string subRequestId = 4;
+}
+
+message Status {
+ string timestamp = 1;
+ int32 code = 2;
+ string message = 3;
+ string errorMessage = 4;
+}
+
+service BluePrintManagementService {
+ rpc uploadBlueprint (BluePrintManagementInput) returns (BluePrintManagementOutput);
+ rpc removeBlueprint (BluePrintManagementInput) returns (BluePrintManagementOutput);
+}
diff --git a/components/model-catalog/api-definition/proto/BluePrintProcessing.proto b/components/model-catalog/proto-definition/proto/BluePrintProcessing.proto
index 8fa4a13fa..d8ad571b6 100644
--- a/components/model-catalog/api-definition/proto/BluePrintProcessing.proto
+++ b/components/model-catalog/proto-definition/proto/BluePrintProcessing.proto
@@ -45,5 +45,5 @@ message Status {
}
service BluePrintProcessingService {
- rpc process (ExecutionServiceInput) returns (stream ExecutionServiceOutput);
+ rpc process (stream ExecutionServiceInput) returns (stream ExecutionServiceOutput);
}
diff --git a/components/model-catalog/resource-dictionary/starter-dictionary/nf-role.json b/components/model-catalog/resource-dictionary/starter-dictionary/nf-role.json
index 819c7e602..6da5ea22f 100755
--- a/components/model-catalog/resource-dictionary/starter-dictionary/nf-role.json
+++ b/components/model-catalog/resource-dictionary/starter-dictionary/nf-role.json
@@ -7,8 +7,8 @@
"type" : "string"
},
"sources" : {
- "db" : {
- "type" : "source-db",
+ "primary-db" : {
+ "type" : "source-primary-db",
"properties" : {
"type" : "SQL",
"query" : "select sdnctl.VF_MODEL.nf_role as vf_model_role from sdnctl.VF_MODEL where sdnctl.VF_MODEL.customization_uuid=:vnfmodelcustomizationuuid",
diff --git a/components/model-catalog/resource-dictionary/starter-dictionary/nfc-naming-code.json b/components/model-catalog/resource-dictionary/starter-dictionary/nfc-naming-code.json
index b82791877..4e1ba2b0a 100755
--- a/components/model-catalog/resource-dictionary/starter-dictionary/nfc-naming-code.json
+++ b/components/model-catalog/resource-dictionary/starter-dictionary/nfc-naming-code.json
@@ -7,8 +7,8 @@
"type" : "string"
},
"sources" : {
- "db" : {
- "type" : "source-db",
+ "primary-db" : {
+ "type" : "source-primary-db",
"properties" : {
"type" : "SQL",
"query" : "select nfc_naming_code as nfc_naming_code from sdnctl.VFC_MODEL where customization_uuid=:vfccustomizationuuid",
diff --git a/components/model-catalog/resource-dictionary/starter-dictionary/onap_private_net_cidr.json b/components/model-catalog/resource-dictionary/starter-dictionary/onap_private_net_cidr.json
index cee060153..42765ee94 100755
--- a/components/model-catalog/resource-dictionary/starter-dictionary/onap_private_net_cidr.json
+++ b/components/model-catalog/resource-dictionary/starter-dictionary/onap_private_net_cidr.json
@@ -7,8 +7,8 @@
"type" : "string"
},
"sources" : {
- "db" : {
- "type" : "source-db",
+ "primary-db" : {
+ "type" : "source-primary-db",
"properties" : {
"type" : "SQL",
"query" : "select sdnctl.IPAM_IP_POOL.prefix as prefix from sdnctl.IPAM_IP_POOL where description = \"private\"",
diff --git a/components/model-catalog/resource-dictionary/starter-dictionary/db-source.json b/components/model-catalog/resource-dictionary/starter-dictionary/primary-db-source.json
index de46524ce..26e62e85d 100755..100644
--- a/components/model-catalog/resource-dictionary/starter-dictionary/db-source.json
+++ b/components/model-catalog/resource-dictionary/starter-dictionary/primary-db-source.json
@@ -1,5 +1,5 @@
{
- "name": "db-source",
+ "name": "primary-db-source",
"property" :{
"description": "name of the ",
"type": "string"
@@ -7,8 +7,8 @@
"updated-by": "brindasanth@onap.com",
"tags": "bundle-id, brindasanth@onap.com",
"sources": {
- "db": {
- "type": "source-db",
+ "primary-db": {
+ "type": "source-primary-db",
"properties": {
"query": "SELECT db-country, db-state FROM DEVICE_PROFILE WHERE profile_name = :profile_name",
"input-key-mapping": {
diff --git a/components/model-catalog/resource-dictionary/starter-dictionary/private-prefix-id.json b/components/model-catalog/resource-dictionary/starter-dictionary/private-prefix-id.json
index 5dea3e316..0685401d3 100755
--- a/components/model-catalog/resource-dictionary/starter-dictionary/private-prefix-id.json
+++ b/components/model-catalog/resource-dictionary/starter-dictionary/private-prefix-id.json
@@ -7,8 +7,8 @@
"type" : "string"
},
"sources" : {
- "db" : {
- "type" : "source-db",
+ "primary-db" : {
+ "type" : "source-primary-db",
"properties" : {
"type" : "SQL",
"query" : "select sdnctl.IPAM_IP_POOL.prefix_id as prefix_id from sdnctl.IPAM_IP_POOL where description = \"private\"",
diff --git a/components/model-catalog/resource-dictionary/starter-dictionary/protected-prefix-id.json b/components/model-catalog/resource-dictionary/starter-dictionary/protected-prefix-id.json
index fb572741c..f6120f3fd 100755
--- a/components/model-catalog/resource-dictionary/starter-dictionary/protected-prefix-id.json
+++ b/components/model-catalog/resource-dictionary/starter-dictionary/protected-prefix-id.json
@@ -7,8 +7,8 @@
"type" : "string"
},
"sources" : {
- "db" : {
- "type" : "source-db",
+ "primary-db" : {
+ "type" : "source-primary-db",
"properties" : {
"type" : "SQL",
"query" : "select sdnctl.IPAM_IP_POOL.prefix_id as prefix_id from sdnctl.IPAM_IP_POOL where description = \"protected\"",
diff --git a/components/model-catalog/resource-dictionary/starter-dictionary/protected_private_net_cidr.json b/components/model-catalog/resource-dictionary/starter-dictionary/protected_private_net_cidr.json
index 261920feb..bb477dcb6 100755
--- a/components/model-catalog/resource-dictionary/starter-dictionary/protected_private_net_cidr.json
+++ b/components/model-catalog/resource-dictionary/starter-dictionary/protected_private_net_cidr.json
@@ -7,8 +7,8 @@
"type" : "string"
},
"sources" : {
- "db" : {
- "type" : "source-db",
+ "primary-db" : {
+ "type" : "source-primary-db",
"properties" : {
"type" : "SQL",
"query" : "select sdnctl.IPAM_IP_POOL.prefix as prefix from sdnctl.IPAM_IP_POOL where description = \"protected\"",
diff --git a/components/model-catalog/resource-dictionary/starter-dictionary/sample-db-source.json b/components/model-catalog/resource-dictionary/starter-dictionary/sample-primary-db-source.json
index 90775aee0..656841f2e 100644
--- a/components/model-catalog/resource-dictionary/starter-dictionary/sample-db-source.json
+++ b/components/model-catalog/resource-dictionary/starter-dictionary/sample-primary-db-source.json
@@ -5,10 +5,10 @@
"type": "string"
},
"updated-by": "brindasanth@onap.com",
- "tags": "db-source, brindasanth@onap.com",
+ "tags": "primary-db-source, brindasanth@onap.com",
"sources": {
- "db": {
- "type": "source-db",
+ "primary-db": {
+ "type": "source-primary-db",
"properties": {
"query": "SELECT db-country, db-state FROM DEVICE_PROFILE WHERE profile_name = :profile_name",
"input-key-mapping": {
diff --git a/components/model-catalog/resource-dictionary/starter-dictionary/unprotected-prefix-id.json b/components/model-catalog/resource-dictionary/starter-dictionary/unprotected-prefix-id.json
index 3cb732056..c1fc541bd 100755
--- a/components/model-catalog/resource-dictionary/starter-dictionary/unprotected-prefix-id.json
+++ b/components/model-catalog/resource-dictionary/starter-dictionary/unprotected-prefix-id.json
@@ -7,8 +7,8 @@
"type" : "string"
},
"sources" : {
- "db" : {
- "type" : "source-db",
+ "primary-db" : {
+ "type" : "source-primary-db",
"properties" : {
"type" : "SQL",
"query" : "select sdnctl.IPAM_IP_POOL.prefix_id as prefix_id from sdnctl.IPAM_IP_POOL where description = \"unprotected\"",
diff --git a/components/model-catalog/resource-dictionary/starter-dictionary/unprotected_private_net_cidr.json b/components/model-catalog/resource-dictionary/starter-dictionary/unprotected_private_net_cidr.json
index d2a339e7c..604875500 100755
--- a/components/model-catalog/resource-dictionary/starter-dictionary/unprotected_private_net_cidr.json
+++ b/components/model-catalog/resource-dictionary/starter-dictionary/unprotected_private_net_cidr.json
@@ -7,8 +7,8 @@
"type" : "string"
},
"sources" : {
- "db" : {
- "type" : "source-db",
+ "primary-db" : {
+ "type" : "source-primary-db",
"properties" : {
"type" : "SQL",
"query" : "select sdnctl.IPAM_IP_POOL.prefix as prefix from sdnctl.IPAM_IP_POOL where description = \"unprotected\"",
diff --git a/components/model-catalog/resource-dictionary/starter-dictionary/vf-module-label.json b/components/model-catalog/resource-dictionary/starter-dictionary/vf-module-label.json
index ac5e21a6a..faa7ea49e 100755
--- a/components/model-catalog/resource-dictionary/starter-dictionary/vf-module-label.json
+++ b/components/model-catalog/resource-dictionary/starter-dictionary/vf-module-label.json
@@ -7,8 +7,8 @@
"type" : "string"
},
"sources" : {
- "db" : {
- "type" : "source-db",
+ "primary-db" : {
+ "type" : "source-primary-db",
"properties" : {
"type" : "SQL",
"query" : "select sdnctl.VF_MODULE_MODEL.vf_module_label as vf_module_label from sdnctl.VF_MODULE_MODEL where sdnctl.VF_MODULE_MODEL.customization_uuid=:customizationid",
diff --git a/components/model-catalog/resource-dictionary/starter-dictionary/vf-module-type.json b/components/model-catalog/resource-dictionary/starter-dictionary/vf-module-type.json
index 147425c33..dbd51bbd9 100755
--- a/components/model-catalog/resource-dictionary/starter-dictionary/vf-module-type.json
+++ b/components/model-catalog/resource-dictionary/starter-dictionary/vf-module-type.json
@@ -7,8 +7,8 @@
"type" : "string"
},
"sources" : {
- "db" : {
- "type" : "source-db",
+ "primary-db" : {
+ "type" : "source-primary-db",
"properties" : {
"type" : "SQL",
"query" : "select vf_module_type as vf_module_type from sdnctl.VF_MODULE_MODEL where customization_uuid=:customizationid",
diff --git a/components/model-catalog/resource-dictionary/starter-dictionary/vf-naming-policy.json b/components/model-catalog/resource-dictionary/starter-dictionary/vf-naming-policy.json
index f68cc3746..70792f86f 100755
--- a/components/model-catalog/resource-dictionary/starter-dictionary/vf-naming-policy.json
+++ b/components/model-catalog/resource-dictionary/starter-dictionary/vf-naming-policy.json
@@ -7,8 +7,8 @@
"type" : "string"
},
"sources" : {
- "db" : {
- "type" : "source-db",
+ "primary-db" : {
+ "type" : "source-primary-db",
"properties" : {
"type" : "SQL",
"query" : "select sdnctl.VF_MODEL.naming_policy as vf_naming_policy from sdnctl.VF_MODEL where sdnctl.VF_MODEL.customization_uuid=:vnf_model_customization_uuid",
diff --git a/components/model-catalog/resource-dictionary/starter-dictionary/vf-nf-code.json b/components/model-catalog/resource-dictionary/starter-dictionary/vf-nf-code.json
index 1865d47ff..a21982c0c 100755
--- a/components/model-catalog/resource-dictionary/starter-dictionary/vf-nf-code.json
+++ b/components/model-catalog/resource-dictionary/starter-dictionary/vf-nf-code.json
@@ -7,8 +7,8 @@
"type" : "string"
},
"sources" : {
- "db" : {
- "type" : "source-db",
+ "primary-db" : {
+ "type" : "source-primary-db",
"properties" : {
"type" : "SQL",
"query" : "select sdnctl.VF_MODEL.nf_code as vf_nf_code from sdnctl.VF_MODEL where sdnctl.VF_MODEL.customization_uuid=:customizationid",
diff --git a/components/model-catalog/resource-dictionary/starter-dictionary/vfccustomizationuuid.json b/components/model-catalog/resource-dictionary/starter-dictionary/vfccustomizationuuid.json
index 463f8480b..9f3e7cf17 100755
--- a/components/model-catalog/resource-dictionary/starter-dictionary/vfccustomizationuuid.json
+++ b/components/model-catalog/resource-dictionary/starter-dictionary/vfccustomizationuuid.json
@@ -7,8 +7,8 @@
"type" : "string"
},
"sources" : {
- "db" : {
- "type" : "source-db",
+ "primary-db" : {
+ "type" : "source-primary-db",
"properties" : {
"type" : "SQL",
"query" : "select sdnctl.VF_MODULE_TO_VFC_MAPPING.vfc_customization_uuid as vnf_customid from sdnctl.VF_MODULE_TO_VFC_MAPPING where vm_count = 1 and sdnctl.VF_MODULE_TO_VFC_MAPPING.vf_module_customization_uuid=:vfmodulecustomizationuuid",
diff --git a/components/model-catalog/resource-dictionary/starter-dictionary/vm-type.json b/components/model-catalog/resource-dictionary/starter-dictionary/vm-type.json
index 0204c64bb..9744316c0 100755
--- a/components/model-catalog/resource-dictionary/starter-dictionary/vm-type.json
+++ b/components/model-catalog/resource-dictionary/starter-dictionary/vm-type.json
@@ -7,8 +7,8 @@
"type" : "string"
},
"sources" : {
- "db" : {
- "type" : "source-db",
+ "primary-db" : {
+ "type" : "source-primary-db",
"properties" : {
"type" : "SQL",
"query" : "select VFC_MODEL.vm_type as vm_type from VFC_MODEL where customization_uuid=:vfccustomizationuuid",
diff --git a/components/model-catalog/resource-dictionary/starter-dictionary/vnfc-model-invariant-uuid.json b/components/model-catalog/resource-dictionary/starter-dictionary/vnfc-model-invariant-uuid.json
index c894fb531..3d89d9dd2 100755
--- a/components/model-catalog/resource-dictionary/starter-dictionary/vnfc-model-invariant-uuid.json
+++ b/components/model-catalog/resource-dictionary/starter-dictionary/vnfc-model-invariant-uuid.json
@@ -7,8 +7,8 @@
"type" : "string"
},
"sources" : {
- "db" : {
- "type" : "source-db",
+ "primary-db" : {
+ "type" : "source-primary-db",
"properties" : {
"type" : "SQL",
"query" : "select VFC_MODEL.invariant_uuid as vfc_invariant_uuid from VFC_MODEL where customization_uuid=:vfccustomizationuuid",
diff --git a/components/model-catalog/resource-dictionary/starter-dictionary/vnfc-model-version.json b/components/model-catalog/resource-dictionary/starter-dictionary/vnfc-model-version.json
index 45eb07f79..d7fb50169 100755
--- a/components/model-catalog/resource-dictionary/starter-dictionary/vnfc-model-version.json
+++ b/components/model-catalog/resource-dictionary/starter-dictionary/vnfc-model-version.json
@@ -7,8 +7,8 @@
"type" : "string"
},
"sources" : {
- "db" : {
- "type" : "source-db",
+ "primary-db" : {
+ "type" : "source-primary-db",
"properties" : {
"type" : "SQL",
"query" : "select VFC_MODEL.version as vnfc_model_version from VFC_MODEL where customization_uuid=:vfccustomizationuuid",
diff --git a/components/parent/pom.xml b/components/parent/pom.xml
index 8ecb2c1a2..365515aa1 100644
--- a/components/parent/pom.xml
+++ b/components/parent/pom.xml
@@ -304,7 +304,19 @@
</dependency>
<dependency>
<groupId>org.jetbrains.kotlin</groupId>
+ <artifactId>kotlin-compiler-embeddable</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.jetbrains.kotlin</groupId>
<artifactId>kotlin-scripting-jvm-host</artifactId>
+ <!--Use kotlin-compiler-embeddable as koltin-compiler wrap-->
+ <!--guava dependency creating classpath issues at runtime-->
+ <exclusions>
+ <exclusion>
+ <groupId>org.jetbrains.kotlin</groupId>
+ <artifactId>kotlin-compiler</artifactId>
+ </exclusion>
+ </exclusions>
</dependency>
<!-- GRPC Dependencies -->
<dependency>
diff --git a/components/pom.xml b/components/pom.xml
index 5b8768cea..95ffd5c02 100644
--- a/components/pom.xml
+++ b/components/pom.xml
@@ -14,7 +14,8 @@
~ See the License for the specific language governing permissions and
~ limitations under the License.
-->
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<parent>
<groupId>org.onap.ccsdk.apps</groupId>
<artifactId>ccsdk-apps</artifactId>
@@ -37,5 +38,6 @@
<module>parent</module>
<module>core</module>
<module>resource-dict</module>
+ <module>model-catalog/proto-definition</module>
</modules>
</project>
diff --git a/components/resource-dict/load/model_type/node_type/source-db.json b/components/resource-dict/load/model_type/node_type/source-primary-db.json
index 661a9503b..661a9503b 100644
--- a/components/resource-dict/load/model_type/node_type/source-db.json
+++ b/components/resource-dict/load/model_type/node_type/source-primary-db.json
diff --git a/components/resource-dict/load/resource_dictionary/nf-role.json b/components/resource-dict/load/resource_dictionary/nf-role.json
index 0e108c5cb..df6b5df4d 100644
--- a/components/resource-dict/load/resource_dictionary/nf-role.json
+++ b/components/resource-dict/load/resource_dictionary/nf-role.json
@@ -7,8 +7,8 @@
"type" : "string"
},
"sources" : {
- "db" : {
- "type" : "source-db",
+ "primary-db" : {
+ "type" : "source-primary-db",
"properties" : {
"type" : "SQL",
"query" : "select sdnctl.VF_MODEL.nf_role as vf_model_role from sdnctl.VF_MODEL where sdnctl.VF_MODEL.customization_uuid=:vnfmodelcustomizationuuid",
diff --git a/components/resource-dict/load/resource_dictionary/nfc-naming-code.json b/components/resource-dict/load/resource_dictionary/nfc-naming-code.json
index f0f2b7f0f..7c521a7c0 100644
--- a/components/resource-dict/load/resource_dictionary/nfc-naming-code.json
+++ b/components/resource-dict/load/resource_dictionary/nfc-naming-code.json
@@ -7,8 +7,8 @@
"type" : "string"
},
"sources" : {
- "db" : {
- "type" : "source-db",
+ "primary-db" : {
+ "type" : "source-primary-db",
"properties" : {
"type" : "SQL",
"query" : "select nfc_naming_code as nfc_naming_code from sdnctl.VFC_MODEL where customization_uuid=:vfccustomizationuuid",
diff --git a/components/resource-dict/load/resource_dictionary/onap_private_net_cidr.json b/components/resource-dict/load/resource_dictionary/onap_private_net_cidr.json
index 07c5cbc18..f2067a19c 100644
--- a/components/resource-dict/load/resource_dictionary/onap_private_net_cidr.json
+++ b/components/resource-dict/load/resource_dictionary/onap_private_net_cidr.json
@@ -7,8 +7,8 @@
"type" : "string"
},
"sources" : {
- "db" : {
- "type" : "source-db",
+ "primary-db" : {
+ "type" : "source-primary-db",
"properties" : {
"type" : "SQL",
"query" : "select sdnctl.IPAM_IP_POOL.prefix as prefix from sdnctl.IPAM_IP_POOL where description = private",
diff --git a/components/resource-dict/load/resource_dictionary/db-source.json b/components/resource-dict/load/resource_dictionary/primary-db-source.json
index b96dc63f7..dfac66aee 100644
--- a/components/resource-dict/load/resource_dictionary/db-source.json
+++ b/components/resource-dict/load/resource_dictionary/primary-db-source.json
@@ -1,5 +1,5 @@
{
- "name": "db-source",
+ "name": "primary-db-source",
"property" :{
"description": "name of the ",
"type": "string"
@@ -7,8 +7,8 @@
"updated-by": "brindasanth@onap.com",
"tags": "bundle-id, brindasanth@onap.com",
"sources": {
- "db": {
- "type": "source-db",
+ "primary-db": {
+ "type": "source-primary-db",
"properties": {
"query": "SELECT db-country, db-state FROM DEVICE_PROFILE WHERE profile_name = :profile_name",
"input-key-mapping": {
diff --git a/components/resource-dict/load/resource_dictionary/private-prefix-id.json b/components/resource-dict/load/resource_dictionary/private-prefix-id.json
index a95bae308..309647d79 100644
--- a/components/resource-dict/load/resource_dictionary/private-prefix-id.json
+++ b/components/resource-dict/load/resource_dictionary/private-prefix-id.json
@@ -7,8 +7,8 @@
"type" : "string"
},
"sources" : {
- "db" : {
- "type" : "source-db",
+ "primary-db" : {
+ "type" : "source-primary-db",
"properties" : {
"type" : "SQL",
"query" : "select sdnctl.IPAM_IP_POOL.prefix_id as prefix_id from sdnctl.IPAM_IP_POOL where description = private",
diff --git a/components/resource-dict/load/resource_dictionary/protected-prefix-id.json b/components/resource-dict/load/resource_dictionary/protected-prefix-id.json
index 56b0d6d21..816405b4e 100644
--- a/components/resource-dict/load/resource_dictionary/protected-prefix-id.json
+++ b/components/resource-dict/load/resource_dictionary/protected-prefix-id.json
@@ -7,8 +7,8 @@
"type" : "string"
},
"sources" : {
- "db" : {
- "type" : "source-db",
+ "primary-db" : {
+ "type" : "source-primary-db",
"properties" : {
"type" : "SQL",
"query" : "select sdnctl.IPAM_IP_POOL.prefix_id as prefix_id from sdnctl.IPAM_IP_POOL where description = protected",
diff --git a/components/resource-dict/load/resource_dictionary/protected_private_net_cidr.json b/components/resource-dict/load/resource_dictionary/protected_private_net_cidr.json
index db0a43dc5..bf46fb3a6 100644
--- a/components/resource-dict/load/resource_dictionary/protected_private_net_cidr.json
+++ b/components/resource-dict/load/resource_dictionary/protected_private_net_cidr.json
@@ -7,8 +7,8 @@
"type" : "string"
},
"sources" : {
- "db" : {
- "type" : "source-db",
+ "primary-db" : {
+ "type" : "source-primary-db",
"properties" : {
"type" : "SQL",
"query" : "select sdnctl.IPAM_IP_POOL.prefix as prefix from sdnctl.IPAM_IP_POOL where description = protected",
diff --git a/components/resource-dict/load/resource_dictionary/unprotected-prefix-id.json b/components/resource-dict/load/resource_dictionary/unprotected-prefix-id.json
index a0d966a2c..8a09b1498 100644
--- a/components/resource-dict/load/resource_dictionary/unprotected-prefix-id.json
+++ b/components/resource-dict/load/resource_dictionary/unprotected-prefix-id.json
@@ -7,8 +7,8 @@
"type" : "string"
},
"sources" : {
- "db" : {
- "type" : "source-db",
+ "primary-db" : {
+ "type" : "source-primary-db",
"properties" : {
"type" : "SQL",
"query" : "select sdnctl.IPAM_IP_POOL.prefix_id as prefix_id from sdnctl.IPAM_IP_POOL where description = unprotected",
diff --git a/components/resource-dict/load/resource_dictionary/unprotected_private_net_cidr.json b/components/resource-dict/load/resource_dictionary/unprotected_private_net_cidr.json
index 8f9385d87..241147c3f 100644
--- a/components/resource-dict/load/resource_dictionary/unprotected_private_net_cidr.json
+++ b/components/resource-dict/load/resource_dictionary/unprotected_private_net_cidr.json
@@ -7,8 +7,8 @@
"type" : "string"
},
"sources" : {
- "db" : {
- "type" : "source-db",
+ "primary-db" : {
+ "type" : "source-primary-db",
"properties" : {
"type" : "SQL",
"query" : "select sdnctl.IPAM_IP_POOL.prefix as prefix from sdnctl.IPAM_IP_POOL where description = unprotected",
diff --git a/components/resource-dict/load/resource_dictionary/vf-module-label.json b/components/resource-dict/load/resource_dictionary/vf-module-label.json
index a9543722c..01355c201 100644
--- a/components/resource-dict/load/resource_dictionary/vf-module-label.json
+++ b/components/resource-dict/load/resource_dictionary/vf-module-label.json
@@ -7,8 +7,8 @@
"type" : "string"
},
"sources" : {
- "db" : {
- "type" : "source-db",
+ "primary-db" : {
+ "type" : "source-primary-db",
"properties" : {
"type" : "SQL",
"query" : "select sdnctl.VF_MODULE_MODEL.vf_module_label as vf_module_label from sdnctl.VF_MODULE_MODEL where sdnctl.VF_MODULE_MODEL.customization_uuid=:customizationid",
diff --git a/components/resource-dict/load/resource_dictionary/vf-module-type.json b/components/resource-dict/load/resource_dictionary/vf-module-type.json
index 805d834b5..ead69d46a 100644
--- a/components/resource-dict/load/resource_dictionary/vf-module-type.json
+++ b/components/resource-dict/load/resource_dictionary/vf-module-type.json
@@ -7,8 +7,8 @@
"type" : "string"
},
"sources" : {
- "db" : {
- "type" : "source-db",
+ "primary-db" : {
+ "type" : "source-primary-db",
"properties" : {
"type" : "SQL",
"query" : "select vf_module_type as vf_module_type from sdnctl.VF_MODULE_MODEL where customization_uuid=:customizationid",
diff --git a/components/resource-dict/load/resource_dictionary/vf-naming-policy.json b/components/resource-dict/load/resource_dictionary/vf-naming-policy.json
index ceed3186c..cde861f8a 100644
--- a/components/resource-dict/load/resource_dictionary/vf-naming-policy.json
+++ b/components/resource-dict/load/resource_dictionary/vf-naming-policy.json
@@ -7,8 +7,8 @@
"type" : "string"
},
"sources" : {
- "db" : {
- "type" : "source-db",
+ "primary-db" : {
+ "type" : "source-primary-db",
"properties" : {
"type" : "SQL",
"query" : "select sdnctl.VF_MODEL.naming_policy as vf_naming_policy from sdnctl.VF_MODEL where sdnctl.VF_MODEL.customization_uuid=:vnf_model_customization_uuid",
diff --git a/components/resource-dict/load/resource_dictionary/vf-nf-code.json b/components/resource-dict/load/resource_dictionary/vf-nf-code.json
index 0d25d0e94..adbd22af8 100644
--- a/components/resource-dict/load/resource_dictionary/vf-nf-code.json
+++ b/components/resource-dict/load/resource_dictionary/vf-nf-code.json
@@ -7,8 +7,8 @@
"type" : "string"
},
"sources" : {
- "db" : {
- "type" : "source-db",
+ "primary-db" : {
+ "type" : "source-primary-db",
"properties" : {
"type" : "SQL",
"query" : "select sdnctl.VF_MODEL.nf_code as vf_nf_code from sdnctl.VF_MODEL where sdnctl.VF_MODEL.customization_uuid=:customizationid",
diff --git a/components/resource-dict/load/resource_dictionary/vfccustomizationuuid.json b/components/resource-dict/load/resource_dictionary/vfccustomizationuuid.json
index a34a9a783..b3485791a 100644
--- a/components/resource-dict/load/resource_dictionary/vfccustomizationuuid.json
+++ b/components/resource-dict/load/resource_dictionary/vfccustomizationuuid.json
@@ -7,8 +7,8 @@
"type" : "string"
},
"sources" : {
- "db" : {
- "type" : "source-db",
+ "primary-db" : {
+ "type" : "source-primary-db",
"properties" : {
"type" : "SQL",
"query" : "select sdnctl.VF_MODULE_TO_VFC_MAPPING.vfc_customization_uuid as vnf_customid from sdnctl.VF_MODULE_TO_VFC_MAPPING where vm_count = 1 and sdnctl.VF_MODULE_TO_VFC_MAPPING.vf_module_customization_uuid=:vfmodulecustomizationuuid",
diff --git a/components/resource-dict/load/resource_dictionary/vm-type.json b/components/resource-dict/load/resource_dictionary/vm-type.json
index 7bb5ef1cc..e559f9b55 100644
--- a/components/resource-dict/load/resource_dictionary/vm-type.json
+++ b/components/resource-dict/load/resource_dictionary/vm-type.json
@@ -7,8 +7,8 @@
"type" : "string"
},
"sources" : {
- "db" : {
- "type" : "source-db",
+ "primary-db" : {
+ "type" : "source-primary-db",
"properties" : {
"type" : "SQL",
"query" : "select vfc_model.vm_type as vm_type from VFC_MODEL where customization_uuid=:vfccustomizationuuid",
diff --git a/components/resource-dict/load/resource_dictionary/vnfc-model-invariant-uuid.json b/components/resource-dict/load/resource_dictionary/vnfc-model-invariant-uuid.json
index b2ccd45da..9eb94cffc 100644
--- a/components/resource-dict/load/resource_dictionary/vnfc-model-invariant-uuid.json
+++ b/components/resource-dict/load/resource_dictionary/vnfc-model-invariant-uuid.json
@@ -7,8 +7,8 @@
"type" : "string"
},
"sources" : {
- "db" : {
- "type" : "source-db",
+ "primary-db" : {
+ "type" : "source-primary-db",
"properties" : {
"type" : "SQL",
"query" : "select vfc_model.invariant_uuid as vfc_invariant_uuid from VFC_MODEL where customization_uuid=:vfccustomizationuuid",
diff --git a/components/resource-dict/load/resource_dictionary/vnfc-model-version.json b/components/resource-dict/load/resource_dictionary/vnfc-model-version.json
index fb59eea7f..e4e662291 100644
--- a/components/resource-dict/load/resource_dictionary/vnfc-model-version.json
+++ b/components/resource-dict/load/resource_dictionary/vnfc-model-version.json
@@ -7,8 +7,8 @@
"type" : "string"
},
"sources" : {
- "db" : {
- "type" : "source-db",
+ "primary-db" : {
+ "type" : "source-primary-db",
"properties" : {
"type" : "SQL",
"query" : "select vfc_model.version as vnfc_model_version from VFC_MODEL where customization_uuid=:vfccustomizationuuid",
diff --git a/components/resource-dict/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/resource/dict/ResourceDictionaryConstants.kt b/components/resource-dict/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/resource/dict/ResourceDictionaryConstants.kt
index a39139edc..0004b02f5 100644
--- a/components/resource-dict/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/resource/dict/ResourceDictionaryConstants.kt
+++ b/components/resource-dict/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/resource/dict/ResourceDictionaryConstants.kt
@@ -15,6 +15,7 @@
*/
package org.onap.ccsdk.apps.controllerblueprints.resource.dict
+
/**
* ResourceDictionaryConstants
*
@@ -23,7 +24,8 @@ package org.onap.ccsdk.apps.controllerblueprints.resource.dict
object ResourceDictionaryConstants {
const val SOURCE_INPUT = "input"
const val SOURCE_DEFAULT = "default"
- const val SOURCE_DB = "db"
+ const val SOURCE_MDSAL = "mdsal"
+ const val SOURCE_PRIMARY_DB = "primary-db"
const val MODEL_DIR_RESOURCE_DEFINITION: String = "resource_dictionary"
diff --git a/components/resource-dict/src/test/java/org/onap/ccsdk/apps/controllerblueprints/resource/dict/ResourceDefinitionTest.java b/components/resource-dict/src/test/java/org/onap/ccsdk/apps/controllerblueprints/resource/dict/ResourceDefinitionTest.java
index cb39200f3..1ed306e21 100644
--- a/components/resource-dict/src/test/java/org/onap/ccsdk/apps/controllerblueprints/resource/dict/ResourceDefinitionTest.java
+++ b/components/resource-dict/src/test/java/org/onap/ccsdk/apps/controllerblueprints/resource/dict/ResourceDefinitionTest.java
@@ -46,9 +46,9 @@ public class ResourceDefinitionTest {
@Test
public void testDictionaryDefinitionDBSource(){
- String fileName = basePath + "/db-source.json";
+ String fileName = basePath + "/primary-db-source.json";
ResourceDefinition resourceDefinition = JacksonUtils.Companion.readValueFromFile(fileName, ResourceDefinition.class);
- Assert.assertNotNull("Failed to populate dictionaryDefinition for db type", resourceDefinition);
+ Assert.assertNotNull("Failed to populate dictionaryDefinition for primary-db type", resourceDefinition);
}
@Test
diff --git a/components/resource-dict/src/test/java/org/onap/ccsdk/apps/controllerblueprints/resource/dict/factory/ResourceSourceMappingFactoryTest.java b/components/resource-dict/src/test/java/org/onap/ccsdk/apps/controllerblueprints/resource/dict/factory/ResourceSourceMappingFactoryTest.java
index b67aa7998..3f5aef43d 100644
--- a/components/resource-dict/src/test/java/org/onap/ccsdk/apps/controllerblueprints/resource/dict/factory/ResourceSourceMappingFactoryTest.java
+++ b/components/resource-dict/src/test/java/org/onap/ccsdk/apps/controllerblueprints/resource/dict/factory/ResourceSourceMappingFactoryTest.java
@@ -25,13 +25,13 @@ public class ResourceSourceMappingFactoryTest {
@Test
public void testRegisterResourceMapping() {
- ResourceSourceMappingFactory.INSTANCE.registerSourceMapping("db", "source-db");
+ ResourceSourceMappingFactory.INSTANCE.registerSourceMapping("primary-db", "source-primary-db");
ResourceSourceMappingFactory.INSTANCE.registerSourceMapping("input", "source-input");
ResourceSourceMappingFactory.INSTANCE.registerSourceMapping("default", "source-default");
ResourceSourceMappingFactory.INSTANCE.registerSourceMapping("mdsal", "source-rest");
- String nodeTypeName = ResourceSourceMappingFactory.INSTANCE.getRegisterSourceMapping("db");
- Assert.notNull(nodeTypeName, "Failed to get db mapping");
+ String nodeTypeName = ResourceSourceMappingFactory.INSTANCE.getRegisterSourceMapping("primary-db");
+ Assert.notNull(nodeTypeName, "Failed to get primary-db mapping");
ResourceSourceMapping resourceSourceMapping = ResourceSourceMappingFactory.INSTANCE.getRegisterSourceMapping();
Assert.notNull(resourceSourceMapping, "Failed to get resource source mapping");
diff --git a/components/resource-dict/src/test/java/org/onap/ccsdk/apps/controllerblueprints/resource/dict/service/ResourceDefinitionValidationServiceTest.java b/components/resource-dict/src/test/java/org/onap/ccsdk/apps/controllerblueprints/resource/dict/service/ResourceDefinitionValidationServiceTest.java
index f5c3567fa..7f040b2e2 100644
--- a/components/resource-dict/src/test/java/org/onap/ccsdk/apps/controllerblueprints/resource/dict/service/ResourceDefinitionValidationServiceTest.java
+++ b/components/resource-dict/src/test/java/org/onap/ccsdk/apps/controllerblueprints/resource/dict/service/ResourceDefinitionValidationServiceTest.java
@@ -30,10 +30,10 @@ public class ResourceDefinitionValidationServiceTest {
@Test
public void testValidateSource() throws Exception {
- String inputFileName = dictionaryPath + "/db-source.json";
+ String inputFileName = dictionaryPath + "/input-source.json";
testValidate(inputFileName);
- String dbFileName = dictionaryPath + "/db-source.json";
+ String dbFileName = dictionaryPath + "/primary-db-source.json";
testValidate(dbFileName);
String defaultFileName = dictionaryPath + "/default-source.json";
diff --git a/components/resource-dict/src/test/java/org/onap/ccsdk/apps/controllerblueprints/resource/dict/utils/ResourceDictionaryUtilsTest.java b/components/resource-dict/src/test/java/org/onap/ccsdk/apps/controllerblueprints/resource/dict/utils/ResourceDictionaryUtilsTest.java
index fa2413805..92bfa7301 100644
--- a/components/resource-dict/src/test/java/org/onap/ccsdk/apps/controllerblueprints/resource/dict/utils/ResourceDictionaryUtilsTest.java
+++ b/components/resource-dict/src/test/java/org/onap/ccsdk/apps/controllerblueprints/resource/dict/utils/ResourceDictionaryUtilsTest.java
@@ -59,9 +59,9 @@ public class ResourceDictionaryUtilsTest {
Assert.assertEquals("Expected First source Default, but.", ResourceDictionaryConstants.SOURCE_DEFAULT, resourceAssignment.getDictionarySource());
// To Check Assigned Source
- resourceAssignment.setDictionarySource(ResourceDictionaryConstants.SOURCE_DB);
+ resourceAssignment.setDictionarySource(ResourceDictionaryConstants.SOURCE_PRIMARY_DB);
ResourceDictionaryUtils.populateSourceMapping(resourceAssignment, resourceDefinition);
- Assert.assertEquals("Expected Assigned source DB, but.", ResourceDictionaryConstants.SOURCE_DB, resourceAssignment.getDictionarySource());
+ Assert.assertEquals("Expected Assigned source DB, but.", ResourceDictionaryConstants.SOURCE_PRIMARY_DB, resourceAssignment.getDictionarySource());
}
@@ -78,7 +78,7 @@ public class ResourceDictionaryUtilsTest {
Assert.assertEquals("Expected source Input, but.", ResourceDictionaryConstants.SOURCE_INPUT, inputFirstSource);
// TO check the multiple Source
- sources.put(ResourceDictionaryConstants.SOURCE_DB, new NodeTemplate());
+ sources.put(ResourceDictionaryConstants.SOURCE_PRIMARY_DB, new NodeTemplate());
String multipleFirstSource = ResourceDictionaryUtils.findFirstSource(sources);
Assert.assertEquals("Expected source Input, but.", ResourceDictionaryConstants.SOURCE_INPUT, multipleFirstSource);
diff --git a/components/resource-dict/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/resource/dict/utils/ResourceDictionaryTestUtils.kt b/components/resource-dict/src/test/kotlin/org/onap/ccsdk/apps/controllerblueprints/resource/dict/utils/ResourceDictionaryTestUtils.kt
index bebe27d8c..50e5c3290 100644
--- a/components/resource-dict/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/resource/dict/utils/ResourceDictionaryTestUtils.kt
+++ b/components/resource-dict/src/test/kotlin/org/onap/ccsdk/apps/controllerblueprints/resource/dict/utils/ResourceDictionaryTestUtils.kt
@@ -22,7 +22,7 @@ object ResourceDictionaryTestUtils {
@JvmStatic
fun setUpResourceSourceMapping() {
- ResourceSourceMappingFactory.registerSourceMapping("db", "source-db")
+ ResourceSourceMappingFactory.registerSourceMapping("primary-db", "source-primary-db")
ResourceSourceMappingFactory.registerSourceMapping("input", "source-input")
ResourceSourceMappingFactory.registerSourceMapping("default", "source-default")
ResourceSourceMappingFactory.registerSourceMapping("mdsal", "source-rest")
diff --git a/components/resource-dict/src/test/resources/validation/cyclic.json b/components/resource-dict/src/test/resources/validation/cyclic.json
index d837dc5d8..7e6472f5a 100644
--- a/components/resource-dict/src/test/resources/validation/cyclic.json
+++ b/components/resource-dict/src/test/resources/validation/cyclic.json
@@ -102,7 +102,7 @@
"type": "string"
},
"dictionary-name": "loopback-ip",
- "dictionary-source": "db",
+ "dictionary-source": "primary-db",
"dependencies": [
"bundle-mac",
"managed-ip1"
diff --git a/components/resource-dict/src/test/resources/validation/duplicate.json b/components/resource-dict/src/test/resources/validation/duplicate.json
index 330324cda..28ab71fca 100644
--- a/components/resource-dict/src/test/resources/validation/duplicate.json
+++ b/components/resource-dict/src/test/resources/validation/duplicate.json
@@ -102,7 +102,7 @@
"type": "string"
},
"dictionary-name": "loopback-ip",
- "dictionary-source": "db",
+ "dictionary-source": "primary-db",
"dependencies": [
"bundle-mac"
]
diff --git a/components/resource-dict/src/test/resources/validation/success.json b/components/resource-dict/src/test/resources/validation/success.json
index 3215d06d7..5d0e89805 100644
--- a/components/resource-dict/src/test/resources/validation/success.json
+++ b/components/resource-dict/src/test/resources/validation/success.json
@@ -102,7 +102,7 @@
"type": "string"
},
"dictionary-name": "loopback-ip",
- "dictionary-source": "db",
+ "dictionary-source": "primary-db",
"dependencies": [
"bundle-mac"
]