2 * ============LICENSE_START=======================================================
4 * ================================================================================
5 * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
6 * ================================================================================
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.
18 * ============LICENSE_END=========================================================
21 package org.onap.so.db.catalog.beans;
23 import java.io.Serializable;
24 import java.util.Date;
27 import javax.persistence.CascadeType;
28 import javax.persistence.Column;
29 import javax.persistence.Entity;
30 import javax.persistence.FetchType;
31 import javax.persistence.GeneratedValue;
32 import javax.persistence.GenerationType;
33 import javax.persistence.Id;
34 import javax.persistence.JoinColumn;
35 import javax.persistence.ManyToOne;
36 import javax.persistence.OneToMany;
37 import javax.persistence.PrePersist;
38 import javax.persistence.Table;
39 import javax.persistence.Temporal;
40 import javax.persistence.TemporalType;
42 import org.apache.commons.lang3.builder.EqualsBuilder;
43 import org.apache.commons.lang3.builder.HashCodeBuilder;
44 import org.apache.commons.lang3.builder.ToStringBuilder;
46 import com.fasterxml.jackson.annotation.JsonFormat;
47 import com.openpojo.business.annotation.BusinessKey;
49 import uk.co.blackpepper.bowman.annotation.LinkedResource;
52 @Table(name = "cvnfc_customization")
53 public class CvnfcCustomization implements Serializable {
55 private static final long serialVersionUID = -3772469944364616486L;
59 @GeneratedValue(strategy = GenerationType.IDENTITY)
63 @Column(name = "MODEL_CUSTOMIZATION_UUID")
64 private String modelCustomizationUUID;
66 @Column(name = "MODEL_INSTANCE_NAME")
67 private String modelInstanceName;
69 @Column(name = "MODEL_UUID")
70 private String modelUUID;
72 @Column(name = "MODEL_INVARIANT_UUID")
73 private String modelInvariantUUID;
75 @Column(name = "MODEL_VERSION")
76 private String modelVersion;
78 @Column(name = "MODEL_NAME")
79 private String modelName;
81 @Column(name = "TOSCA_NODE_TYPE")
82 private String toscaNodeType;
84 @Column(name = "DESCRIPTION")
85 private String description;
87 @Column(name = "NFC_FUNCTION")
88 private String nfcFunction;
90 @Column(name = "NFC_NAMING_CODE")
91 private String nfcNamingCode;
93 @Column(name = "CREATION_TIMESTAMP", updatable = false)
94 @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss.SSS")
95 @Temporal(TemporalType.TIMESTAMP)
98 @ManyToOne(cascade = CascadeType.ALL, fetch = FetchType.LAZY)
99 @JoinColumn(name = "VF_MODULE_CUST_MODEL_CUSTOMIZATION_UUID")
100 private VfModuleCustomization vfModuleCustomization;
102 @ManyToOne(cascade = CascadeType.ALL, fetch = FetchType.LAZY)
103 @JoinColumn(name = "VNFC_CUST_MODEL_CUSTOMIZATION_UUID")
104 private VnfcCustomization vnfcCustomization;
106 @ManyToOne(cascade = CascadeType.ALL, fetch = FetchType.LAZY)
107 @JoinColumn(name = "VNF_RESOURCE_CUST_MODEL_CUSTOMIZATION_UUID")
108 private VnfResourceCustomization vnfResourceCustomization;
110 @OneToMany(cascade = CascadeType.ALL, mappedBy = "cvnfcCustomization")
111 private Set<VnfVfmoduleCvnfcConfigurationCustomization> vnfVfmoduleCvnfcConfigurationCustomization;
114 public boolean equals(final Object other) {
115 if (!(other instanceof CvnfcCustomization)) {
118 CvnfcCustomization castOther = (CvnfcCustomization) other;
119 return new EqualsBuilder().append(modelCustomizationUUID, castOther.modelCustomizationUUID).isEquals();
123 public int hashCode() {
124 return new HashCodeBuilder().append(modelCustomizationUUID).append(vfModuleCustomization).append(vnfcCustomization).append(vnfResourceCustomization).toHashCode();
128 public String toString() {
129 return new ToStringBuilder(this).append("id", id).append("modelCustomizationUUID", modelCustomizationUUID)
130 .append("modelInstanceName", modelInstanceName).append("modelUUID", modelUUID)
131 .append("modelInvariantUUID", modelInvariantUUID).append("modelVersion", modelVersion)
132 .append("modelName", modelName).append("toscaNodeType", toscaNodeType)
133 .append("description", description).append("nfcFunction", nfcFunction)
134 .append("nfcNamingCode", nfcNamingCode).append("created", created)
135 .append("vfModuleCustomization", vfModuleCustomization).append("vnfcCustomization", vnfcCustomization)
136 .append("vnfResourceCustomization", vnfResourceCustomization)
137 .append("vnfVfmoduleCvnfcConfigurationCustomization", vnfVfmoduleCvnfcConfigurationCustomization)
142 protected void onCreate() {
143 this.created = new Date();
147 public Set<VnfVfmoduleCvnfcConfigurationCustomization> getVnfVfmoduleCvnfcConfigurationCustomization() {
148 return vnfVfmoduleCvnfcConfigurationCustomization;
151 public void setVnfVfmoduleCvnfcConfigurationCustomization(
152 Set<VnfVfmoduleCvnfcConfigurationCustomization> vnfVfmoduleCvnfcConfigurationCustomization) {
153 this.vnfVfmoduleCvnfcConfigurationCustomization = vnfVfmoduleCvnfcConfigurationCustomization;
156 public Integer getId() {
160 public void setId(Integer id) {
164 public String getModelCustomizationUUID() {
165 return modelCustomizationUUID;
168 public void setModelCustomizationUUID(String modelCustomizationUUID) {
169 this.modelCustomizationUUID = modelCustomizationUUID;
172 public String getModelInstanceName() {
173 return modelInstanceName;
176 public void setModelInstanceName(String modelInstanceName) {
177 this.modelInstanceName = modelInstanceName;
180 public String getModelUUID() {
184 public void setModelUUID(String modelUUID) {
185 this.modelUUID = modelUUID;
188 public String getModelInvariantUUID() {
189 return modelInvariantUUID;
192 public void setModelInvariantUUID(String modelInvariantUUID) {
193 this.modelInvariantUUID = modelInvariantUUID;
196 public String getModelVersion() {
200 public void setModelVersion(String modelVersion) {
201 this.modelVersion = modelVersion;
204 public String getModelName() {
208 public void setModelName(String modelName) {
209 this.modelName = modelName;
212 public String getToscaNodeType() {
213 return toscaNodeType;
216 public void setToscaNodeType(String toscaNodeType) {
217 this.toscaNodeType = toscaNodeType;
220 public String getDescription() {
224 public void setDescription(String description) {
225 this.description = description;
228 public String getNfcFunction() {
232 public void setNfcFunction(String nfcFunction) {
233 this.nfcFunction = nfcFunction;
236 public String getNfcNamingCode() {
237 return nfcNamingCode;
240 public void setNfcNamingCode(String nfcNamingCode) {
241 this.nfcNamingCode = nfcNamingCode;
244 public Date getCreated() {
248 public void setCreated(Date created) {
249 this.created = created;
253 public VfModuleCustomization getVfModuleCustomization() {
254 return vfModuleCustomization;
257 public void setVfModuleCustomization(VfModuleCustomization vfModuleCustomization) {
258 this.vfModuleCustomization = vfModuleCustomization;
262 public VnfcCustomization getVnfcCustomization() {
263 return vnfcCustomization;
266 public void setVnfcCustomization(VnfcCustomization vnfcCustomization) {
267 this.vnfcCustomization = vnfcCustomization;
271 public VnfResourceCustomization getVnfResourceCustomization() {
272 return vnfResourceCustomization;
275 public void setVnfResourceCustomization(VnfResourceCustomization vnfResourceCustomization) {
276 this.vnfResourceCustomization = vnfResourceCustomization;