diff options
Diffstat (limited to 'ms/blueprintsprocessor/modules/inbounds/designer-api/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/designer/api/handler/ResourceDictionaryHandler.kt')
-rw-r--r-- | ms/blueprintsprocessor/modules/inbounds/designer-api/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/designer/api/handler/ResourceDictionaryHandler.kt | 71 |
1 files changed, 48 insertions, 23 deletions
diff --git a/ms/blueprintsprocessor/modules/inbounds/designer-api/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/designer/api/handler/ResourceDictionaryHandler.kt b/ms/blueprintsprocessor/modules/inbounds/designer-api/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/designer/api/handler/ResourceDictionaryHandler.kt index 3f06a4a98..0af1e1586 100644 --- a/ms/blueprintsprocessor/modules/inbounds/designer-api/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/designer/api/handler/ResourceDictionaryHandler.kt +++ b/ms/blueprintsprocessor/modules/inbounds/designer-api/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/designer/api/handler/ResourceDictionaryHandler.kt @@ -31,15 +31,17 @@ import org.onap.ccsdk.cds.controllerblueprints.resource.dict.ResourceSourceMappi import org.onap.ccsdk.cds.controllerblueprints.resource.dict.factory.ResourceSourceMappingFactory import org.onap.ccsdk.cds.error.catalog.core.ErrorCatalogCodes import org.springframework.stereotype.Service +import org.springframework.data.domain.Page +import org.springframework.data.domain.Pageable @Service class ResourceDictionaryHandler(private val resourceDictionaryRepository: ResourceDictionaryRepository) { /** - * This is a getDataDictionaryByName service + * This is a getResourceDictionaryByName service * * @param name name - * @return DataDictionary + * @return ResourceDictionary * @throws BluePrintException BluePrintException */ @Throws(BluePrintException::class) @@ -61,7 +63,7 @@ class ResourceDictionaryHandler(private val resourceDictionaryRepository: Resour * * @param names names * @return List<ResourceDictionary> - </ResourceDictionary> */ + */ suspend fun searchResourceDictionaryByNames(names: List<String>): List<ResourceDictionary> { Preconditions.checkArgument(CollectionUtils.isNotEmpty(names), "No Search Information provide") return resourceDictionaryRepository.findByNameIn(names) @@ -72,17 +74,17 @@ class ResourceDictionaryHandler(private val resourceDictionaryRepository: Resour * * @param tags tags * @return List<ResourceDictionary> - </ResourceDictionary> */ + */ suspend fun searchResourceDictionaryByTags(tags: String): List<ResourceDictionary> { Preconditions.checkArgument(StringUtils.isNotBlank(tags), "No search tag information provide") return resourceDictionaryRepository.findByTagsContainingIgnoreCase(tags) } /** - * This is a saveDataDictionary service + * This is a saveResourceDictionary service * * @param resourceDictionary resourceDictionary - * @return DataDictionary + * @return ResourceDictionary */ @Throws(BluePrintException::class) suspend fun saveResourceDictionary(resourceDictionary: ResourceDictionary): ResourceDictionary { @@ -128,33 +130,49 @@ class ResourceDictionaryHandler(private val resourceDictionaryRepository: Resour } /** - * This is a saveDataDictionary service + * This is to save single ResourceDictionary from json content * * @param resourceDefinition ResourceDefinition - * @return ResourceDefinition + * @return ResourceDictionary + */ + @Throws(BluePrintException::class) + suspend fun saveResourceDefinition(resourceDefinition: ResourceDefinition): ResourceDictionary { + return resourceDictionaryRepository.save(enrichResourceDictionary(resourceDefinition)) + } + + /** + * This is to save multiple ResourceDictionaries from json array content + * + * @param resourceDefinitionList List<ResourceDefinition> + * @return MutableList<ResourceDictionary> */ @Throws(BluePrintException::class) - suspend fun saveResourceDefinition(resourceDefinition: ResourceDefinition): ResourceDefinition { + suspend fun saveAllResourceDefinition(resourceDefinitionList: List<ResourceDefinition>): MutableList<ResourceDictionary> { + val dictionaryList: MutableList<ResourceDictionary> = mutableListOf() + resourceDefinitionList.forEach { + dictionaryList.add(enrichResourceDictionary(it)) + } + return resourceDictionaryRepository.saveAll(dictionaryList) + } + + private fun enrichResourceDictionary(resourceDefinition: ResourceDefinition): ResourceDictionary { val resourceDictionary = ResourceDictionary() resourceDictionary.name = resourceDefinition.name resourceDictionary.updatedBy = resourceDefinition.updatedBy resourceDictionary.resourceDictionaryGroup = resourceDefinition.group resourceDictionary.entrySchema = resourceDefinition.property.entrySchema?.type + resourceDictionary.description = resourceDefinition.property.description!! + resourceDictionary.dataType = resourceDefinition.property.type + resourceDictionary.definition = resourceDefinition + if (StringUtils.isBlank(resourceDefinition.tags)) { - resourceDictionary.tags = ( - resourceDefinition.name + ", " + resourceDefinition.updatedBy + - ", " + resourceDefinition.updatedBy - ) + resourceDictionary.tags = resourceDefinition.name + ", " + resourceDefinition.updatedBy } else { resourceDictionary.tags = resourceDefinition.tags!! } - resourceDictionary.description = resourceDefinition.property.description!! - resourceDictionary.dataType = resourceDefinition.property.type - resourceDictionary.definition = resourceDefinition validateResourceDictionary(resourceDictionary) - - return resourceDictionaryRepository.save(resourceDictionary).definition + return resourceDictionary } /** @@ -174,12 +192,19 @@ class ResourceDictionaryHandler(private val resourceDictionaryRepository: Resour return ResourceSourceMappingFactory.getRegisterSourceMapping() } + /** + * This is a getResourceDirectories service + */ + suspend fun getAllDictionary(pageRequest: Pageable): Page<ResourceDictionary> { + return resourceDictionaryRepository.findAll(pageRequest) + } + private fun validateResourceDictionary(resourceDictionary: ResourceDictionary): Boolean { - checkNotEmpty(resourceDictionary.name) { "DataDictionary Definition name is missing." } - checkNotNull(resourceDictionary.definition) { "DataDictionary Definition Information is missing." } - checkNotEmpty(resourceDictionary.description) { "DataDictionary Definition Information is missing." } - checkNotEmpty(resourceDictionary.tags) { "DataDictionary Definition tags is missing." } - checkNotEmpty(resourceDictionary.updatedBy) { "DataDictionary Definition updatedBy is missing." } + checkNotEmpty(resourceDictionary.name) { "ResourceDictionary Definition name is missing." } + checkNotNull(resourceDictionary.definition) { "ResourceDictionary Definition Information is missing." } + checkNotEmpty(resourceDictionary.description) { "ResourceDictionary Definition Information is missing." } + checkNotEmpty(resourceDictionary.tags) { "ResourceDictionary Definition tags is missing." } + checkNotEmpty(resourceDictionary.updatedBy) { "ResourceDictionary Definition updatedBy is missing." } return true } |