View Javadoc

1   /**
2    * Copyright 2005-2012 The Kuali Foundation
3    *
4    * Licensed under the Educational Community License, Version 2.0 (the "License");
5    * you may not use this file except in compliance with the License.
6    * You may obtain a copy of the License at
7    *
8    * http://www.opensource.org/licenses/ecl2.php
9    *
10   * Unless required by applicable law or agreed to in writing, software
11   * distributed under the License is distributed on an "AS IS" BASIS,
12   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13   * See the License for the specific language governing permissions and
14   * limitations under the License.
15   */
16  package org.kuali.rice.kim.bo.ui;
17  
18  import org.hibernate.annotations.GenericGenerator;
19  import org.hibernate.annotations.Parameter;
20  import org.kuali.rice.kim.impl.common.attribute.KimAttributeBo;
21  
22  import javax.persistence.Column;
23  import javax.persistence.FetchType;
24  import javax.persistence.GeneratedValue;
25  import javax.persistence.Id;
26  import javax.persistence.JoinColumn;
27  import javax.persistence.MappedSuperclass;
28  import javax.persistence.OneToOne;
29  import javax.persistence.Transient;
30  
31  /**
32   * This class is the base class for KIM documents sub-business objects that store attribute/qualifier data
33   * 
34   * @author Kuali Rice Team (rice.collab@kuali.org)
35   *
36   */
37  @MappedSuperclass
38  public class KimDocumentAttributeDataBusinessObjectBase extends KimDocumentBoActivatableEditableBase {
39  
40  	private static final long serialVersionUID = -1512640359333185819L;
41  	@Id
42  	@GeneratedValue(generator="KRIM_ATTR_DATA_ID_S")
43  	@GenericGenerator(name="KRIM_ATTR_DATA_ID_S",strategy="org.kuali.rice.core.jpa.spring.RiceNumericStringSequenceStyleGenerator",parameters={
44  			@Parameter(name="sequence_name",value="KRIM_ATTR_DATA_ID_S"),
45  			@Parameter(name="value_column",value="id")
46  		})
47  	@Column(name = "ATTR_DATA_ID")
48  	private String attrDataId;
49  	@Column(name = "KIM_TYP_ID")
50  	private String kimTypId;
51  	@Column(name = "KIM_ATTR_DEFN_ID")
52  	private String kimAttrDefnId;
53  	@Column(name = "ATTR_VAL")
54  	private String attrVal = "";
55  	@OneToOne(targetEntity=KimAttributeBo.class, fetch=FetchType.EAGER, cascade={})
56      @JoinColumn(name="KIM_ATTR_DEFN_ID",insertable=false,updatable=false)
57  	private KimAttributeBo kimAttribute;
58  	@Transient
59  	private String qualifierKey;
60  	@Transient
61  	private Boolean unique;
62  	
63  	/**
64  	 * This constructs a ...
65  	 * 
66  	 */
67  	public KimDocumentAttributeDataBusinessObjectBase() {
68  		super();
69  	}
70  
71  	public String getAttrDataId() {
72  		return attrDataId;
73  	}
74  
75  	public void setAttrDataId(String attrDataId) {
76  		this.attrDataId = attrDataId;
77  	}
78  
79  	public String getKimTypId() {
80  		return kimTypId;
81  	}
82  
83  	public void setKimTypId(String kimTypId) {
84  		this.kimTypId = kimTypId;
85  	}
86  
87  	public String getKimAttrDefnId() {
88  		return kimAttrDefnId;
89  	}
90  
91  	public void setKimAttrDefnId(String kimAttrDefnId) {
92  		this.kimAttrDefnId = kimAttrDefnId;
93  	}
94  
95  	public String getAttrVal() {
96  		return attrVal;
97  	}
98  
99  	public void setAttrVal(String attrVal) {
100 		this.attrVal = attrVal;
101 	}
102 
103 	public String getQualifierKey() {
104 		return this.qualifierKey;
105 	}
106 
107 	public void setQualifierKey(String qualifierKey) {
108 		this.qualifierKey = qualifierKey;
109 	}
110 
111 	/**
112 	 * @return the kimAttribute
113 	 */
114 	public KimAttributeBo getKimAttribute() {
115 		return this.kimAttribute;
116 	}
117 
118 	/**
119 	 * @param kimAttribute the kimAttribute to set
120 	 */
121 	public void setKimAttribute(KimAttributeBo kimAttribute) {
122 		this.kimAttribute = kimAttribute;
123 	}
124 
125 	/**
126 	 * @return the uniqueAndReadOnly
127 	 */
128 	public Boolean isUnique() {
129 		return this.unique;
130 	}
131 
132 	/**
133 	 * @param uniqueAndReadOnly the uniqueAndReadOnly to set
134 	 */
135 	public void setUnique(Boolean unique) {
136 		this.unique = unique;
137 	}
138 
139 }