001    /*
002     * Copyright 2011 The Kuali Foundation.
003     * 
004     * Licensed under the Educational Community License, Version 2.0 (the "License");
005     * you may not use this file except in compliance with the License.
006     * You may obtain a copy of the License at
007     * 
008     * http://www.opensource.org/licenses/ecl2.php
009     * 
010     * Unless required by applicable law or agreed to in writing, software
011     * distributed under the License is distributed on an "AS IS" BASIS,
012     * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
013     * See the License for the specific language governing permissions and
014     * limitations under the License.
015     */
016    package org.kuali.kfs.coa.businessobject;
017    
018    import java.util.LinkedHashMap;
019    import java.util.List;
020    
021    import org.kuali.kfs.sys.KFSPropertyConstants;
022    import org.kuali.kfs.sys.businessobject.SystemOptions;
023    import org.kuali.kfs.sys.context.SpringContext;
024    import org.kuali.kfs.sys.service.UniversityDateService;
025    import org.kuali.rice.kns.bo.Inactivateable;
026    import org.kuali.rice.kns.bo.PersistableBusinessObjectBase;
027    import org.kuali.rice.kns.util.TypedArrayList;
028    
029    public class IndirectCostRecoveryRate extends PersistableBusinessObjectBase implements Inactivateable {
030        
031        private Integer universityFiscalYear;
032        private String financialIcrSeriesIdentifier;
033        private boolean active;
034        private List indirectCostRecoveryRateDetails;
035        
036        private SystemOptions universityFiscal;
037        
038        public IndirectCostRecoveryRate() {
039            universityFiscalYear = SpringContext.getBean(UniversityDateService.class).getCurrentFiscalYear();
040            indirectCostRecoveryRateDetails = new TypedArrayList(IndirectCostRecoveryRateDetail.class);
041        }
042        
043        @Override
044        protected LinkedHashMap toStringMapper() {
045    
046            LinkedHashMap m = new LinkedHashMap();
047            m.put(KFSPropertyConstants.UNIVERSITY_FISCAL_YEAR, this.universityFiscalYear);
048            m.put(KFSPropertyConstants.FINANCIAL_ICR_SERIES_IDENTIFIER, this.financialIcrSeriesIdentifier);
049    
050            return m;
051        }
052    
053        public Integer getUniversityFiscalYear() {
054            return universityFiscalYear;
055        }
056    
057        public void setUniversityFiscalYear(Integer universityFiscalYear) {
058            this.universityFiscalYear = universityFiscalYear;
059        }
060    
061        public SystemOptions getUniversityFiscal() {
062            return universityFiscal;
063        }
064    
065        public void setUniversityFiscal(SystemOptions universityFiscal) {
066            this.universityFiscal = universityFiscal;
067        }
068    
069        public List getIndirectCostRecoveryRateDetails() {
070            return indirectCostRecoveryRateDetails;
071        }
072    
073        public void setIndirectCostRecoveryRateDetails(List indirectCostRecoveryRateDetails) {
074            this.indirectCostRecoveryRateDetails = indirectCostRecoveryRateDetails;
075        }
076    
077        public String getFinancialIcrSeriesIdentifier() {
078            return financialIcrSeriesIdentifier;
079        }
080    
081        public void setFinancialIcrSeriesIdentifier(String financialIcrSeriesIdentifier) {
082            this.financialIcrSeriesIdentifier = financialIcrSeriesIdentifier;
083        }
084    
085        public boolean isActive() {
086            return active;
087        }
088    
089        public void setActive(boolean active) {
090            this.active = active;
091        }
092        
093    }