2 * Copyright © 2017-2018 AT&T Intellectual Property.
3 * Modifications Copyright © 2019 IBM.
4 * Modifications Copyright © 2021 Orange.
5 * Modifications Copyright © 2020 Deutsche Telekom AG.
7 * Licensed under the Apache License, Version 2.0 (the "License");
8 * you may not use this file except in compliance with the License.
9 * You may obtain a copy of the License at
11 * http://www.apache.org/licenses/LICENSE-2.0
13 * Unless required by applicable law or agreed to in writing, software
14 * distributed under the License is distributed on an "AS IS" BASIS,
15 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16 * See the License for the specific language governing permissions and
17 * limitations under the License.
20 package org.onap.ccsdk.cds.blueprintsprocessor.functions.k8s.instance
22 import com.fasterxml.jackson.annotation.JsonIgnoreProperties
23 import com.fasterxml.jackson.annotation.JsonProperty
25 @JsonIgnoreProperties(ignoreUnknown = true)
28 @get:JsonProperty("id")
29 var id: String? = null
31 @get:JsonProperty("namespace")
32 var namespace: String? = "default"
34 @get:JsonProperty("request")
35 var request: K8sRbInstanceRequest? = null
37 @get:JsonProperty("release-name")
38 var releaseName: String? = null
40 @get:JsonProperty("resources")
41 var resources: List<K8sRbInstanceResource>? = null
43 override fun toString(): String {
44 return "$id:$releaseName:$namespace"
47 override fun equals(other: Any?): Boolean {
48 if (this === other) return true
49 if (javaClass != other?.javaClass) return false
53 override fun hashCode(): Int {
54 return javaClass.hashCode()
58 class K8sRbInstanceResource {
60 @get:JsonProperty("Name")
61 var name: String? = null
63 @get:JsonProperty("GVK")
64 var gvk: K8sRbInstanceGvk? = null
66 override fun toString(): String {
70 override fun equals(other: Any?): Boolean {
71 if (this === other) return true
72 if (javaClass != other?.javaClass) return false
76 override fun hashCode(): Int {
77 return javaClass.hashCode()