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;
25 import java.util.List;
26 import javax.persistence.CascadeType;
27 import javax.persistence.Column;
28 import javax.persistence.Entity;
29 import javax.persistence.FetchType;
30 import javax.persistence.GeneratedValue;
31 import javax.persistence.GenerationType;
32 import javax.persistence.Id;
33 import javax.persistence.JoinColumn;
34 import javax.persistence.ManyToOne;
35 import javax.persistence.OneToMany;
36 import javax.persistence.PrePersist;
37 import javax.persistence.Table;
38 import javax.persistence.Temporal;
39 import javax.persistence.TemporalType;
40 import org.apache.commons.lang3.builder.EqualsBuilder;
41 import org.apache.commons.lang3.builder.HashCodeBuilder;
42 import org.apache.commons.lang3.builder.ToStringBuilder;
43 import com.fasterxml.jackson.annotation.JsonFormat;
44 import com.openpojo.business.annotation.BusinessKey;
45 import uk.co.blackpepper.bowman.annotation.LinkedResource;
46 import uk.co.blackpepper.bowman.annotation.RemoteResource;
49 @RemoteResource("/cvnfcCustomization")
50 @Table(name = "cvnfc_customization")
51 public class CvnfcCustomization implements Serializable {
53 private static final long serialVersionUID = -3772469944364616486L;
58 @GeneratedValue(strategy = GenerationType.IDENTITY)
61 @Column(name = "MODEL_CUSTOMIZATION_UUID")
62 private String modelCustomizationUUID;
64 @Column(name = "MODEL_INSTANCE_NAME")
65 private String modelInstanceName;
67 @Column(name = "MODEL_UUID")
68 private String modelUUID;
70 @Column(name = "MODEL_INVARIANT_UUID")
71 private String modelInvariantUUID;
73 @Column(name = "MODEL_VERSION")
74 private String modelVersion;
76 @Column(name = "MODEL_NAME")
77 private String modelName;
79 @Column(name = "TOSCA_NODE_TYPE")
80 private String toscaNodeType;
82 @Column(name = "DESCRIPTION")
83 private String description;
85 @Column(name = "NFC_FUNCTION")
86 private String nfcFunction;
88 @Column(name = "NFC_NAMING_CODE")
89 private String nfcNamingCode;
91 @Column(name = "CREATION_TIMESTAMP", updatable = false)
92 @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss.SSS")
93 @Temporal(TemporalType.TIMESTAMP)
96 @ManyToOne(cascade = CascadeType.ALL, fetch = FetchType.EAGER)
97 @JoinColumn(name = "VF_MODULE_CUSTOMIZATION_ID")
98 private VfModuleCustomization vfModuleCustomization;
100 @ManyToOne(cascade = CascadeType.ALL, fetch = FetchType.EAGER)
101 @JoinColumn(name = "VNFC_CUST_MODEL_CUSTOMIZATION_UUID")
102 private VnfcCustomization vnfcCustomization;
104 @OneToMany(cascade = CascadeType.ALL, mappedBy = "cvnfcCustomization")
105 private List<CvnfcConfigurationCustomization> cvnfcConfigurationCustomization;
108 public boolean equals(final Object other) {
109 if (!(other instanceof CvnfcCustomization)) {
112 CvnfcCustomization castOther = (CvnfcCustomization) other;
113 return new EqualsBuilder().append(id, castOther.id).isEquals();
117 public int hashCode() {
118 return new HashCodeBuilder().append(id).toHashCode();
122 public String toString() {
123 return new ToStringBuilder(this).append("id", id).append("modelCustomizationUUID", modelCustomizationUUID)
124 .append("modelInstanceName", modelInstanceName).append("modelUUID", modelUUID)
125 .append("modelInvariantUUID", modelInvariantUUID).append("modelVersion", modelVersion)
126 .append("modelName", modelName).append("toscaNodeType", toscaNodeType)
127 .append("description", description).append("nfcFunction", nfcFunction)
128 .append("nfcNamingCode", nfcNamingCode).append("created", created)
129 .append("vnfVfmoduleCvnfcConfigurationCustomization", cvnfcConfigurationCustomization).toString();
133 public VnfcCustomization getVnfcCustomization() {
134 return vnfcCustomization;
137 public void setVnfcCustomization(VnfcCustomization vnfcCustomization) {
138 this.vnfcCustomization = vnfcCustomization;
142 protected void onCreate() {
143 this.created = new Date();
147 public List<CvnfcConfigurationCustomization> getCvnfcConfigurationCustomization() {
148 return cvnfcConfigurationCustomization;
151 public void setCvnfcConfigurationCustomization(
152 List<CvnfcConfigurationCustomization> cvnfcConfigurationCustomization) {
153 this.cvnfcConfigurationCustomization = cvnfcConfigurationCustomization;
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;