001/*
002 * Copyright 2007 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 */
016package org.kuali.ole.coa.batch;
017
018import java.util.Date;
019
020import org.kuali.ole.coa.service.PriorYearAccountService;
021import org.kuali.ole.coa.service.PriorYearOrganizationService;
022import org.kuali.ole.sys.batch.AbstractStep;
023
024/**
025 * This class updates the prior year data in the prior year account and prior year org tables to set it to the new year This is
026 * typically run at year end
027 */
028public class UpdatePriorYearDataStep extends AbstractStep {
029
030    private PriorYearAccountService priorYearAccountService;
031    private PriorYearOrganizationService priorYearOrganizationService;
032
033    /**
034     * Executes the table updates when
035     * 
036     * @see org.kuali.ole.sys.batch.Step#execute(String, Date)
037     */
038    public boolean execute(String jobName, Date jobRunDate) throws InterruptedException {
039        priorYearAccountService.populatePriorYearAccountsFromCurrent();
040        priorYearOrganizationService.populatePriorYearOrganizationsFromCurrent();
041        return true;
042    }
043
044    /**
045     * Service setter for Spring injection
046     * 
047     * @param priorYearAccountService
048     */
049    public void setPriorYearAccountService(PriorYearAccountService priorYearAccountService) {
050        this.priorYearAccountService = priorYearAccountService;
051    }
052
053    /**
054     * Service setter for Spring injection
055     * 
056     * @param priorYearOrganizationService
057     */
058    public void setPriorYearOrganizationService(PriorYearOrganizationService priorYearOrganizationService) {
059        this.priorYearOrganizationService = priorYearOrganizationService;
060    }
061
062}