View Javadoc

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.ArrayList;
20  import java.util.HashMap;
21  import java.util.List;
22  import java.util.Map;
23  
24  import javax.xml.bind.annotation.XmlAccessType;
25  import javax.xml.bind.annotation.XmlAccessorType;
26  import javax.xml.bind.annotation.XmlAttribute;
27  import javax.xml.bind.annotation.XmlElement;
28  import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
29  
30  import org.kuali.student.common.dto.HasAttributes;
31  import org.kuali.student.common.dto.MetaInfo;
32  import org.kuali.student.common.dto.RichTextInfo;
33  import org.kuali.student.core.ws.binding.JaxbAttributeMapListAdapter;
34  
35  /**
36   *Detailed information associated with this CLU related to the calculation of fees. 
37   */ 
38  @XmlAccessorType(XmlAccessType.FIELD)
39  public class CluFeeInfo implements Serializable, HasAttributes {
40  
41      private static final long serialVersionUID = 1L;
42  
43      @XmlAttribute
44      private String id;    
45      
46      @XmlElement
47      private RichTextInfo descr;
48          
49      @XmlElement
50      private List<CluFeeRecordInfo> cluFeeRecords;
51      
52      @XmlElement
53  	@XmlJavaTypeAdapter(JaxbAttributeMapListAdapter.class)
54      private Map<String,String> attributes;
55  
56      @XmlElement
57      private MetaInfo metaInfo;
58      
59      /**
60       * List of key/value pairs, typically used for dynamic attributes.
61       */
62      public Map<String,String> getAttributes() {
63          if (attributes == null) {
64              attributes = new HashMap<String,String>();
65          }
66          return attributes;
67      }
68  
69      public void setAttributes(Map<String,String> attributes) {
70          this.attributes = attributes;
71      }
72  
73  	public List<CluFeeRecordInfo> getCluFeeRecords() {
74  		if(cluFeeRecords == null){
75  			cluFeeRecords = new ArrayList<CluFeeRecordInfo>(0);
76  		}
77  		return cluFeeRecords;
78  	}
79  
80  	public void setCluFeeRecords(List<CluFeeRecordInfo> cluFeeRecords) {
81  		this.cluFeeRecords = cluFeeRecords;
82  	}
83  
84  	public String getId() {
85  		return id;
86  	}
87  
88  	public void setId(String id) {
89  		this.id = id;
90  	}
91  
92  	/**
93  	 * Narrative description of the CLU Fee
94  	 */
95  	public RichTextInfo getDescr() {
96  		return descr;
97  	}
98  
99  	public void setDescr(RichTextInfo descr) {
100 		this.descr = descr;
101 	}
102 
103 	public MetaInfo getMetaInfo() {
104 		return metaInfo;
105 	}
106 
107 	public void setMetaInfo(MetaInfo metaInfo) {
108 		this.metaInfo = metaInfo;
109 	}
110 }