001 /**
002 * Copyright 2010 The Kuali Foundation Licensed under the
003 * Educational Community License, Version 2.0 (the "License"); you may
004 * not use this file except in compliance with the License. You may
005 * obtain a copy of the License at
006 *
007 * http://www.osedu.org/licenses/ECL-2.0
008 *
009 * Unless required by applicable law or agreed to in writing,
010 * software distributed under the License is distributed on an "AS IS"
011 * BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
012 * or implied. See the License for the specific language governing
013 * permissions and limitations under the License.
014 */
015
016 package org.kuali.student.lum.common.client.widgets;
017
018 import java.util.Date;
019
020 import org.kuali.student.common.assembly.data.Data;
021 import org.kuali.student.common.assembly.helper.PropertyEnum;
022 import org.kuali.student.lum.common.client.lo.MetaInfoHelper;
023
024 public class CluSetHelper {
025
026 private static final long serialVersionUID = 1;
027
028 public enum Properties implements PropertyEnum
029 {
030 ID ("id"),
031 ORGANIZATION ("organization"),
032 DESCRIPTION ("description"),
033 EFFECTIVE_DATE ("effectiveDate"),
034 EXPIRATION_DATE ("expirationDate"),
035 APPROVED_CLUS ("approvedClus"),
036 PROPOSED_CLUS ("proposedClus"),
037 // This is the union of APPROVED_CLUS, and PROPOSED_CLUS
038 ALL_CLUS ("allClus"),
039 CLUSETS ("clusets"),
040 CLU_SET_RANGE ("clusetRange"),
041 CLU_SET_RANGE_VIEW_DETAILS ("cluSetRangeViewDetails"),
042 META_INFO ("metaInfo"),
043 NAME ("name"),
044 STATE ("state"),
045 TYPE ("type"),
046 REUSABLE ("reusable"),
047 REFERENCEABLE ("referenceable");
048
049 private final String key;
050
051 private Properties (final String key) {
052 this.key = key;
053 }
054
055 @Override
056 public String getKey() {
057 return this.key;
058 }
059 }
060 private Data data;
061
062 public CluSetHelper(Data data) {
063 this.data = data;
064 }
065
066 public static CluSetHelper wrap(Data data) {
067 if (data == null) {
068 return null;
069 }
070 return new CluSetHelper(data);
071 }
072
073 public Data getData() {
074 return this.data;
075 }
076
077 public void setId(String value) {
078 data.set(Properties.ID.getKey(), value);
079 }
080
081 public String getId() {
082 return (String) data.get(Properties.ID.getKey());
083 }
084
085 public void setOrganization(String value) {
086 data.set(Properties.ORGANIZATION.getKey(), value);
087 }
088 public String getOrganization() {
089 return (String) data.get(Properties.ORGANIZATION.getKey());
090 }
091
092 public void setDescription(String value) {
093 data.set(Properties.DESCRIPTION.getKey(), value);
094 }
095 public String getDescription() {
096 return (String) data.get (Properties.DESCRIPTION.getKey ());
097 }
098
099 public void setEffectiveDate(Date value) {
100 data.set(Properties.EFFECTIVE_DATE.getKey(), value);
101 }
102 public Date getEffectiveDate() {
103 return (Date) data.get(Properties.EFFECTIVE_DATE.getKey());
104 }
105
106 public void setExpirationDate(Date value) {
107 data.set(Properties.EXPIRATION_DATE.getKey(), value);
108 }
109 public Date getExpirationDate() {
110 return (Date) data.get(Properties.EXPIRATION_DATE.getKey());
111 }
112
113 public void setMetaInfo (MetaInfoHelper value) {
114 data.set (Properties.META_INFO.getKey (), (value == null) ? null : value.getData ());
115 }
116 public MetaInfoHelper getMetaInfo () {
117 return MetaInfoHelper.wrap ((Data) data.get (Properties.META_INFO.getKey ()));
118 }
119
120 public void setName(String name) {
121 data.set(Properties.NAME.getKey(), name);
122 }
123 public String getName() {
124 return (String) data.get(Properties.NAME.getKey());
125 }
126
127 public void setState(String state) {
128 data.set(Properties.STATE.getKey(), state);
129 }
130 public String getState() {
131 return (String) data.get(Properties.STATE.getKey());
132 }
133
134 public void setType(String type) {
135 data.set(Properties.TYPE.getKey(), type);
136 }
137 public String getType() {
138 return (String) data.get(Properties.TYPE.getKey());
139 }
140
141 public void setReusable(Boolean reusable) {
142 Boolean newValue = reusable;
143 if (reusable == null) {
144 newValue = new Boolean(false);
145 }
146 data.set(Properties.REUSABLE.getKey(), newValue);
147 }
148 public Boolean getReusable() {
149 Boolean reUsable = (Boolean) data.get(Properties.REUSABLE.getKey());
150 if (reUsable == null) {
151 reUsable = new Boolean(false);
152 }
153 return reUsable;
154 }
155
156 public void setReferenceable(Boolean referenceable) {
157 Boolean newValue = referenceable;
158 if (referenceable == null) {
159 newValue = new Boolean(false);
160 }
161 data.set(Properties.REFERENCEABLE.getKey(), newValue);
162 }
163 public Boolean getReferenceable() {
164 Boolean referenceable = (Boolean) data.get(Properties.REFERENCEABLE.getKey());
165 if (referenceable == null) {
166 referenceable = new Boolean(false);
167 }
168 return referenceable;
169 }
170
171 public void setApprovedClus(Data value) {
172 data.set(Properties.APPROVED_CLUS.getKey(), value);
173 }
174 public Data getApprovedClus() {
175 Data approvedClusData = data.get(Properties.APPROVED_CLUS.getKey());
176 if (approvedClusData == null) {
177 approvedClusData = new Data();
178 setApprovedClus(approvedClusData);
179 }
180 return approvedClusData;
181 }
182 public void setProposedClus(Data value) {
183 data.set(Properties.PROPOSED_CLUS.getKey(), value);
184 }
185 public Data getProposedClus() {
186 Data proposedClusData = data.get(Properties.PROPOSED_CLUS.getKey());
187 if (proposedClusData == null) {
188 proposedClusData = new Data();
189 setProposedClus(proposedClusData);
190 }
191 return proposedClusData;
192 }
193 public void setAllClus(Data value) {
194 data.set(Properties.ALL_CLUS.getKey(), value);
195 }
196 public Data getAllClus() {
197 Data allClusData = data.get(Properties.ALL_CLUS.getKey());
198 if (allClusData == null) {
199 allClusData = new Data();
200 setAllClus(allClusData);
201 }
202 return allClusData;
203 }
204 public void setCluSets(Data value) {
205 data.set(Properties.CLUSETS.getKey(), value);
206 }
207 public Data getCluSets() {
208 Data cluSetData = data.get(Properties.CLUSETS.getKey());
209 if (cluSetData == null) {
210 cluSetData = new Data();
211 setCluSets(cluSetData);
212 }
213 return cluSetData;
214 }
215 public void setCluRangeParams(Data value) {
216 data.set(Properties.CLU_SET_RANGE.getKey(), value);
217 }
218 public CluSetRangeHelper getCluRangeParams() {
219 Data cluRangeParamsData = data.get(Properties.CLU_SET_RANGE.getKey());
220 if (cluRangeParamsData == null) {
221 cluRangeParamsData = new Data();
222 setCluRangeParams(cluRangeParamsData);
223 }
224 return new CluSetRangeHelper(cluRangeParamsData);
225 }
226 public void setCluRangeViewDetails(Data value) {
227 data.set(Properties.CLU_SET_RANGE_VIEW_DETAILS.getKey(), value);
228 }
229 public Data getCluRangeViewDetails() {
230 Data cluSetRangeViewDetailsData = data.get(Properties.CLU_SET_RANGE_VIEW_DETAILS.getKey());
231 if (cluSetRangeViewDetailsData == null) {
232 cluSetRangeViewDetailsData = new Data();
233 setCluRangeViewDetails(cluSetRangeViewDetailsData);
234 }
235 return cluSetRangeViewDetailsData;
236 }
237
238 }