001 /**
002 * Copyright 2005-2012 The Kuali Foundation
003 *
004 * Licensed under the Educational Community License, Version 2.0 (the "License");
005 * you may not use this file except in compliance with the License.
006 * You may obtain a copy of the License at
007 *
008 * http://www.opensource.org/licenses/ecl2.php
009 *
010 * Unless required by applicable law or agreed to in writing, software
011 * distributed under the License is distributed on an "AS IS" BASIS,
012 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
013 * See the License for the specific language governing permissions and
014 * limitations under the License.
015 */
016 package org.kuali.rice.kim.bo.ui;
017
018 import org.hibernate.annotations.GenericGenerator;
019 import org.hibernate.annotations.Parameter;
020 import org.hibernate.annotations.Type;
021 import org.kuali.rice.kim.impl.identity.address.EntityAddressTypeBo;
022
023 import javax.persistence.Column;
024 import javax.persistence.Entity;
025 import javax.persistence.FetchType;
026 import javax.persistence.GeneratedValue;
027 import javax.persistence.Id;
028 import javax.persistence.IdClass;
029 import javax.persistence.JoinColumn;
030 import javax.persistence.ManyToOne;
031 import javax.persistence.Table;
032 import javax.persistence.Transient;
033 import java.sql.Timestamp;
034
035 /**
036 * This is a description of what this class does - shyu don't forget to fill this in.
037 *
038 * @author Kuali Rice Team (rice.collab@kuali.org)
039 *
040 */
041 @IdClass(PersonDocumentAddressId.class)
042 @Entity
043 @Table(name = "KRIM_PND_ADDR_MT")
044 public class PersonDocumentAddress extends PersonDocumentBoDefaultBase {
045 @Id
046 @GeneratedValue(generator="KRIM_ENTITY_ADDR_ID_S")
047 @GenericGenerator(name="KRIM_ENTITY_ADDR_ID_S",strategy="org.kuali.rice.core.jpa.spring.RiceNumericStringSequenceStyleGenerator",parameters={
048 @Parameter(name="sequence_name",value="KRIM_ENTITY_ADDR_ID_S"),
049 @Parameter(name="value_column",value="id")
050 })
051 @Column(name = "ENTITY_ADDR_ID")
052 protected String entityAddressId;
053
054
055 @Column(name = "ADDR_TYP_CD")
056 protected String addressTypeCode;
057
058 //@Column(name = "ENT_TYP_CD")
059 @Transient
060 protected String entityTypeCode;
061
062 @Column(name = "CITY_NM")
063 protected String city;
064
065 @Column(name = "STATE_PVC_CD")
066 protected String stateProvinceCode;
067
068 @Column(name = "POSTAL_CD")
069 protected String postalCode;
070
071 @Column(name = "POSTAL_CNTRY_CD")
072 protected String countryCode;
073
074 @Column(name = "ATTN_LINE")
075 protected String attentionLine;
076
077 @Column(name = "ADDR_LINE_1")
078 protected String line1;
079
080 @Column(name = "ADDR_LINE_2")
081 protected String line2;
082
083 @Column(name = "ADDR_LINE_3")
084 protected String line3;
085
086 @Column(name = "ADDR_FMT")
087 protected String addressFormat;
088
089 @Column(name = "MOD_DT")
090 protected Timestamp modifiedDate;
091
092 @Column(name = "VALID_DT")
093 protected Timestamp validatedDate;
094
095 @Type(type="yes_no")
096 @Column(name="VALID_IND")
097 protected boolean validated;
098
099 @Column(name = "NOTE_MSG")
100 protected String noteMessage;
101
102 @ManyToOne(targetEntity=EntityAddressTypeBo.class, fetch = FetchType.EAGER, cascade = {})
103 @JoinColumn(name = "ADDR_TYP_CD", insertable = false, updatable = false)
104 private EntityAddressTypeBo addressType;
105
106 // Waiting until we pull in from KFS
107 // protected State state;
108 // protected PostalCode postalCode;
109 // protected Country country;
110 public PersonDocumentAddress() {
111 this.active = true;
112 }
113
114 /**
115 * @see org.kuali.rice.kim.bo.entity.KimEntityAddress#getAddressTypeCode()
116 */
117 public String getAddressTypeCode() {
118 return addressTypeCode;
119 }
120
121 /**
122 * @see org.kuali.rice.kim.bo.entity.KimEntityAddress#getCity()
123 */
124 public String getCity() {
125 return city;
126 }
127
128 /**
129 * @see org.kuali.rice.kim.bo.entity.KimEntityAddress#getCountryCode()
130 */
131 public String getCountryCode() {
132 return countryCode;
133 }
134
135 /**
136 * @see org.kuali.rice.kim.bo.entity.KimEntityAddress#getEntityAddressId()
137 */
138 public String getEntityAddressId() {
139 return entityAddressId;
140 }
141
142 /**
143 * @see org.kuali.rice.kim.api.identity.address.EntityAddressContract#getAttentionLine()
144 */
145 public String getAttentionLine() {
146 return attentionLine;
147 }
148
149 /**
150 * @see org.kuali.rice.kim.bo.entity.KimEntityAddress#getLine1()
151 */
152 public String getLine1() {
153 return line1;
154 }
155
156 /**
157 * @see org.kuali.rice.kim.bo.entity.KimEntityAddress#getLine2()
158 */
159 public String getLine2() {
160 return line2;
161 }
162
163 /**
164 * @see org.kuali.rice.kim.bo.entity.KimEntityAddress#getLine3()
165 */
166 public String getLine3() {
167 return line3;
168 }
169
170 /**
171 * @see @see org.kuali.rice.kim.api.identity.address.EntityAddressContract#getAddressFormat
172 */
173 public String getAddressFormat() {
174 return addressFormat;
175 }
176
177 public Timestamp getModifiedDate() {
178 return modifiedDate;
179 }
180
181 public Timestamp getValidatedDate() {
182 return validatedDate;
183 }
184
185 public boolean isValidated() {
186 return validated;
187 }
188
189 public String getNoteMessage() {
190 return noteMessage;
191 }
192
193 /**
194 * This overridden method ...
195 *
196 * @see org.kuali.rice.kim.bo.entity.KimEntityAddress#getPostalCode()
197 */
198 public String getPostalCode() {
199 return postalCode;
200 }
201
202 /**
203 * @see org.kuali.rice.kim.bo.entity.KimEntityAddress#getStateCode()
204 */
205 public String getStateProvinceCode() {
206 return stateProvinceCode;
207 }
208
209 /**
210 * @see org.kuali.rice.kim.bo.entity.KimEntityAddress#setAddressTypeCode(java.lang.String)
211 */
212 public void setAddressTypeCode(String addressTypeCode) {
213 this.addressTypeCode = addressTypeCode;
214 }
215
216 /**
217 * @see org.kuali.rice.kim.bo.entity.KimEntityAddress#setCity(java.lang.String)
218 */
219 public void setCity(String city) {
220 this.city = city;
221 }
222
223 /**
224 * @see org.kuali.rice.kim.bo.entity.KimEntityAddress#setCountryCode(java.lang.String)
225 */
226 public void setCountryCode(String countryCode) {
227 this.countryCode = countryCode;
228 }
229
230 /**
231 * @see org.kuali.rice.kim.api.identity.address.EntityAddressContract#getAttentionLine()
232 */
233 public void setAttentionLine(String attentionLine) {
234 this.attentionLine = attentionLine;
235 }
236
237 /**
238 * @see org.kuali.rice.kim.bo.entity.KimEntityAddress#setLine1(java.lang.String)
239 */
240 public void setLine1(String line1) {
241 this.line1 = line1;
242 }
243
244 /**
245 * @see org.kuali.rice.kim.bo.entity.KimEntityAddress#setLine2(java.lang.String)
246 */
247 public void setLine2(String line2) {
248 this.line2 = line2;
249 }
250
251 /**
252 * @see org.kuali.rice.kim.bo.entity.KimEntityAddress#setLine3(java.lang.String)
253 */
254 public void setLine3(String line3) {
255 this.line3 = line3;
256 }
257
258 /**
259 * @see org.kuali.rice.kim.api.identity.address.EntityAddressContract#getAddressFormat()
260 */
261 public void setAddressFormat(String addressFormat) {
262 this.addressFormat = addressFormat;
263 }
264
265 public void setModifiedDate(Timestamp modifiedDate) {
266 this.modifiedDate = modifiedDate;
267 }
268
269 public void setValidatedDate(Timestamp validatedDate) {
270 this.validatedDate = validatedDate;
271 }
272
273 public void setValidated(boolean validated) {
274 this.validated = validated;
275 }
276
277 public void setNoteMessage(String noteMessage) {
278 this.noteMessage = noteMessage;
279 }
280
281 /**
282 * @see org.kuali.rice.kim.bo.entity.KimEntityAddress#setPostalCode(java.lang.String)
283 */
284 public void setPostalCode(String postalCode) {
285 this.postalCode = postalCode;
286 }
287
288 /**
289 * @see org.kuali.rice.kim.bo.entity.KimEntityAddress#setStateCode(java.lang.String)
290 */
291 public void setStateProvinceCode(String stateProvinceCode) {
292 this.stateProvinceCode = stateProvinceCode;
293 }
294
295 /**
296 * @see org.kuali.rice.kim.impl.identity.type.EntityTypeContactInfoBo#getEntityTypeCode()
297 */
298 public String getEntityTypeCode() {
299 return entityTypeCode;
300 }
301
302 public void setEntityTypeCode(String entityTypeCode) {
303 this.entityTypeCode = entityTypeCode;
304 }
305
306 public void setEntityAddressId(String entityAddressId) {
307 this.entityAddressId = entityAddressId;
308 }
309
310 public EntityAddressTypeBo getAddressType() {
311 return this.addressType;
312 }
313
314 public void setAddressType(EntityAddressTypeBo addressType) {
315 this.addressType = addressType;
316 }
317 }