add search by meta data in cds-ui server and blueprint processor
[ccsdk/cds.git] / ms / blueprintsprocessor / modules / commons / db-lib / src / main / kotlin / org / onap / ccsdk / cds / blueprintsprocessor / db / primary / repository / BlueprintModelSearchRepository.kt
1 /*
2  *  Copyright © 2019 IBM.
3  *  Modifications Copyright © 2019 Orange.
4  *
5  *  Licensed under the Apache License, Version 2.0 (the "License");
6  *  you may not use this file except in compliance with the License.
7  *  You may obtain a copy of the License at
8  *
9  *      http://www.apache.org/licenses/LICENSE-2.0
10  *
11  *  Unless required by applicable law or agreed to in writing, software
12  *  distributed under the License is distributed on an "AS IS" BASIS,
13  *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  *  See the License for the specific language governing permissions and
15  *  limitations under the License.
16  */
17
18 package org.onap.ccsdk.cds.blueprintsprocessor.db.primary.repository
19
20 import org.onap.ccsdk.cds.blueprintsprocessor.db.primary.domain.BlueprintModelSearch
21 import org.springframework.data.jpa.repository.JpaRepository
22 import org.springframework.stereotype.Repository
23
24 /**
25  * Provide Configuration Generator AsdcArtifactsRepository
26  *
27  * @author Brinda Santh
28  * @version 1.0
29  */
30 @Repository
31 interface BlueprintModelSearchRepository : JpaRepository<BlueprintModelSearch, Long> {
32
33     /**
34      * This is a findById method
35      *
36      * @param id id
37      * @return Optional<BlueprintModelSearch>
38     </BlueprintModelSearch> */
39     fun findById(id: String): BlueprintModelSearch?
40
41     /**
42      * This is a findAll method
43      * @return List<BlueprintModelSearch>
44     </BlueprintModelSearch> */
45     override fun findAll(): List<BlueprintModelSearch>
46
47     /**
48      * This is a findByArtifactNameAndArtifactVersion method
49      *
50      * @param artifactName artifactName
51      * @param artifactVersion artifactVersion
52      * @return Optional<AsdcArtifacts>
53     </AsdcArtifacts> */
54     fun findByArtifactNameAndArtifactVersion(artifactName: String, artifactVersion: String): BlueprintModelSearch?
55
56     /**
57      * This is a findByTagsContainingIgnoreCase method
58      *
59      * @param tags
60      * @return Optional<BlueprintModelSearch>
61     </BlueprintModelSearch> */
62     fun findByTagsContainingIgnoreCase(tags: String): List<BlueprintModelSearch>
63
64     /**
65      * This is a findby some attributes method
66      *
67      * @author Shaaban Ebrahim
68      *
69      * @param updatedBy
70      * @param tags
71      * @param artifactName
72      * @param artifactVersion
73      * @param artifactType
74      * @return Optional<BlueprintModelSearch>
75     </BlueprintModelSearch>
76      */
77     fun findByUpdatedByOrTagsOrOrArtifactNameOrOrArtifactVersionOrArtifactType(updatedBy: String, tags: String, artifactName: String, artifactVersion: String,
78                                                                                artifactType: String): List<BlueprintModelSearch>
79 }