001    package org.kuali.student.enrollment.grading.dto;
002    
003    import java.util.ArrayList;
004    import java.util.List;
005    
006    import javax.xml.bind.annotation.XmlAccessType;
007    import javax.xml.bind.annotation.XmlAccessorType;
008    import javax.xml.bind.annotation.XmlAnyElement;
009    import javax.xml.bind.annotation.XmlElement;
010    import javax.xml.bind.annotation.XmlType;
011    
012    import org.kuali.student.enrollment.grading.infc.GradeValuesGroup;
013    import org.kuali.student.r2.common.dto.KeyEntityInfo;
014    import org.kuali.student.r2.lum.lrc.dto.ResultValueInfo;
015    import org.kuali.student.r2.lum.lrc.dto.ResultValueRangeInfo;
016    import org.w3c.dom.Element;
017    
018    @XmlAccessorType(XmlAccessType.FIELD)
019    @XmlType(name = "GradeValuesGroupInfo", propOrder = {"key", "typeKey", "stateKey", "name", "descr", "resultValueInfos",
020            "resultValueRange", "meta", "attributes", "_futureElements"})
021    public class GradeValuesGroupInfo extends KeyEntityInfo implements GradeValuesGroup {
022    
023        private static final long serialVersionUID = 1L;
024    
025        @XmlElement
026        private List<ResultValueInfo> resultValueInfos;
027    
028        @XmlElement
029        private ResultValueRangeInfo resultValueRange;
030    
031        @XmlAnyElement
032        private List<Element> _futureElements;
033    
034        public GradeValuesGroupInfo() {
035    
036            super();
037            resultValueInfos = new ArrayList<ResultValueInfo>();
038            resultValueRange = null;
039        }
040    
041        public GradeValuesGroupInfo(GradeValuesGroup gradeValuesGroup) {
042            super(gradeValuesGroup);
043            if (gradeValuesGroup != null) {
044                resultValueInfos = new ArrayList<ResultValueInfo>();
045                if (gradeValuesGroup.getResultValueInfos() != null) {
046                    for (ResultValueInfo resultValue : gradeValuesGroup.getResultValueInfos()) {
047                        resultValueInfos.add(new ResultValueInfo(resultValue));
048                    }
049                }
050    
051                resultValueRange = new ResultValueRangeInfo(resultValueRange);
052            }
053    
054        }
055    
056        @Override
057        public List<ResultValueInfo> getResultValueInfos() {
058            return resultValueInfos;
059        }
060    
061        public void setResultValueInfos(List<ResultValueInfo> resultValueInfos) {
062            this.resultValueInfos = resultValueInfos;
063        }
064    
065        @Override
066        public ResultValueRangeInfo getResultValueRange() {
067            return resultValueRange;
068        }
069    
070        public void setResultValueRange(ResultValueRangeInfo resultValueRange) {
071            this.resultValueRange = resultValueRange;
072        }
073    
074    }