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.policy.rest.jpa;
23 import java.io.Serializable;
24 import java.util.Date;
26 import javax.persistence.Column;
27 import javax.persistence.Entity;
28 import javax.persistence.GeneratedValue;
29 import javax.persistence.GenerationType;
30 import javax.persistence.Id;
31 import javax.persistence.JoinColumn;
32 import javax.persistence.ManyToOne;
33 import javax.persistence.NamedQuery;
34 import javax.persistence.OrderBy;
35 import javax.persistence.PrePersist;
36 import javax.persistence.PreUpdate;
37 import javax.persistence.Table;
38 import javax.persistence.Temporal;
39 import javax.persistence.TemporalType;
41 import org.apache.commons.logging.Log;
42 import org.apache.commons.logging.LogFactory;
43 import org.onap.policy.rest.XacmlAdminAuthorization;
45 import org.onap.policy.common.logging.eelf.MessageCodes;
46 import org.onap.policy.common.logging.eelf.PolicyLogger;
51 @Table(name="VNFType")
52 @NamedQuery(name="VNFType.findAll", query="SELECT v FROM VNFType v ")
53 public class VNFType implements Serializable {
54 private static final long serialVersionUID = 1L;
56 private static String domain;
59 @GeneratedValue(strategy = GenerationType.AUTO)
63 @Column(name="vnf_type", nullable=false, unique=true)
65 private String vnftype;
67 @Temporal(TemporalType.TIMESTAMP)
68 @Column(name="created_date", updatable=false)
69 private Date createdDate;
71 @Column(name="description", nullable=true, length=2048)
72 private String description;
74 @Temporal(TemporalType.TIMESTAMP)
75 @Column(name="modified_date", nullable=false)
76 private Date modifiedDate;
78 @ManyToOne(optional = false)
79 @JoinColumn(name="created_by")
80 private UserInfo userCreatedBy;
82 @ManyToOne(optional = false)
83 @JoinColumn(name="modified_by")
84 private UserInfo userModifiedBy;
86 public UserInfo getUserCreatedBy() {
90 public void setUserCreatedBy(UserInfo userCreatedBy) {
91 this.userCreatedBy = userCreatedBy;
94 public UserInfo getUserModifiedBy() {
95 return userModifiedBy;
98 public void setUserModifiedBy(UserInfo userModifiedBy) {
99 this.userModifiedBy = userModifiedBy;
102 private static Log LOGGER = LogFactory.getLog(VNFType.class);
108 public String getVnftype() {
112 public void setVnftype(String vnftype) {
113 this.vnftype = vnftype;
116 public VNFType(String string, String userid) {
120 public VNFType(String domain) {
121 this.vnftype = domain;
125 public void prePersist() {
126 Date date = new Date();
127 this.createdDate = date;
128 this.modifiedDate = date;
132 public void preUpdate() {
133 this.modifiedDate = new Date();
135 this.userModifiedBy =XacmlAdminAuthorization.getUserId();;
136 } catch (Exception e) {
137 LOGGER.error("Exception caused While adding Modified by Role"+e);
138 PolicyLogger.error(MessageCodes.EXCEPTION_ERROR, e, "VNFType", "Exception caused While adding Modified by Role");
146 public void setId(int id) {
150 public Date getCreatedDate() {
151 return this.createdDate;
154 public void setCreatedDate(Date createdDate) {
155 this.createdDate = createdDate;
158 public String getDescription() {
159 return this.description;
162 public void setDescription(String description) {
163 this.description = description;
166 public Date getModifiedDate() {
167 return this.modifiedDate;
170 public void setModifiedDate(Date modifiedDate) {
171 this.modifiedDate = modifiedDate;