View Javadoc

1   /*
2    * Copyright 2010 The Kuali Foundation 
3    *
4    * Licensed under the the Educational Community License, Version 1.0
5    * (the "License"); you may not use this file except in compliance
6    * with the License.  You may obtain a copy of the License at
7    *
8    * http://www.opensource.org/licenses/ecl1.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
13   * implied.  See the License for the specific language governing
14   * permissions and limitations under the License.
15   */
16  
17  package org.kuali.student.enrollment.lui.dto;
18  
19  import java.io.Serializable;
20  
21  import java.util.Date;
22  import java.util.List;
23  import java.util.ArrayList;
24  
25  import javax.xml.bind.annotation.XmlAccessType;
26  import javax.xml.bind.annotation.XmlAccessorType;
27  import javax.xml.bind.annotation.XmlAnyElement;
28  import javax.xml.bind.annotation.XmlElement;
29  import javax.xml.bind.annotation.XmlType;
30  
31  import org.kuali.student.enrollment.lui.infc.LuiCapacity;
32  import org.kuali.student.r2.common.dto.IdEntityInfo;
33  
34  import org.w3c.dom.Element;
35  
36  @XmlAccessorType(XmlAccessType.FIELD)
37  @XmlType(name = "LuiCapacityInfo", propOrder = { "id", "typeKey",
38                  "stateKey", "name", "descr", "luiIds", "maximumSeatCount", 
39                  "processingOrder", "effectiveDate", "expirationDate", 
40                  "meta", "attributes", "_futureElements" })
41  
42  public class LuiCapacityInfo 
43      extends IdEntityInfo 
44      implements Serializable, LuiCapacity {
45  
46      private static final long serialVersionUID = 1L;
47  
48      @XmlElement
49      private List<String> luiIds;
50      
51      @XmlElement
52      private Integer maximumSeatCount;
53      
54      @XmlElement
55      private Integer processingOrder;
56      
57      @XmlElement
58      private Date effectiveDate;
59      
60      @XmlElement
61      private Date expirationDate;
62      
63      @XmlAnyElement
64      private List<Element> _futureElements;
65  
66      /**
67       * Constructs a new LuiCapacityInfo.
68       */    
69      public LuiCapacityInfo() {
70      }
71      
72      /**
73       *  Constructs a new LuiCapacityInfo from another LuiCapacity.
74       *
75       *  @param lc the LioCapacity to copy
76       */
77      public LuiCapacityInfo(LuiCapacity lc) {
78  	super(lc);
79  	this.luiIds = new ArrayList(lc.getLuiIds());
80  	this.maximumSeatCount = lc.getMaximumSeatCount();
81  	this.processingOrder = lc.getProcessingOrder();
82  	this.effectiveDate = null != lc.getEffectiveDate() ? new Date(lc.getEffectiveDate().getTime()) : null;
83  	this.expirationDate = null != lc.getExpirationDate() ? new Date(lc.getExpirationDate().getTime()) : null;
84      }
85      
86      @Override
87      public List<String> getLuiIds() {
88  	return new ArrayList(luiIds);
89      }
90  
91      public void setLuiIds(List<String> luiIds) {
92  	this.luiIds = new ArrayList(luiIds);
93      }
94      
95      @Override
96      public Integer getMaximumSeatCount() {
97  	return maximumSeatCount;
98      }
99  
100     public void setMaximumSeatCount(Integer maximumSeatCount) {
101 	this.maximumSeatCount = maximumSeatCount;
102     }
103 
104     @Override
105     public Integer getProcessingOrder() {
106 	return processingOrder;
107     }
108 
109     public void setProcessingOrder(Integer processingOrder) {
110 	this.processingOrder = processingOrder;
111     }
112 
113     @Override
114     public Date getEffectiveDate() {
115 	return effectiveDate;
116     }
117     
118     public void setEffectiveDate(Date effectiveDate) {
119 	this.effectiveDate = new Date(effectiveDate.getTime());
120     }
121     
122     @Override
123     public Date getExpirationDate() {
124 	return expirationDate;
125     }
126     
127     public void setExpirationDate(Date expirationDate) {
128 	this.expirationDate = new Date(expirationDate.getTime());
129     }
130 }