610a3cfe39dd000ef18e8e42b3f6a9808d188552
[ccsdk/cds.git] /
1 /*
2  * Copyright (C) 2019 Bell Canada.
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  *      http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 package org.onap.ccsdk.cds.blueprintsprocessor.functions.resource.resolution.db
17
18 import org.springframework.data.jpa.repository.JpaRepository
19 import javax.transaction.Transactional
20
21 interface TemplateResolutionRepository : JpaRepository<TemplateResolution, String> {
22
23     fun findByResourceIdAndResourceTypeAndBlueprintNameAndBlueprintVersionAndArtifactNameAndOccurrence(
24         resourceId: String,
25         resourceType: String,
26         blueprintName: String?,
27         blueprintVersion: String?,
28         artifactName: String,
29         occurrence: Int
30     ): TemplateResolution?
31
32     fun findByResolutionKeyAndBlueprintNameAndBlueprintVersionAndArtifactNameAndOccurrence(
33         key: String,
34         blueprintName: String?,
35         blueprintVersion: String?,
36         artifactName: String,
37         occurrence: Int
38     ): TemplateResolution?
39
40     @Transactional
41     fun deleteByResourceIdAndResourceTypeAndBlueprintNameAndBlueprintVersionAndArtifactNameAndOccurrence(
42         resourceId: String,
43         resourceType: String,
44         blueprintName: String?,
45         blueprintVersion: String?,
46         artifactName: String,
47         occurrence: Int
48     )
49
50     @Transactional
51     fun deleteByResolutionKeyAndBlueprintNameAndBlueprintVersionAndArtifactNameAndOccurrence(
52         key: String,
53         blueprintName: String?,
54         blueprintVersion: String?,
55         artifactName: String,
56         occurrence: Int
57     )
58 }