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.module.ld.document; 017 018 import java.util.List; 019 020 import org.kuali.kfs.integration.ld.LaborLedgerPendingEntryForSearching; 021 import org.kuali.kfs.integration.ld.LaborLedgerPostingDocumentForSearching; 022 import org.kuali.kfs.module.ld.businessobject.LaborLedgerPendingEntry; 023 import org.kuali.kfs.sys.businessobject.AccountingLine; 024 import org.kuali.kfs.sys.businessobject.GeneralLedgerPendingEntrySequenceHelper; 025 import org.kuali.kfs.sys.document.AccountingDocument; 026 027 /** 028 * Labor Document Defines methods that must be implements for a labor ledger posting document. 029 */ 030 public interface LaborLedgerPostingDocument extends AccountingDocument, LaborLedgerPostingDocumentForSearching { 031 032 033 /** 034 * Retrieves the list of Labor Ledger Pending Entries for the document. 035 * 036 * @return A list of labor ledger pending entries. 037 */ 038 public List getLaborLedgerPendingEntriesForSearching(); 039 040 041 /** 042 * Retrieves the list of Labor Ledger Pending Entries for the document. 043 * 044 * @return A list of labor ledger pending entries. 045 */ 046 public List<LaborLedgerPendingEntry> getLaborLedgerPendingEntries(); 047 048 /** 049 * Sets the list of labor ledger pending entries for the document. 050 * 051 * @param laborLedgerPendingEntries the given labor ledger pending entries 052 */ 053 public void setLaborLedgerPendingEntries(List<LaborLedgerPendingEntry> laborLedgerPendingEntries); 054 055 /** 056 * Get the pending entry with the given index in the list of labor ledger pending entries 057 * 058 * @param index the given index 059 * @return the pending entry with the given index in the list of labor ledger pending entries 060 */ 061 public LaborLedgerPendingEntry getLaborLedgerPendingEntry(int index); 062 063 /** 064 * creating a list of Expense Pending entries and Benefit pending Entries 065 * 066 * @param accountingLine the accounting line being used to generate pending entries 067 * @param sequenceHelper the sequence number generator 068 * @return true after creating a list of Expense Pending entries and Benefit pending Entries 069 */ 070 public boolean generateLaborLedgerPendingEntries(AccountingLine accountingLine, GeneralLedgerPendingEntrySequenceHelper sequenceHelper); 071 072 /** 073 * creating a list of benefit clearing Pending entries 074 * 075 * @param sequenceHelper the sequence number generator 076 * @return true after creating a list of benefit clearing Pending entries 077 */ 078 public boolean generateLaborLedgerBenefitClearingPendingEntries(GeneralLedgerPendingEntrySequenceHelper sequenceHelper); 079 }