2 * ============LICENSE_START=======================================================
4 * ================================================================================
5 * Copyright (C) 2017-2018 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;
40 import javax.persistence.Transient;
44 @Table(name="DecisionSettings")
45 @NamedQuery(name="DecisionSettings.findAll", query="SELECT a FROM DecisionSettings a order by a.priority asc, a.xacmlId asc")
46 public class DecisionSettings implements Serializable {
47 private static final long serialVersionUID = 1L;
50 @GeneratedValue(strategy = GenerationType.AUTO)
54 @Temporal(TemporalType.TIMESTAMP)
55 @Column(name="created_date", updatable=false)
56 private Date createdDate;
58 @Column(name="description", nullable=true, length=2048)
59 private String description;
61 @Temporal(TemporalType.TIMESTAMP)
62 @Column(name="modified_date", nullable=false)
63 private Date modifiedDate;
65 @Column(name="PRIORITY", nullable=true)
67 private String priority;
69 @Column(name="xacml_id", unique = true, nullable=false)
71 private String xacmlId = "urn";
73 //bi-directional many-to-one association to Datatype
75 @JoinColumn(name="datatype")
76 private Datatype datatypeBean;
79 private String issuer = null;
82 private boolean mustBePresent = false;
84 @ManyToOne(optional = false)
85 @JoinColumn(name="created_by")
86 private UserInfo userCreatedBy;
88 @ManyToOne(optional = false)
89 @JoinColumn(name="modified_by")
90 private UserInfo userModifiedBy;
92 public UserInfo getUserCreatedBy() {
96 public void setUserCreatedBy(UserInfo userCreatedBy) {
97 this.userCreatedBy = userCreatedBy;
100 public UserInfo getUserModifiedBy() {
101 return userModifiedBy;
104 public void setUserModifiedBy(UserInfo userModifiedBy) {
105 this.userModifiedBy = userModifiedBy;
109 public void prePersist() {
110 Date date = new Date();
111 this.createdDate = date;
112 this.modifiedDate = date;
116 public void preUpdate() {
117 this.modifiedDate = new Date();
124 public void setId(int id) {
129 public Date getCreatedDate() {
130 return this.createdDate;
133 public void setCreatedDate(Date createdDate) {
134 this.createdDate = createdDate;
137 public String getDescription() {
138 return this.description;
141 public void setDescription(String description) {
142 this.description = description;
145 public Date getModifiedDate() {
146 return this.modifiedDate;
149 public void setModifiedDate(Date modifiedDate) {
150 this.modifiedDate = modifiedDate;
153 public String getXacmlId() {
157 public void setXacmlId(String xacmlId) {
158 this.xacmlId = xacmlId;
161 public Datatype getDatatypeBean() {
162 return this.datatypeBean;
165 public void setDatatypeBean(Datatype datatypeBean) {
166 this.datatypeBean = datatypeBean;
170 public String getIssuer() {
175 public void setIssuer(String issuer) {
176 this.issuer = issuer;
180 public boolean isMustBePresent() {
181 return mustBePresent;
185 public void setMustBePresent(boolean mustBePresent) {
186 this.mustBePresent = mustBePresent;
189 public String getPriority() {
193 public void setPriority(String priority) {
194 this.priority = priority;