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.r1.lum.lu.dto;
017
018 import java.io.Serializable;
019 import java.util.HashMap;
020 import java.util.List;
021 import java.util.Map;
022
023 import javax.xml.bind.annotation.XmlAccessType;
024 import javax.xml.bind.annotation.XmlAccessorType;
025 import javax.xml.bind.annotation.XmlAttribute;
026 import javax.xml.bind.annotation.XmlElement;
027 import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
028
029 import org.kuali.student.r1.common.dto.HasAttributes;
030 import org.kuali.student.core.ws.binding.JaxbAttributeMapListAdapter;
031
032 /**
033 *Detailed information about accounting for a clu.
034 */
035 @XmlAccessorType(XmlAccessType.FIELD)
036 public class CluAccountingInfo implements Serializable, HasAttributes {
037
038 private static final long serialVersionUID = 1L;
039
040 @XmlElement
041 private List<AffiliatedOrgInfo> affiliatedOrgs;
042
043 @XmlElement
044 @XmlJavaTypeAdapter(JaxbAttributeMapListAdapter.class)
045 private Map<String,String> attributes;
046
047 @XmlAttribute
048 private String id;
049
050 /**
051 * List of key/value pairs, typically used for dynamic attributes.
052 */
053 public Map<String,String> getAttributes() {
054 if (attributes == null) {
055 attributes = new HashMap<String,String>();
056 }
057 return attributes;
058 }
059
060 public void setAttributes(Map<String,String> attributes) {
061 this.attributes = attributes;
062 }
063
064 public List<AffiliatedOrgInfo> getAffiliatedOrgs() {
065 return affiliatedOrgs;
066 }
067
068 public void setAffiliatedOrgs(List<AffiliatedOrgInfo> affiliatedOrgs) {
069 this.affiliatedOrgs = affiliatedOrgs;
070 }
071
072 public String getId() {
073 return id;
074 }
075
076 public void setId(String id) {
077 this.id = id;
078 }
079 }