From 7bbeeda4e4ff25a073c9d1a8992fe68aaf470e6b Mon Sep 17 00:00:00 2001 From: Brinda Santh Date: Fri, 30 Aug 2019 12:24:19 -0400 Subject: Refactor catalog service to blueprint processor. Change-Id: Ia4bfc7c1b3ffb4020458f18deb71a2cf451ab65e Issue-ID: CCSDK-1663 Signed-off-by: Brinda Santh --- .../db/resources/BlueprintCatalogServiceImpl.kt | 87 --------------------- .../resources/repository/ModelContentRepository.kt | 91 ---------------------- .../db/resources/repository/ModelRepository.kt | 90 --------------------- .../resources/BlueprintCatalogServiceImplTest.kt | 21 ----- 4 files changed, 289 deletions(-) delete mode 100644 ms/controllerblueprints/modules/db-resources/src/main/kotlin/org/onap/ccsdk/cds/controllerblueprints/db/resources/BlueprintCatalogServiceImpl.kt delete mode 100644 ms/controllerblueprints/modules/db-resources/src/main/kotlin/org/onap/ccsdk/cds/controllerblueprints/db/resources/repository/ModelContentRepository.kt delete mode 100644 ms/controllerblueprints/modules/db-resources/src/main/kotlin/org/onap/ccsdk/cds/controllerblueprints/db/resources/repository/ModelRepository.kt delete mode 100644 ms/controllerblueprints/modules/db-resources/src/test/kotlin/org/onap/ccsdk/cds/controllerblueprints/db/resources/BlueprintCatalogServiceImplTest.kt (limited to 'ms/controllerblueprints/modules/db-resources/src') diff --git a/ms/controllerblueprints/modules/db-resources/src/main/kotlin/org/onap/ccsdk/cds/controllerblueprints/db/resources/BlueprintCatalogServiceImpl.kt b/ms/controllerblueprints/modules/db-resources/src/main/kotlin/org/onap/ccsdk/cds/controllerblueprints/db/resources/BlueprintCatalogServiceImpl.kt deleted file mode 100644 index 7244e00e5..000000000 --- a/ms/controllerblueprints/modules/db-resources/src/main/kotlin/org/onap/ccsdk/cds/controllerblueprints/db/resources/BlueprintCatalogServiceImpl.kt +++ /dev/null @@ -1,87 +0,0 @@ -/* - * Copyright © 2017-2018 AT&T Intellectual Property. - * Modifications Copyright © 2019 Bell Canada. - * Modifications Copyright © 2019 IBM. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.onap.ccsdk.cds.controllerblueprints.db.resources - -import org.onap.ccsdk.cds.controllerblueprints.core.* -import org.onap.ccsdk.cds.controllerblueprints.core.config.BluePrintLoadConfiguration -import org.onap.ccsdk.cds.controllerblueprints.core.interfaces.BluePrintCatalogService -import org.onap.ccsdk.cds.controllerblueprints.core.interfaces.BluePrintValidatorService -import org.onap.ccsdk.cds.controllerblueprints.core.utils.BluePrintArchiveUtils -import org.onap.ccsdk.cds.controllerblueprints.core.utils.BluePrintMetadataUtils -import org.slf4j.LoggerFactory -import java.io.File -import java.nio.file.Path -import javax.persistence.MappedSuperclass - -@MappedSuperclass -abstract class BlueprintCatalogServiceImpl( - private val bluePrintLoadConfiguration: BluePrintLoadConfiguration, - private val blueprintValidator: BluePrintValidatorService) : BluePrintCatalogService { - - private val log = LoggerFactory.getLogger(BlueprintCatalogServiceImpl::class.java)!! - - override suspend fun saveToDatabase(processingId: String, blueprintFile: File, validate: Boolean): String { - - var archiveFile: File? = null - var workingDir: String? = null - - if (blueprintFile.isDirectory) { - log.info("Save processing($processingId) Working Dir(${blueprintFile.absolutePath})") - workingDir = blueprintFile.absolutePath - archiveFile = normalizedFile(bluePrintLoadConfiguration.blueprintArchivePath, processingId, "cba.zip") - - if (!BluePrintArchiveUtils.compress(blueprintFile, archiveFile)) { - throw BluePrintException("Fail to compress blueprint") - } - } else { - // Compressed File - log.info("Save processing($processingId) CBA(${blueprintFile.absolutePath})") - workingDir = normalizedPathName(bluePrintLoadConfiguration.blueprintWorkingPath, processingId) - archiveFile = blueprintFile - // Decompress the CBA file to working Directory - blueprintFile.deCompress(workingDir) - } - - var valid = BluePrintConstants.FLAG_N - if (validate) { - blueprintValidator.validateBluePrints(workingDir!!) - valid = BluePrintConstants.FLAG_Y - } - - val bluePrintRuntimeService = BluePrintMetadataUtils.getBluePrintRuntime(processingId, workingDir!!) - val metadata = bluePrintRuntimeService.bluePrintContext().metadata!! - metadata[BluePrintConstants.PROPERTY_BLUEPRINT_PROCESS_ID] = processingId - metadata[BluePrintConstants.PROPERTY_BLUEPRINT_VALID] = valid - - save(metadata, archiveFile) - - return processingId - } - - override suspend fun getFromDatabase(name: String, version: String, extract: Boolean): Path = get(name, version, - extract) - ?: throw BluePrintException("Could not find blueprint $name:$version from database") - - override suspend fun deleteFromDatabase(name: String, version: String) = delete(name, version) - - abstract suspend fun save(metadata: MutableMap, archiveFile: File) - abstract suspend fun get(name: String, version: String, extract: Boolean): Path? - abstract suspend fun delete(name: String, version: String) - -} \ No newline at end of file diff --git a/ms/controllerblueprints/modules/db-resources/src/main/kotlin/org/onap/ccsdk/cds/controllerblueprints/db/resources/repository/ModelContentRepository.kt b/ms/controllerblueprints/modules/db-resources/src/main/kotlin/org/onap/ccsdk/cds/controllerblueprints/db/resources/repository/ModelContentRepository.kt deleted file mode 100644 index a2c37593b..000000000 --- a/ms/controllerblueprints/modules/db-resources/src/main/kotlin/org/onap/ccsdk/cds/controllerblueprints/db/resources/repository/ModelContentRepository.kt +++ /dev/null @@ -1,91 +0,0 @@ -/* - * Copyright © 2017-2018 AT&T Intellectual Property. - * Modifications Copyright © 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. - */ - -package org.onap.ccsdk.cds.controllerblueprints.db.resources.repository - -import org.jetbrains.annotations.NotNull -import java.util.Optional -import org.springframework.data.jpa.repository.JpaRepository -import org.springframework.data.repository.NoRepositoryBean - -/** - * @param Model - * @param ModelContent - */ -@NoRepositoryBean -interface ModelContentRepository : JpaRepository { - - /** - * This is a findById method - * - * @param id id - * @return Optional - */ - @NotNull - override fun findById(@NotNull id: String): Optional - - /** - * This is a findTopByBlueprintModelAndContentType method - * - * @param blueprintModel blueprintModel - * @param contentType contentType - * @return B? - */ - fun findTopByBlueprintModelAndContentType(blueprintModel: T, contentType: String): B? - - /** - * This is a findByBlueprintModelAndContentType method - * - * @param blueprintModel blueprintModel - * @param contentType contentType - * @return List - */ - fun findByBlueprintModelAndContentType(blueprintModel: T, contentType: String): List - - /** - * This is a findByBlueprintModel method - * - * @param blueprintModel T - * @return List - */ - fun findByBlueprintModel(blueprintModel: T): List - - /** - * This is a findByBlueprintModelAndContentTypeAndName method - * - * @param blueprintModel blueprintModel - * @param contentType contentType - * @param name name - * @return B? - */ - fun findByBlueprintModelAndContentTypeAndName(blueprintModel: T, contentType: String, name: String): B? - - /** - * This is a deleteByMdeleteByBlueprintModelodelName method - * - * @param blueprintModel T - */ - fun deleteByBlueprintModel(blueprintModel: T) - - /** - * This is a deleteById method - * - * @param id id - */ - override fun deleteById(@NotNull id: String) - -} diff --git a/ms/controllerblueprints/modules/db-resources/src/main/kotlin/org/onap/ccsdk/cds/controllerblueprints/db/resources/repository/ModelRepository.kt b/ms/controllerblueprints/modules/db-resources/src/main/kotlin/org/onap/ccsdk/cds/controllerblueprints/db/resources/repository/ModelRepository.kt deleted file mode 100644 index c00b7b6e4..000000000 --- a/ms/controllerblueprints/modules/db-resources/src/main/kotlin/org/onap/ccsdk/cds/controllerblueprints/db/resources/repository/ModelRepository.kt +++ /dev/null @@ -1,90 +0,0 @@ -/* - * Copyright © 2017-2018 AT&T Intellectual Property. - * Modifications Copyright © 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. - */ - -package org.onap.ccsdk.cds.controllerblueprints.db.resources.repository - -import org.jetbrains.annotations.NotNull -import org.springframework.data.jpa.repository.JpaRepository -import org.springframework.data.repository.NoRepositoryBean -import java.util.* -import javax.transaction.Transactional - -/** - * @param Model - */ -@NoRepositoryBean -interface ModelRepository : JpaRepository { - - /** - * This is a findById method - * - * @param id id - * @return Optional - */ - @NotNull - override fun findById(@NotNull id: String): Optional - - /** - * This is a findByArtifactNameAndArtifactVersion method - * - * @param artifactName artifactName - * @param artifactVersion artifactVersion - * @return T? - */ - fun findByArtifactNameAndArtifactVersion(artifactName: String, artifactVersion: String): T? - - /** - * This is a findTopByArtifactNameOrderByArtifactIdDesc method - * - * @param artifactName artifactName - * @return T? - */ - fun findTopByArtifactNameOrderByArtifactVersionDesc(artifactName: String): T? - - /** - * This is a findTopByArtifactName method - * - * @param artifactName artifactName - * @return List - */ - fun findTopByArtifactName(artifactName: String): List - - /** - * This is a findByTagsContainingIgnoreCase method - * - * @param tags tags - * @return List - */ - fun findByTagsContainingIgnoreCase(tags: String): List - - /** - * This is a deleteByArtifactNameAndArtifactVersion method - * - * @param artifactName artifactName - * @param artifactVersion artifactVersion - */ - @Transactional - fun deleteByArtifactNameAndArtifactVersion(artifactName: String, artifactVersion: String) - - /** - * This is a deleteById method - * - * @param id id - */ - override fun deleteById(@NotNull id: String) - -} \ No newline at end of file diff --git a/ms/controllerblueprints/modules/db-resources/src/test/kotlin/org/onap/ccsdk/cds/controllerblueprints/db/resources/BlueprintCatalogServiceImplTest.kt b/ms/controllerblueprints/modules/db-resources/src/test/kotlin/org/onap/ccsdk/cds/controllerblueprints/db/resources/BlueprintCatalogServiceImplTest.kt deleted file mode 100644 index 9c08301de..000000000 --- a/ms/controllerblueprints/modules/db-resources/src/test/kotlin/org/onap/ccsdk/cds/controllerblueprints/db/resources/BlueprintCatalogServiceImplTest.kt +++ /dev/null @@ -1,21 +0,0 @@ -/* - * Copyright © 2019 Bell Canada - * Modifications Copyright © 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. - */ - -package org.onap.ccsdk.cds.controllerblueprints.db.resources - -// TODO -class BlueprintCatalogServiceImplTest \ No newline at end of file -- cgit 1.2.3-korg