View Javadoc
1   /*
2    * The Kuali Financial System, a comprehensive financial management system for higher education.
3    * 
4    * Copyright 2005-2014 The Kuali Foundation
5    * 
6    * This program is free software: you can redistribute it and/or modify
7    * it under the terms of the GNU Affero General Public License as
8    * published by the Free Software Foundation, either version 3 of the
9    * License, or (at your option) any later version.
10   * 
11   * This program is distributed in the hope that it will be useful,
12   * but WITHOUT ANY WARRANTY; without even the implied warranty of
13   * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14   * GNU Affero General Public License for more details.
15   * 
16   * You should have received a copy of the GNU Affero General Public License
17   * along with this program.  If not, see <http://www.gnu.org/licenses/>.
18   */
19  package org.kuali.kfs.gl.businessobject;
20  
21  import org.kuali.kfs.coa.businessobject.Account;
22  
23  /**
24   * An interface that declares the methods that a Business Object must implement, if it should have its flexible offset account updated by
25   * the FlexibleOffsetAccountService.
26   * @see org.kuali.kfs.sys.service.FlexibleOffsetAccountService
27   */
28  public interface FlexibleAccountUpdateable {
29      /**
30       * Returns the university fiscal year of the business object to update
31       * @return a valid university fiscal year
32       */
33      public abstract Integer getUniversityFiscalYear();
34      /**
35       * Returns the chart of accounts code of the business object to update
36       * @return a valid chart of accounts code
37       */
38      public abstract String getChartOfAccountsCode();
39      /**
40       * Returns the account number of the business object to update
41       * @return a valid account number
42       */
43      public abstract String getAccountNumber();
44      /**
45       * Returns the balance type code of the business object to update
46       * @return a valid balance type code
47       */
48      public abstract String getFinancialBalanceTypeCode();
49      /**
50       * Returns the document type code of the business object to update
51       * @return a valid document code
52       */
53      public abstract String getFinancialDocumentTypeCode();
54      
55      /**
56       * Returns the object code of the business object to update
57       * @return a valid object code
58       */
59      public abstract String getFinancialObjectCode();
60      
61      /**
62       * Sets the business object's account attribute
63       * @param a an account business object to set
64       */
65      public abstract void setAccount(Account a);
66      /**
67       * Sets the chart of accounts code of the business object
68       * @param chartCode the chart code to set
69       */
70      public abstract void setChartOfAccountsCode(String chartCode);
71      /**
72       * Sets the account number of the business object
73       * @param accountNumber the account number to set
74       */
75      public abstract void setAccountNumber(String accountNumber);
76      /**
77       * Sets the sub-account number of the business object
78       * @param subAccountNumber the sub account number to set
79       */
80      public abstract void setSubAccountNumber(String subAccountNumber);
81      /**
82       * Sets the financial sub-object code of the business object
83       * @param financialSubObjectCode the financial sub-object code to set
84       */
85      public abstract void setFinancialSubObjectCode(String financialSubObjectCode);
86  }