[SO] Release so 1.13.0 image
[so.git] / mso-catalog-db / src / main / java / org / onap / so / db / catalog / beans / PnfResourceCustomization.java
1 /*
2  * ============LICENSE_START======================================================= Copyright (C) 2019 Nordix
3  * Foundation. ================================================================================ Licensed under the
4  * Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may
5  * obtain a copy of the License at
6  *
7  * http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software
8  * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND,
9  * either express or implied. See the License for the specific language governing permissions and limitations under the
10  * License.
11  *
12  * SPDX-License-Identifier: Apache-2.0 ============LICENSE_END=========================================================
13  */
14
15 package org.onap.so.db.catalog.beans;
16
17 import com.fasterxml.jackson.annotation.JsonFormat;
18 import com.openpojo.business.annotation.BusinessKey;
19 import java.io.Serializable;
20 import java.util.Date;
21 import javax.persistence.CascadeType;
22 import javax.persistence.Column;
23 import javax.persistence.Entity;
24 import javax.persistence.Id;
25 import javax.persistence.JoinColumn;
26 import javax.persistence.ManyToOne;
27 import javax.persistence.PrePersist;
28 import javax.persistence.Table;
29 import javax.persistence.Temporal;
30 import javax.persistence.TemporalType;
31 import org.apache.commons.lang3.builder.EqualsBuilder;
32 import org.apache.commons.lang3.builder.HashCodeBuilder;
33 import org.apache.commons.lang3.builder.ToStringBuilder;
34 import uk.co.blackpepper.bowman.annotation.LinkedResource;
35 import uk.co.blackpepper.bowman.annotation.RemoteResource;
36
37 @Entity
38 @RemoteResource("/pnfResourceCustomization")
39 @Table(name = "pnf_resource_customization")
40 public class PnfResourceCustomization implements Serializable {
41
42     private static final long serialVersionUID = 768026109321305415L;
43
44     @BusinessKey
45     @Id
46     @Column(name = "MODEL_CUSTOMIZATION_UUID")
47     private String modelCustomizationUUID;
48
49     @Column(name = "MODEL_INSTANCE_NAME")
50     private String modelInstanceName;
51
52     @Column(name = "CREATION_TIMESTAMP", updatable = false)
53     @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss.SSS")
54     @Temporal(TemporalType.TIMESTAMP)
55     private Date created;
56
57     @Column(name = "NF_FUNCTION")
58     private String nfFunction;
59
60     @Column(name = "NF_TYPE")
61     private String nfType;
62
63     @Column(name = "NF_ROLE")
64     private String nfRole;
65
66     @Column(name = "NF_NAMING_CODE")
67     private String nfNamingCode;
68
69     @Column(name = "MULTI_STAGE_DESIGN")
70     private String multiStageDesign;
71
72     @Column(name = "RESOURCE_INPUT")
73     private String resourceInput;
74
75     @ManyToOne(cascade = CascadeType.ALL)
76     @JoinColumn(name = "PNF_RESOURCE_MODEL_UUID")
77     private PnfResource pnfResources;
78
79     @Column(name = "CDS_BLUEPRINT_NAME")
80     private String blueprintName;
81
82     @Column(name = "CDS_BLUEPRINT_VERSION")
83     private String blueprintVersion;
84
85     @Column(name = "SKIP_POST_INSTANTIATION_CONFIGURATION", nullable = false)
86     private boolean skipPostInstConf = true;
87
88     @Column(name = "CONTROLLER_ACTOR")
89     private String controllerActor;
90
91     @Column(name = "DEFAULT_SOFTWARE_VERSION")
92     private String defaultSoftwareVersion;
93
94     @Override
95     public String toString() {
96         return new ToStringBuilder(this).append("modelCustomizationUUID", modelCustomizationUUID)
97                 .append("modelInstanceName", modelInstanceName).append("created", created)
98                 .append("nfFunction", nfFunction).append("nfType", nfType).append("nfRole", nfRole)
99                 .append("nfNamingCode", nfNamingCode).append("multiStageDesign", multiStageDesign)
100                 .append("pnfResources", pnfResources).append("blueprintName", blueprintName)
101                 .append("blueprintVersion", blueprintVersion).append("controllerActor", controllerActor)
102                 .append("defaultSoftwareVersion", defaultSoftwareVersion).toString();
103     }
104
105     @Override
106     public boolean equals(final Object other) {
107         if (!(other instanceof PnfResourceCustomization)) {
108             return false;
109         }
110         PnfResourceCustomization castOther = (PnfResourceCustomization) other;
111         return new EqualsBuilder().append(modelCustomizationUUID, castOther.modelCustomizationUUID).isEquals();
112     }
113
114     @Override
115     public int hashCode() {
116         return new HashCodeBuilder().append(modelCustomizationUUID).toHashCode();
117     }
118
119     @PrePersist
120     protected void onCreate() {
121         this.created = new Date();
122     }
123
124     public Date getCreationTimestamp() {
125         return this.created;
126     }
127
128     public void setCreated(Date created) {
129         this.created = created;
130     }
131
132     public String getModelCustomizationUUID() {
133         return modelCustomizationUUID;
134     }
135
136     public void setModelCustomizationUUID(String modelCustomizationUUID) {
137         this.modelCustomizationUUID = modelCustomizationUUID;
138     }
139
140     public String getModelInstanceName() {
141         return this.modelInstanceName;
142     }
143
144     public void setModelInstanceName(String modelInstanceName) {
145         this.modelInstanceName = modelInstanceName;
146     }
147
148     public String getNfFunction() {
149         return nfFunction;
150     }
151
152     public void setNfFunction(String nfFunction) {
153         this.nfFunction = nfFunction;
154     }
155
156     public String getNfType() {
157         return nfType;
158     }
159
160     public void setNfType(String nfType) {
161         this.nfType = nfType;
162     }
163
164     public String getNfRole() {
165         return nfRole;
166     }
167
168     public void setNfRole(String nfRole) {
169         this.nfRole = nfRole;
170     }
171
172     public String getNfNamingCode() {
173         return nfNamingCode;
174     }
175
176     public void setNfNamingCode(String nfNamingCode) {
177         this.nfNamingCode = nfNamingCode;
178     }
179
180     public String getMultiStageDesign() {
181         return this.multiStageDesign;
182     }
183
184     public void setMultiStageDesign(String multiStageDesign) {
185         this.multiStageDesign = multiStageDesign;
186     }
187
188     @LinkedResource
189     public PnfResource getPnfResources() {
190         return pnfResources;
191     }
192
193     public void setPnfResources(PnfResource pnfResources) {
194         this.pnfResources = pnfResources;
195     }
196
197     public Date getCreated() {
198         return created;
199     }
200
201     public String getResourceInput() {
202         return resourceInput;
203     }
204
205     public void setResourceInput(String resourceInput) {
206         this.resourceInput = resourceInput;
207     }
208
209
210     public String getBlueprintName() {
211         return blueprintName;
212     }
213
214     public void setBlueprintName(String blueprintName) {
215         this.blueprintName = blueprintName;
216     }
217
218     public String getBlueprintVersion() {
219         return blueprintVersion;
220     }
221
222     public void setBlueprintVersion(String blueprintVersion) {
223         this.blueprintVersion = blueprintVersion;
224     }
225
226     public boolean getSkipPostInstConf() {
227         return skipPostInstConf;
228     }
229
230     public void setSkipPostInstConf(boolean skipPostInstConf) {
231         this.skipPostInstConf = skipPostInstConf;
232     }
233
234     public String getControllerActor() {
235         return controllerActor;
236     }
237
238     public void setControllerActor(String controllerActor) {
239         this.controllerActor = controllerActor;
240     }
241
242     public String getDefaultSoftwareVersion() {
243         return defaultSoftwareVersion;
244     }
245
246     public void setDefaultSoftwareVersion(String defaultSoftwareVersion) {
247         this.defaultSoftwareVersion = defaultSoftwareVersion;
248     }
249 }