1 /* 2 * Copyright 2007-2008 The Kuali Foundation 3 * 4 * Licensed under the Educational Community License, Version 2.0 (the "License"); 5 * you may not use this file except in compliance with the License. 6 * You may obtain a copy of the License at 7 * 8 * http://www.opensource.org/licenses/ecl2.php 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 * See the License for the specific language governing permissions and 14 * limitations under the License. 15 */ 16 package org.kuali.ole.gl.businessobject; 17 18 import org.kuali.ole.coa.businessobject.Account; 19 20 /** 21 * An interface that declares the methods that a Business Object must implement, if it should have its flexible offset account updated by 22 * the FlexibleOffsetAccountService. 23 * @see org.kuali.ole.sys.service.FlexibleOffsetAccountService 24 */ 25 public interface FlexibleAccountUpdateable { 26 /** 27 * Returns the university fiscal year of the business object to update 28 * @return a valid university fiscal year 29 */ 30 public abstract Integer getUniversityFiscalYear(); 31 /** 32 * Returns the chart of accounts code of the business object to update 33 * @return a valid chart of accounts code 34 */ 35 public abstract String getChartOfAccountsCode(); 36 /** 37 * Returns the account number of the business object to update 38 * @return a valid account number 39 */ 40 public abstract String getAccountNumber(); 41 /** 42 * Returns the balance type code of the business object to update 43 * @return a valid balance type code 44 */ 45 public abstract String getFinancialBalanceTypeCode(); 46 /** 47 * Returns the document type code of the business object to update 48 * @return a valid document code 49 */ 50 public abstract String getFinancialDocumentTypeCode(); 51 52 /** 53 * Returns the object code of the business object to update 54 * @return a valid object code 55 */ 56 public abstract String getFinancialObjectCode(); 57 58 /** 59 * Sets the business object's account attribute 60 * @param a an account business object to set 61 */ 62 public abstract void setAccount(Account a); 63 /** 64 * Sets the chart of accounts code of the business object 65 * @param chartCode the chart code to set 66 */ 67 public abstract void setChartOfAccountsCode(String chartCode); 68 /** 69 * Sets the account number of the business object 70 * @param accountNumber the account number to set 71 */ 72 public abstract void setAccountNumber(String accountNumber); 73 /** 74 * Sets the sub-account number of the business object 75 * @param subAccountNumber the sub account number to set 76 */ 77 public abstract void setSubAccountNumber(String subAccountNumber); 78 /** 79 * Sets the financial sub-object code of the business object 80 * @param financialSubObjectCode the financial sub-object code to set 81 */ 82 public abstract void setFinancialSubObjectCode(String financialSubObjectCode); 83 }