diff options
author | Alexis de Talhouët <adetalhouet89@gmail.com> | 2019-01-07 16:33:02 -0500 |
---|---|---|
committer | Alexis de Talhouët <alexis.de_talhouet@bell.ca> | 2019-01-09 22:11:43 +0000 |
commit | 7f6c527bac8c0c60a2988e59ff7251178f904cdd (patch) | |
tree | 5fc60442bc92250646ad9b104fb04174a44fc1e1 /ms/controllerblueprints/modules/service/src/main/java | |
parent | 88734c15a7822df7d27c23bcb08a3e808dd6634b (diff) |
Add support for blueprintprocessor runtime DB
- created db-resources module to store controller blueprint
related controller blueprint repository and entities. Also
create an abstract BlueprintCatalogServiceImpl so it can be
used both by controllerblueprint and blueprintprocessor
- created blueprint-validation to store the implementation
of the validation interface.
- change controllerblueprint service to levrage db-resources
- implement CatalogService for blueprintprocessor db-lib by
using db-resources.
Change-Id: I0539e414e4ff3b7a6edf0f6304d6cbc5e6eac404
Issue-ID: CCSDK-664
Signed-off-by: Alexis de Talhouët <adetalhouet89@gmail.com>
Diffstat (limited to 'ms/controllerblueprints/modules/service/src/main/java')
-rw-r--r-- | ms/controllerblueprints/modules/service/src/main/java/org/onap/ccsdk/apps/controllerblueprints/service/BlueprintModelService.java | 32 | ||||
-rw-r--r-- | ms/controllerblueprints/modules/service/src/main/java/org/onap/ccsdk/apps/controllerblueprints/service/common/ApplicationConstants.java | 34 | ||||
-rw-r--r-- | ms/controllerblueprints/modules/service/src/main/java/org/onap/ccsdk/apps/controllerblueprints/service/repository/BlueprintModelContentRepository.java | 102 | ||||
-rw-r--r-- | ms/controllerblueprints/modules/service/src/main/java/org/onap/ccsdk/apps/controllerblueprints/service/repository/BlueprintModelRepository.java | 96 | ||||
-rw-r--r-- | ms/controllerblueprints/modules/service/src/main/java/org/onap/ccsdk/apps/controllerblueprints/service/repository/ControllerBlueprintModelSearchRepository.java (renamed from ms/controllerblueprints/modules/service/src/main/java/org/onap/ccsdk/apps/controllerblueprints/service/repository/BlueprintModelSearchRepository.java) | 138 |
5 files changed, 86 insertions, 316 deletions
diff --git a/ms/controllerblueprints/modules/service/src/main/java/org/onap/ccsdk/apps/controllerblueprints/service/BlueprintModelService.java b/ms/controllerblueprints/modules/service/src/main/java/org/onap/ccsdk/apps/controllerblueprints/service/BlueprintModelService.java index ba27742af..ca0e24393 100644 --- a/ms/controllerblueprints/modules/service/src/main/java/org/onap/ccsdk/apps/controllerblueprints/service/BlueprintModelService.java +++ b/ms/controllerblueprints/modules/service/src/main/java/org/onap/ccsdk/apps/controllerblueprints/service/BlueprintModelService.java @@ -21,14 +21,14 @@ import com.att.eelf.configuration.EELFLogger; import com.att.eelf.configuration.EELFManager;
import org.jetbrains.annotations.NotNull;
import org.onap.ccsdk.apps.controllerblueprints.core.BluePrintException;
+import org.onap.ccsdk.apps.controllerblueprints.core.config.BluePrintLoadConfiguration;
import org.onap.ccsdk.apps.controllerblueprints.core.interfaces.BluePrintCatalogService;
import org.onap.ccsdk.apps.controllerblueprints.core.utils.BluePrintFileUtils;
import org.onap.ccsdk.apps.controllerblueprints.service.domain.BlueprintModel;
import org.onap.ccsdk.apps.controllerblueprints.service.domain.BlueprintModelSearch;
-import org.onap.ccsdk.apps.controllerblueprints.service.load.BluePrintLoadConfiguration;
-import org.onap.ccsdk.apps.controllerblueprints.service.repository.BlueprintModelContentRepository;
-import org.onap.ccsdk.apps.controllerblueprints.service.repository.BlueprintModelRepository;
-import org.onap.ccsdk.apps.controllerblueprints.service.repository.BlueprintModelSearchRepository;
+import org.onap.ccsdk.apps.controllerblueprints.service.repository.ControllerBlueprintModelContentRepository;
+import org.onap.ccsdk.apps.controllerblueprints.service.repository.ControllerBlueprintModelRepository;
+import org.onap.ccsdk.apps.controllerblueprints.service.repository.ControllerBlueprintModelSearchRepository;
import org.onap.ccsdk.apps.controllerblueprints.service.utils.BluePrintEnhancerUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.core.io.ByteArrayResource;
@@ -65,17 +65,17 @@ public class BlueprintModelService { private BluePrintCatalogService bluePrintCatalogService;
@Autowired
- private BlueprintModelSearchRepository blueprintModelSearchRepository;
+ private ControllerBlueprintModelSearchRepository blueprintModelSearchRepository;
@Autowired
- private BlueprintModelRepository blueprintModelRepository;
+ private ControllerBlueprintModelRepository blueprintModelRepository;
@Autowired
- private BlueprintModelContentRepository blueprintModelContentRepository;
+ private ControllerBlueprintModelContentRepository blueprintModelContentRepository;
private static final String BLUEPRINT_MODEL_ID_FAILURE_MSG = "failed to get blueprint model id(%d) from repo";
private static final String BLUEPRINT_MODEL_NAME_VERSION_FAILURE_MSG = "failed to get blueprint model by name(%d)" +
- " and version(%d) from repo";
+ " and version(%d) from repo";
/**
* This is a saveBlueprintModel method
@@ -86,10 +86,12 @@ public class BlueprintModelService { */
public Mono<BlueprintModelSearch> saveBlueprintModel(FilePart filePart) throws BluePrintException {
try {
- Path cbaLocation = BluePrintFileUtils.Companion.getCbaStorageDirectory(bluePrintLoadConfiguration.blueprintArchivePath);
+ Path cbaLocation = BluePrintFileUtils.Companion
+ .getCbaStorageDirectory(bluePrintLoadConfiguration.blueprintArchivePath);
return BluePrintEnhancerUtils.Companion.saveCBAFile(filePart, cbaLocation).map(fileName -> {
- String blueprintId = bluePrintCatalogService.uploadToDataBase(cbaLocation.resolve(fileName).toString(), false);
- return blueprintModelSearchRepository.findById(blueprintId).get();
+ String blueprintId = bluePrintCatalogService
+ .uploadToDataBase(cbaLocation.resolve(fileName).toString(), false);
+ return blueprintModelSearchRepository.findById(blueprintId).get();
});
} catch (IOException | BluePrintException e) {
@@ -122,14 +124,15 @@ public class BlueprintModelService { /**
* This is a getBlueprintModelByNameAndVersion method
*
- * @param name name
+ * @param name name
* @param version version
* @return BlueprintModelSearch
*/
- public BlueprintModelSearch getBlueprintModelByNameAndVersion(@NotNull String name, @NotNull String version) throws BluePrintException {
+ public BlueprintModelSearch getBlueprintModelByNameAndVersion(@NotNull String name, @NotNull String version)
+ throws BluePrintException {
BlueprintModelSearch blueprintModelSearch;
Optional<BlueprintModelSearch> dbBlueprintModel = blueprintModelSearchRepository
- .findByArtifactNameAndArtifactVersion(name, version);
+ .findByArtifactNameAndArtifactVersion(name, version);
if (dbBlueprintModel.isPresent()) {
blueprintModelSearch = dbBlueprintModel.get();
} else {
@@ -142,7 +145,6 @@ public class BlueprintModelService { /**
* This is a downloadBlueprintModelFile method to find the target file to download and return a file resource using MONO
*
- * @param (id)
* @return ResponseEntity<Resource>
*/
public ResponseEntity<Resource> downloadBlueprintModelFile(@NotNull String id) throws BluePrintException {
diff --git a/ms/controllerblueprints/modules/service/src/main/java/org/onap/ccsdk/apps/controllerblueprints/service/common/ApplicationConstants.java b/ms/controllerblueprints/modules/service/src/main/java/org/onap/ccsdk/apps/controllerblueprints/service/common/ApplicationConstants.java deleted file mode 100644 index d16f1b135..000000000 --- a/ms/controllerblueprints/modules/service/src/main/java/org/onap/ccsdk/apps/controllerblueprints/service/common/ApplicationConstants.java +++ /dev/null @@ -1,34 +0,0 @@ -/*
- * Copyright © 2017-2018 AT&T 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.service.common;
-
-/**
- * ApplicationConstants.java Purpose: Provide ControllerBluprintsApplication Constant Information
- *
- * @author Brinda Santh
- * @version 1.0
- */
-public final class ApplicationConstants {
- public static final String ACTIVE_Y = "Y";
- public static final String ACTIVE_N = "N";
- public static final String ASDC_ARTIFACT_TYPE_SDNC_MODEL = "SDNC_MODEL";
-
- private ApplicationConstants() {
-
- }
-
-}
diff --git a/ms/controllerblueprints/modules/service/src/main/java/org/onap/ccsdk/apps/controllerblueprints/service/repository/BlueprintModelContentRepository.java b/ms/controllerblueprints/modules/service/src/main/java/org/onap/ccsdk/apps/controllerblueprints/service/repository/BlueprintModelContentRepository.java deleted file mode 100644 index 7940c9447..000000000 --- a/ms/controllerblueprints/modules/service/src/main/java/org/onap/ccsdk/apps/controllerblueprints/service/repository/BlueprintModelContentRepository.java +++ /dev/null @@ -1,102 +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.apps.controllerblueprints.service.repository;
-
-import org.onap.ccsdk.apps.controllerblueprints.service.domain.BlueprintModel;
-import org.onap.ccsdk.apps.controllerblueprints.service.domain.BlueprintModelContent;
-import org.springframework.data.jpa.repository.JpaRepository;
-import org.springframework.stereotype.Repository;
-
-import javax.validation.constraints.NotNull;
-import java.util.List;
-import java.util.Optional;
-
-/**
- * BlueprintModelContentRepository.java Purpose: Provide BlueprintModelContentRepository of Repository
- *
- * @author Brinda Santh
- * @version 1.0
- */
-@Repository
-public interface BlueprintModelContentRepository extends JpaRepository<BlueprintModelContent, String> {
-
- /**
- * This is a findById method
- *
- * @param id id
- * @return Optional<AsdcArtifacts>
- */
- @NotNull
- Optional<BlueprintModelContent> findById(@NotNull String id);
-
- /**
- * This is a findTopByBlueprintModelAndContentType method
- *
- * @param blueprintModel blueprintModel
- * @param contentType contentType
- * @return Optional<BlueprintModelContent>
- */
- @SuppressWarnings("unused")
- Optional<BlueprintModelContent> findTopByBlueprintModelAndContentType(BlueprintModel blueprintModel, String contentType);
-
- /**
- * This is a findByBlueprintModelAndContentType method
- *
- * @param blueprintModel blueprintModel
- * @param contentType contentType
- * @return Optional<BlueprintModelContent>
- */
- @SuppressWarnings("unused")
- List<BlueprintModelContent> findByBlueprintModelAndContentType(BlueprintModel blueprintModel, String contentType);
-
- /**
- * This is a findByBlueprintModel method
- *
- * @param blueprintModel blueprintModel
- * @return Optional<BlueprintModelContent>
- */
- @SuppressWarnings("unused")
- List<BlueprintModelContent> findByBlueprintModel(BlueprintModel blueprintModel);
-
- /**
- * This is a findByBlueprintModelAndContentTypeAndName method
- *
- * @param blueprintModel blueprintModel
- * @param contentType contentType
- * @param name name
- * @return Optional<BlueprintModelContent>
- */
- @SuppressWarnings("unused")
- Optional<BlueprintModelContent> findByBlueprintModelAndContentTypeAndName(BlueprintModel blueprintModel,
- String contentType, String name);
-
- /**
- * This is a deleteByMdeleteByBlueprintModelodelName method
- *
- * @param blueprintModel blueprintModel
- */
- void deleteByBlueprintModel(BlueprintModel blueprintModel);
-
- /**
- * This is a deleteById method
- *
- * @param id id
- */
- void deleteById(@NotNull String id);
-
-}
diff --git a/ms/controllerblueprints/modules/service/src/main/java/org/onap/ccsdk/apps/controllerblueprints/service/repository/BlueprintModelRepository.java b/ms/controllerblueprints/modules/service/src/main/java/org/onap/ccsdk/apps/controllerblueprints/service/repository/BlueprintModelRepository.java deleted file mode 100644 index 413160498..000000000 --- a/ms/controllerblueprints/modules/service/src/main/java/org/onap/ccsdk/apps/controllerblueprints/service/repository/BlueprintModelRepository.java +++ /dev/null @@ -1,96 +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.apps.controllerblueprints.service.repository;
-
-import org.onap.ccsdk.apps.controllerblueprints.service.domain.BlueprintModel;
-import org.springframework.data.jpa.repository.JpaRepository;
-import org.springframework.stereotype.Repository;
-
-import javax.validation.constraints.NotNull;
-import java.util.List;
-import java.util.Optional;
-
-/**
- * AsdcArtifactsRepository.java Purpose: Provide Configuration Generator AsdcArtifactsRepository
- *
- * @author Brinda Santh
- * @version 1.0
- */
-@Repository
-public interface BlueprintModelRepository extends JpaRepository<BlueprintModel, String> {
- /**
- * This is a findById method
- *
- * @param id id
- * @return Optional<AsdcArtifacts>
- */
- @NotNull
- Optional<BlueprintModel> findById(@NotNull String id);
-
- /**
- * This is a findByArtifactNameAndArtifactVersion method
- *
- * @param artifactName artifactName
- * @param artifactVersion artifactVersion
- * @return Optional<AsdcArtifacts>
- */
- Optional<BlueprintModel> findByArtifactNameAndArtifactVersion(String artifactName, String artifactVersion);
-
- /**
- * This is a findTopByArtifactNameOrderByArtifactIdDesc method
- *
- * @param artifactName artifactName
- * @return Optional<AsdcArtifacts>
- */
- Optional<BlueprintModel> findTopByArtifactNameOrderByArtifactVersionDesc(String artifactName);
-
- /**
- * This is a findTopByArtifactName method
- *
- * @param artifactName artifactName
- * @return Optional<AsdcArtifacts>
- */
- @SuppressWarnings("unused")
- List<BlueprintModel> findTopByArtifactName(String artifactName);
-
- /**
- * This is a findByTagsContainingIgnoreCase method
- *
- * @param tags tags
- * @return Optional<ModelType>
- */
- List<BlueprintModel> findByTagsContainingIgnoreCase(String tags);
-
- /**
- * This is a deleteByArtifactNameAndArtifactVersion method
- *
- * @param artifactName artifactName
- * @param artifactVersion artifactVersion
- */
- @SuppressWarnings("unused")
- void deleteByArtifactNameAndArtifactVersion(String artifactName, String artifactVersion);
-
- /**
- * This is a deleteById method
- *
- * @param id id
- */
- @SuppressWarnings("unused")
- void deleteById(@NotNull String id);
-
-}
diff --git a/ms/controllerblueprints/modules/service/src/main/java/org/onap/ccsdk/apps/controllerblueprints/service/repository/BlueprintModelSearchRepository.java b/ms/controllerblueprints/modules/service/src/main/java/org/onap/ccsdk/apps/controllerblueprints/service/repository/ControllerBlueprintModelSearchRepository.java index ed863563a..343f8c67b 100644 --- a/ms/controllerblueprints/modules/service/src/main/java/org/onap/ccsdk/apps/controllerblueprints/service/repository/BlueprintModelSearchRepository.java +++ b/ms/controllerblueprints/modules/service/src/main/java/org/onap/ccsdk/apps/controllerblueprints/service/repository/ControllerBlueprintModelSearchRepository.java @@ -1,69 +1,69 @@ -/*
- * 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.apps.controllerblueprints.service.repository;
-
-import org.onap.ccsdk.apps.controllerblueprints.service.domain.BlueprintModelSearch;
-import org.springframework.data.jpa.repository.JpaRepository;
-import org.springframework.stereotype.Repository;
-
-import javax.validation.constraints.NotNull;
-import java.util.List;
-import java.util.Optional;
-
-/**
- * BlueprintModelSearchRepository.java Purpose: Provide Configuration Generator AsdcArtifactsRepository
- *
- * @author Brinda Santh
- * @version 1.0
- */
-@Repository
-public interface BlueprintModelSearchRepository extends JpaRepository<BlueprintModelSearch, Long> {
-
- /**
- * This is a findById method
- *
- * @param id id
- * @return Optional<BlueprintModelSearch>
- */
- @NotNull
- Optional<BlueprintModelSearch> findById(@NotNull String id);
-
- /**
- * This is a findAll method
- * @return List<BlueprintModelSearch>
- */
- @Override
- List<BlueprintModelSearch> findAll();
-
- /**
- * This is a findByArtifactNameAndArtifactVersion method
- *
- * @param artifactName artifactName
- * @param artifactVersion artifactVersion
- * @return Optional<AsdcArtifacts>
- */
- Optional<BlueprintModelSearch> findByArtifactNameAndArtifactVersion(String artifactName, String artifactVersion);
-
- /**
- * This is a findByTagsContainingIgnoreCase method
- *
- * @param tags
- * @return Optional<BlueprintModelSearch>
- */
- List<BlueprintModelSearch> findByTagsContainingIgnoreCase(String tags);
-}
+/* + * 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.apps.controllerblueprints.service.repository; + +import org.onap.ccsdk.apps.controllerblueprints.service.domain.BlueprintModelSearch; +import org.springframework.data.jpa.repository.JpaRepository; +import org.springframework.stereotype.Repository; + +import javax.validation.constraints.NotNull; +import java.util.List; +import java.util.Optional; + +/** + * ControllerBlueprintModelSearchRepository.java Purpose: Provide Configuration Generator AsdcArtifactsRepository + * + * @author Brinda Santh + * @version 1.0 + */ +@Repository +public interface ControllerBlueprintModelSearchRepository extends JpaRepository<BlueprintModelSearch, Long> { + + /** + * This is a findById method + * + * @param id id + * @return Optional<BlueprintModelSearch> + */ + @NotNull + Optional<BlueprintModelSearch> findById(@NotNull String id); + + /** + * This is a findAll method + * @return List<BlueprintModelSearch> + */ + @Override + List<BlueprintModelSearch> findAll(); + + /** + * This is a findByArtifactNameAndArtifactVersion method + * + * @param artifactName artifactName + * @param artifactVersion artifactVersion + * @return Optional<AsdcArtifacts> + */ + Optional<BlueprintModelSearch> findByArtifactNameAndArtifactVersion(String artifactName, String artifactVersion); + + /** + * This is a findByTagsContainingIgnoreCase method + * + * @param tags + * @return Optional<BlueprintModelSearch> + */ + List<BlueprintModelSearch> findByTagsContainingIgnoreCase(String tags); +} |