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;
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.JoinColumns;
35 import javax.persistence.ManyToOne;
36 import javax.persistence.PrePersist;
37 import javax.persistence.Table;
38 import javax.persistence.Temporal;
39 import javax.persistence.TemporalType;
41 import org.apache.commons.lang3.builder.EqualsBuilder;
42 import org.apache.commons.lang3.builder.HashCodeBuilder;
43 import org.apache.commons.lang3.builder.ToStringBuilder;
45 import com.fasterxml.jackson.annotation.JsonFormat;
46 import com.openpojo.business.annotation.BusinessKey;
48 import uk.co.blackpepper.bowman.annotation.LinkedResource;
51 @Table(name = "cvnfc_configuration_customization")
52 public class CvnfcConfigurationCustomization implements Serializable {
54 private static final long serialVersionUID = -3153216266280581103L;
59 @GeneratedValue(strategy = GenerationType.IDENTITY)
62 @Column(name = "MODEL_CUSTOMIZATION_UUID")
63 private String modelCustomizationUUID;
65 @Column(name = "MODEL_INSTANCE_NAME")
66 private String modelInstanceName;
68 @Column(name = "CONFIGURATION_TYPE")
69 private String configurationType;
71 @Column(name = "CONFIGURATION_ROLE")
72 private String configurationRole;
74 @Column(name = "CONFIGURATION_FUNCTION")
75 private String configurationFunction;
77 @Column(name = "POLICY_NAME")
78 private String policyName;
80 @Column(name = "CREATION_TIMESTAMP", updatable = false)
81 @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss.SSS")
82 @Temporal(TemporalType.TIMESTAMP)
85 @ManyToOne(cascade = CascadeType.ALL, fetch = FetchType.LAZY)
86 @JoinColumn(name = "CONFIGURATION_MODEL_UUID")
87 private ConfigurationResource configurationResource;
89 @ManyToOne(cascade = CascadeType.ALL, fetch = FetchType.LAZY)
90 @JoinColumn(name = "CVNFC_CUSTOMIZATION_ID")
91 private CvnfcCustomization cvnfcCustomization;
95 public boolean equals(final Object other) {
96 if (!(other instanceof CvnfcConfigurationCustomization)) {
99 CvnfcConfigurationCustomization castOther = (CvnfcConfigurationCustomization) other;
100 return new EqualsBuilder().append(id, castOther.id).isEquals();
106 public int hashCode() {
107 return new HashCodeBuilder().append(id).toHashCode();
113 public String toString() {
114 return new ToStringBuilder(this).append("id", id).append("modelCustomizationUUID", modelCustomizationUUID)
115 .append("modelInstanceName", modelInstanceName).append("configurationType", configurationType)
116 .append("configurationRole", configurationRole).append("configurationFunction", configurationFunction)
117 .append("policyName", policyName).append("created", created)
118 .append("configurationResource", configurationResource).append("cvnfcCustomization", cvnfcCustomization).toString();
124 protected void onCreate() {
125 this.created = new Date();
128 public Integer getId() {
132 public void setId(Integer id) {
136 public String getModelCustomizationUUID() {
137 return modelCustomizationUUID;
140 public void setModelCustomizationUUID(String modelCustomizationUUID) {
141 this.modelCustomizationUUID = modelCustomizationUUID;
144 public String getModelInstanceName() {
145 return modelInstanceName;
148 public void setModelInstanceName(String modelInstanceName) {
149 this.modelInstanceName = modelInstanceName;
152 public String getConfigurationType() {
153 return configurationType;
156 public void setConfigurationType(String configurationType) {
157 this.configurationType = configurationType;
160 public String getConfigurationRole() {
161 return configurationRole;
164 public void setConfigurationRole(String configurationRole) {
165 this.configurationRole = configurationRole;
168 public String getConfigurationFunction() {
169 return configurationFunction;
172 public void setConfigurationFunction(String configurationFunction) {
173 this.configurationFunction = configurationFunction;
176 public String getPolicyName() {
180 public void setPolicyName(String policyName) {
181 this.policyName = policyName;
184 public Date getCreated() {
188 public void setCreated(Date created) {
189 this.created = created;
193 public ConfigurationResource getConfigurationResource() {
194 return configurationResource;
197 public void setConfigurationResource(ConfigurationResource configurationResource) {
198 this.configurationResource = configurationResource;
202 public CvnfcCustomization getCvnfcCustomization() {
203 return cvnfcCustomization;
206 public void setCvnfcCustomization(CvnfcCustomization cvnfcCustomization) {
207 this.cvnfcCustomization = cvnfcCustomization;