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.gl.batch;
017
018import java.util.Date;
019
020import org.kuali.ole.gl.service.OriginEntryGroupService;
021import org.kuali.ole.sys.batch.AbstractStep;
022import org.kuali.ole.sys.batch.TestingStep;
023
024/**
025 * This step, which would only be run in testing or extraordinary production circumstances, stops the posting of all indirect cost
026 * recovery groups.
027 */
028public class MarkPostableIcrGroupsAsUnpostableStep extends AbstractStep implements TestingStep {
029    private OriginEntryGroupService originEntryGroupService;
030
031    /**
032     * Marks all postable ICR groups as unpostable
033     * 
034     * @param jobName the name of the job this step is being run as part of
035     * @param jobRunDate the time/date the job is being run
036     * @return true if the step completed successfully, false if otherwise
037     * @see org.kuali.ole.sys.batch.Step#execute(String, Date)
038     */
039    public boolean execute(String jobName, Date jobRunDate) throws InterruptedException {
040
041        //TODO:- need to check
042        //originEntryGroupService.markPostableIcrGroupsAsUnpostable();
043        return true;
044    }
045
046    /**
047     * Sets the originEntryGroupSerivce, allowing the injection of an implementation of that service
048     * 
049     * @param originEntryGroupService the originEntryGroupService to set
050     * @see org.kuali.ole.gl.service.OriginEntryGroupService
051     */
052    public void setOriginEntryGroupService(OriginEntryGroupService originEntryGroupService) {
053        this.originEntryGroupService = originEntryGroupService;
054    }
055}