View Javadoc

1   /**
2    * Copyright 2010 The Kuali Foundation Licensed under the
3    * Educational Community License, Version 2.0 (the "License"); you may
4    * not use this file except in compliance with the License. You may
5    * obtain a copy of the License at
6    *
7    * http://www.osedu.org/licenses/ECL-2.0
8    *
9    * Unless required by applicable law or agreed to in writing,
10   * software distributed under the License is distributed on an "AS IS"
11   * BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
12   * or implied. See the License for the specific language governing
13   * permissions and limitations under the License.
14   */
15  
16  package org.kuali.student.lum.lu.entity;
17  
18  import java.util.Date;
19  import java.util.List;
20  
21  import javax.persistence.CascadeType;
22  import javax.persistence.Column;
23  import javax.persistence.Entity;
24  import javax.persistence.JoinColumn;
25  import javax.persistence.ManyToOne;
26  import javax.persistence.NamedQueries;
27  import javax.persistence.NamedQuery;
28  import javax.persistence.OneToMany;
29  import javax.persistence.Table;
30  import javax.persistence.Temporal;
31  import javax.persistence.TemporalType;
32  
33  import org.kuali.student.common.entity.AttributeOwner;
34  import org.kuali.student.common.entity.MetaEntity;
35  
36  @Entity
37  @Table(name = "KSLU_LUI")
38  @NamedQueries({
39  	@NamedQuery(name="Lui.getLuisByIdList", query="SELECT l FROM Lui l WHERE l.id IN (:luiIdList)"),
40  	@NamedQuery(name="Lui.getLuiIdsByCluId", query="SELECT l.id FROM Lui l WHERE l.clu.id = :cluId"),
41  	@NamedQuery(name="Lui.getLuiIdsInAtpByCluId", query="SELECT l.id FROM Lui l WHERE l.clu.id = :cluId AND l.atpId = :atpKey")
42  })
43  public class Lui extends MetaEntity implements AttributeOwner<LuiAttribute> {
44  
45  	@OneToMany(cascade = CascadeType.ALL, mappedBy = "owner")
46  	private List<LuiAttribute> attributes;
47  
48  	@ManyToOne
49  	@JoinColumn(name = "CLU_ID")
50  	private Clu clu;
51  
52  	@Column(name = "ATP_ID")
53  	private String atpId; // Foreign Service Key
54  
55  	@Column(name = "LUI_CODE")
56  	private String luiCode;
57  
58  	@Column(name = "MAX_SEATS")
59  	private Integer maxSeats;
60  
61  	@Temporal(TemporalType.TIMESTAMP)
62  	@Column(name = "EFF_DT")
63  	private Date effectiveDate;
64  
65  	@Temporal(TemporalType.TIMESTAMP)
66  	@Column(name = "EXP_DT")
67  	private Date expirationDate;
68  
69  	@Column(name = "ST")
70  	private String state;
71  
72  	@Override
73  	public List<LuiAttribute> getAttributes() {
74  		return attributes;
75  	}
76  
77  	@Override
78  	public void setAttributes(List<LuiAttribute> attributes) {
79  		this.attributes = attributes;
80  	}
81  
82  	public Clu getClu() {
83  		return clu;
84  	}
85  
86  	public void setClu(Clu clu) {
87  		this.clu = clu;
88  	}
89  
90  	public String getAtpId() {
91  		return atpId;
92  	}
93  
94  	public void setAtpId(String atpId) {
95  		this.atpId = atpId;
96  	}
97  
98  	public String getLuiCode() {
99  		return luiCode;
100 	}
101 
102 	public void setLuiCode(String luiCode) {
103 		this.luiCode = luiCode;
104 	}
105 
106 	public Integer getMaxSeats() {
107 		return maxSeats;
108 	}
109 
110 	public void setMaxSeats(Integer maxSeats) {
111 		this.maxSeats = maxSeats;
112 	}
113 
114 	public Date getEffectiveDate() {
115 		return effectiveDate;
116 	}
117 
118 	public void setEffectiveDate(Date effectiveDate) {
119 		this.effectiveDate = effectiveDate;
120 	}
121 
122 	public Date getExpirationDate() {
123 		return expirationDate;
124 	}
125 
126 	public void setExpirationDate(Date expirationDate) {
127 		this.expirationDate = expirationDate;
128 	}
129 
130 	public String getState() {
131 		return state;
132 	}
133 
134 	public void setState(String state) {
135 		this.state = state;
136 	}
137 
138 }