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.dto;
17
18 import java.io.Serializable;
19 import java.util.Date;
20
21 import javax.xml.bind.annotation.XmlAccessType;
22 import javax.xml.bind.annotation.XmlAccessorType;
23 import javax.xml.bind.annotation.XmlAttribute;
24 import javax.xml.bind.annotation.XmlElement;
25
26 import org.kuali.student.core.dto.Idable;
27 import org.kuali.student.core.dto.MetaInfo;
28 import org.kuali.student.core.dto.RichTextInfo;
29
30 /**
31 * Information about a result option.
32 *
33 * @Author KSContractMojo
34 * @Author Kamal
35 * @Since Mon Jan 11 15:21:31 PST 2010
36 * @See <a href="https://test.kuali.org/confluence/display/KULSTU/resultOptionInfo+Structure+v1.0-rc3">ResultOptionInfo</>
37 *
38 */
39 @XmlAccessorType(XmlAccessType.FIELD)
40 public class ResultOptionInfo implements Serializable, Idable {
41
42 private static final long serialVersionUID = 1L;
43
44 @XmlElement
45 private RichTextInfo desc;
46
47 @XmlElement
48 private String resultUsageTypeKey;
49
50 @XmlElement
51 private String resultComponentId;
52
53 @XmlElement
54 private Date effectiveDate;
55
56 @XmlElement
57 private Date expirationDate;
58
59 @XmlElement
60 private MetaInfo metaInfo;
61
62 @XmlAttribute
63 private String state;
64
65 @XmlAttribute
66 private String id;
67
68 /**
69 * Narrative description of the result option.
70 */
71 public RichTextInfo getDesc() {
72 return desc;
73 }
74
75 public void setDesc(RichTextInfo desc) {
76 this.desc = desc;
77 }
78
79 /**
80 * Unique identifier for a result usage type.
81 */
82 public String getResultUsageTypeKey() {
83 return resultUsageTypeKey;
84 }
85
86 public void setResultUsageTypeKey(String resultUsageTypeKey) {
87 this.resultUsageTypeKey = resultUsageTypeKey;
88 }
89
90 /**
91 * Unique identifier for a result component.
92 */
93 public String getResultComponentId() {
94 return resultComponentId;
95 }
96
97 public void setResultComponentId(String resultComponentId) {
98 this.resultComponentId = resultComponentId;
99 }
100
101 /**
102 * Date and time that this result option became effective. This is a similar concept to the effective date on enumerated values. When an expiration date has been specified, this field must be less than or equal to the expiration date.
103 */
104 public Date getEffectiveDate() {
105 return effectiveDate;
106 }
107
108 public void setEffectiveDate(Date effectiveDate) {
109 this.effectiveDate = effectiveDate;
110 }
111
112 /**
113 * Date and time that this result option expires. This is a similar concept to the expiration date on enumerated values. If specified, this must be greater than or equal to the effective date. If this field is not specified, then no expiration date has been currently defined and should automatically be considered greater than the effective date.
114 */
115 public Date getExpirationDate() {
116 return expirationDate;
117 }
118
119 public void setExpirationDate(Date expirationDate) {
120 this.expirationDate = expirationDate;
121 }
122
123 /**
124 * Create and last update info for the structure. This is optional and treated as read only since the data is set by the internals of the service during maintenance operations.
125 */
126 public MetaInfo getMetaInfo() {
127 return metaInfo;
128 }
129
130 public void setMetaInfo(MetaInfo metaInfo) {
131 this.metaInfo = metaInfo;
132 }
133
134 /**
135 * The current status of the result option. The values for this field are constrained to those in the resultOptionState enumeration. A separate setup operation does not exist for retrieval of the meta data around this value.
136 */
137 public String getState() {
138 return state;
139 }
140
141 public void setState(String state) {
142 this.state = state;
143 }
144
145 /**
146 * Unique identifier for a result option. This is optional, due to the identifier being set at the time of creation. Once the result option has been created, this should be seen as required.
147 */
148 public String getId() {
149 return id;
150 }
151
152 public void setId(String id) {
153 this.id = id;
154 }
155 }