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.coa.businessobject;
017    
018    import java.sql.Date;
019    import java.util.Calendar;
020    import java.util.List;
021    
022    import org.kuali.rice.kim.bo.Person;
023    import org.kuali.rice.kns.bo.Campus;
024    import org.kuali.rice.kns.bo.PostalCode;
025    import org.kuali.rice.kns.bo.State;
026    
027    
028    public interface AccountIntf {
029    
030        /**
031         * This tells if this account is a C&G account.
032         * 
033         * @return true if C&G account
034         */
035        public boolean isForContractsAndGrants();
036    
037        /**
038         * Gets the accountNumber attribute.
039         * 
040         * @return Returns the accountNumber
041         */
042        public String getAccountNumber();
043    
044        /**
045         * Sets the accountNumber attribute.
046         * 
047         * @param accountNumber The accountNumber to set.
048         */
049        public void setAccountNumber(String accountNumber);
050    
051        /**
052         * Gets the accountName attribute.
053         * 
054         * @return Returns the accountName
055         */
056        public String getAccountName();
057    
058        /**
059         * Sets the accountName attribute.
060         * 
061         * @param accountName The accountName to set.
062         */
063        public void setAccountName(String accountName);
064    
065        /**
066         * Gets the _AccountsFringesBnftIndicator_ attribute.
067         * 
068         * @return Returns the _AccountsFringesBnftIndicator_
069         */
070        public boolean isAccountsFringesBnftIndicator();
071    
072        /**
073         * Sets the _AccountsFringesBnftIndicator_ attribute.
074         * 
075         * @param _AccountsFringesBnftIndicator_ The _AccountsFringesBnftIndicator_ to set.
076         */
077        public void setAccountsFringesBnftIndicator(boolean _AccountsFringesBnftIndicator_);
078    
079        /**
080         * Gets the accountRestrictedStatusDate attribute.
081         * 
082         * @return Returns the accountRestrictedStatusDate
083         */
084        public Date getAccountRestrictedStatusDate();
085    
086        /**
087         * Sets the accountRestrictedStatusDate attribute.
088         * 
089         * @param accountRestrictedStatusDate The accountRestrictedStatusDate to set.
090         */
091        public void setAccountRestrictedStatusDate(Date accountRestrictedStatusDate);
092    
093        /**
094         * Gets the accountCityName attribute.
095         * 
096         * @return Returns the accountCityName
097         */
098        public String getAccountCityName();
099    
100        /**
101         * Sets the accountCityName attribute.
102         * 
103         * @param accountCityName The accountCityName to set.
104         */
105        public void setAccountCityName(String accountCityName);
106    
107        /**
108         * Gets the accountStateCode attribute.
109         * 
110         * @return Returns the accountStateCode
111         */
112        public String getAccountStateCode();
113    
114        /**
115         * Sets the accountStateCode attribute.
116         * 
117         * @param accountStateCode The accountStateCode to set.
118         */
119        public void setAccountStateCode(String accountStateCode);
120    
121        /**
122         * Gets the accountStreetAddress attribute.
123         * 
124         * @return Returns the accountStreetAddress
125         */
126        public String getAccountStreetAddress();
127    
128        /**
129         * Sets the accountStreetAddress attribute.
130         * 
131         * @param accountStreetAddress The accountStreetAddress to set.
132         */
133        public void setAccountStreetAddress(String accountStreetAddress);
134    
135        /**
136         * Gets the accountZipCode attribute.
137         * 
138         * @return Returns the accountZipCode
139         */
140        public String getAccountZipCode();
141    
142        /**
143         * Sets the accountZipCode attribute.
144         * 
145         * @param accountZipCode The accountZipCode to set.
146         */
147        public void setAccountZipCode(String accountZipCode);
148    
149        /**
150         * Gets the accountCreateDate attribute.
151         * 
152         * @return Returns the accountCreateDate
153         */
154        public Date getAccountCreateDate();
155    
156        /**
157         * Sets the accountCreateDate attribute.
158         * 
159         * @param accountCreateDate The accountCreateDate to set.
160         */
161        public void setAccountCreateDate(Date accountCreateDate);
162    
163        /**
164         * Gets the accountEffectiveDate attribute.
165         * 
166         * @return Returns the accountEffectiveDate
167         */
168        public Date getAccountEffectiveDate();
169    
170        /**
171         * Sets the accountEffectiveDate attribute.
172         * 
173         * @param accountEffectiveDate The accountEffectiveDate to set.
174         */
175        public void setAccountEffectiveDate(Date accountEffectiveDate);
176    
177        /**
178         * Gets the accountExpirationDate attribute.
179         * 
180         * @return Returns the accountExpirationDate
181         */
182        public Date getAccountExpirationDate();
183    
184        /**
185         * Sets the accountExpirationDate attribute.
186         * 
187         * @param accountExpirationDate The accountExpirationDate to set.
188         */
189        public void setAccountExpirationDate(Date accountExpirationDate);
190    
191        /**
192         * This method determines whether the account is expired or not. Note that if Expiration Date is the same as today, then this
193         * will return false. It will only return true if the account expiration date is one day earlier than today or earlier. Note
194         * that this logic ignores all time components when doing the comparison. It only does the before/after comparison based on date
195         * values, not time-values.
196         * 
197         * @return true or false based on the logic outlined above
198         */
199        public boolean isExpired();
200    
201        /**
202         * This method determines whether the account is expired or not. Note that if Expiration Date is the same date as testDate, then
203         * this will return false. It will only return true if the account expiration date is one day earlier than testDate or earlier.
204         * Note that this logic ignores all time components when doing the comparison. It only does the before/after comparison based on
205         * date values, not time-values.
206         * 
207         * @param testDate - Calendar instance with the date to test the Account's Expiration Date against. This is most commonly set to
208         *        today's date.
209         * @return true or false based on the logic outlined above
210         */
211        public boolean isExpired(Calendar testDate);
212    
213        /**
214         * This method determines whether the account is expired or not. Note that if Expiration Date is the same date as testDate, then
215         * this will return false. It will only return true if the account expiration date is one day earlier than testDate or earlier.
216         * Note that this logic ignores all time components when doing the comparison. It only does the before/after comparison based on
217         * date values, not time-values.
218         * 
219         * @param testDate - java.util.Date instance with the date to test the Account's Expiration Date against. This is most commonly
220         *        set to today's date.
221         * @return true or false based on the logic outlined above
222         */
223        public boolean isExpired(Date testDate);
224    
225        /**
226         * Gets the acctIndirectCostRcvyTypeCd attribute.
227         * 
228         * @return Returns the acctIndirectCostRcvyTypeCd
229         */
230        public String getAcctIndirectCostRcvyTypeCd();
231    
232        /**
233         * Sets the acctIndirectCostRcvyTypeCd attribute.
234         * 
235         * @param acctIndirectCostRcvyTypeCd The acctIndirectCostRcvyTypeCd to set.
236         */
237        public void setAcctIndirectCostRcvyTypeCd(String acctIndirectCostRcvyTypeCd);
238    
239        /**
240         * Gets the acctCustomIndCstRcvyExclCd attribute.
241         * 
242         * @return Returns the acctCustomIndCstRcvyExclCd
243         */
244        public String getAcctCustomIndCstRcvyExclCd();
245    
246        /**
247         * Sets the acctCustomIndCstRcvyExclCd attribute.
248         * 
249         * @param acctCustomIndCstRcvyExclCd The acctCustomIndCstRcvyExclCd to set.
250         */
251        public void setAcctCustomIndCstRcvyExclCd(String acctCustomIndCstRcvyExclCd);
252    
253        /**
254         * Gets the financialIcrSeriesIdentifier attribute.
255         * 
256         * @return Returns the financialIcrSeriesIdentifier
257         */
258        public String getFinancialIcrSeriesIdentifier();
259    
260        /**
261         * Sets the financialIcrSeriesIdentifier attribute.
262         * 
263         * @param financialIcrSeriesIdentifier The financialIcrSeriesIdentifier to set.
264         */
265        public void setFinancialIcrSeriesIdentifier(String financialIcrSeriesIdentifier);
266    
267        /**
268         * Gets the accountInFinancialProcessingIndicator attribute.
269         * 
270         * @return Returns the accountInFinancialProcessingIndicator
271         */
272        public boolean getAccountInFinancialProcessingIndicator();
273    
274        /**
275         * Sets the accountInFinancialProcessingIndicator attribute.
276         * 
277         * @param accountInFinancialProcessingIndicator The accountInFinancialProcessingIndicator to set.
278         */
279        public void setAccountInFinancialProcessingIndicator(boolean accountInFinancialProcessingIndicator);
280    
281        /**
282         * Gets the budgetRecordingLevelCode attribute.
283         * 
284         * @return Returns the budgetRecordingLevelCode
285         */
286        public String getBudgetRecordingLevelCode();
287    
288        /**
289         * Sets the budgetRecordingLevelCode attribute.
290         * 
291         * @param budgetRecordingLevelCode The budgetRecordingLevelCode to set.
292         */
293        public void setBudgetRecordingLevelCode(String budgetRecordingLevelCode);
294    
295        /**
296         * Gets the accountSufficientFundsCode attribute.
297         * 
298         * @return Returns the accountSufficientFundsCode
299         */
300        public String getAccountSufficientFundsCode();
301    
302        /**
303         * Sets the accountSufficientFundsCode attribute.
304         * 
305         * @param accountSufficientFundsCode The accountSufficientFundsCode to set.
306         */
307        public void setAccountSufficientFundsCode(String accountSufficientFundsCode);
308    
309        /**
310         * Gets the pendingAcctSufficientFundsIndicator attribute.
311         * 
312         * @return Returns the pendingAcctSufficientFundsIndicator
313         */
314        public boolean isPendingAcctSufficientFundsIndicator();
315    
316        /**
317         * Sets the pendingAcctSufficientFundsIndicator attribute.
318         * 
319         * @param pendingAcctSufficientFundsIndicator The pendingAcctSufficientFundsIndicator to set.
320         */
321        public void setPendingAcctSufficientFundsIndicator(boolean pendingAcctSufficientFundsIndicator);
322    
323        /**
324         * Gets the extrnlFinEncumSufficntFndIndicator attribute.
325         * 
326         * @return Returns the extrnlFinEncumSufficntFndIndicator
327         */
328        public boolean isExtrnlFinEncumSufficntFndIndicator();
329    
330        /**
331         * Sets the extrnlFinEncumSufficntFndIndicator attribute.
332         * 
333         * @param extrnlFinEncumSufficntFndIndicator The extrnlFinEncumSufficntFndIndicator to set.
334         */
335        public void setExtrnlFinEncumSufficntFndIndicator(boolean extrnlFinEncumSufficntFndIndicator);
336    
337        /**
338         * Gets the intrnlFinEncumSufficntFndIndicator attribute.
339         * 
340         * @return Returns the intrnlFinEncumSufficntFndIndicator
341         */
342        public boolean isIntrnlFinEncumSufficntFndIndicator();
343    
344        /**
345         * Sets the intrnlFinEncumSufficntFndIndicator attribute.
346         * 
347         * @param intrnlFinEncumSufficntFndIndicator The intrnlFinEncumSufficntFndIndicator to set.
348         */
349        public void setIntrnlFinEncumSufficntFndIndicator(boolean intrnlFinEncumSufficntFndIndicator);
350    
351        /**
352         * Gets the finPreencumSufficientFundIndicator attribute.
353         * 
354         * @return Returns the finPreencumSufficientFundIndicator
355         */
356        public boolean isFinPreencumSufficientFundIndicator();
357    
358        /**
359         * Sets the finPreencumSufficientFundIndicator attribute.
360         * 
361         * @param finPreencumSufficientFundIndicator The finPreencumSufficientFundIndicator to set.
362         */
363        public void setFinPreencumSufficientFundIndicator(boolean finPreencumSufficientFundIndicator);
364    
365        /**
366         * Gets the _FinancialObjectivePrsctrlIndicator_ attribute.
367         * 
368         * @return Returns the _FinancialObjectivePrsctrlIndicator_
369         */
370        public boolean isFinancialObjectivePrsctrlIndicator();
371    
372        /**
373         * Sets the _FinancialObjectivePrsctrlIndicator_ attribute.
374         * 
375         * @param _FinancialObjectivePrsctrlIndicator_ The _FinancialObjectivePrsctrlIndicator_ to set.
376         */
377        public void setFinancialObjectivePrsctrlIndicator(boolean _FinancialObjectivePrsctrlIndicator_);
378    
379        /**
380         * Gets the accountCfdaNumber attribute.
381         * 
382         * @return Returns the accountCfdaNumber
383         */
384        public String getAccountCfdaNumber();
385    
386        /**
387         * Sets the accountCfdaNumber attribute.
388         * 
389         * @param accountCfdaNumber The accountCfdaNumber to set.
390         */
391        public void setAccountCfdaNumber(String accountCfdaNumber);
392    
393        /**
394         * Gets the accountOffCampusIndicator attribute.
395         * 
396         * @return Returns the accountOffCampusIndicator
397         */
398        public boolean isAccountOffCampusIndicator();
399    
400        /**
401         * Sets the accountOffCampusIndicator attribute.
402         * 
403         * @param accountOffCampusIndicator The accountOffCampusIndicator to set.
404         */
405        public void setAccountOffCampusIndicator(boolean accountOffCampusIndicator);
406    
407        /**
408         * Gets the active attribute.
409         * 
410         * @return Returns the active
411         */
412        public boolean isActive();
413    
414        /**
415         * Sets the active attribute.
416         * 
417         * @param active The active to set.
418         */
419        public void setActive(boolean active);
420    
421        /**
422         * Gets the chartOfAccounts attribute.
423         * 
424         * @return Returns the chartOfAccounts
425         */
426        public Chart getChartOfAccounts();
427    
428        /**
429         * Sets the chartOfAccounts attribute.
430         * 
431         * @param chartOfAccounts The chartOfAccounts to set.
432         * @deprecated
433         */
434        public void setChartOfAccounts(Chart chartOfAccounts);
435    
436        /**
437         * Gets the organization attribute.
438         * 
439         * @return Returns the organization
440         */
441        public Organization getOrganization();
442    
443        /**
444         * Sets the organization attribute.
445         * 
446         * @param organization The organization to set.
447         * @deprecated
448         */
449        public void setOrganization(Organization organization);
450    
451        /**
452         * Gets the accountType attribute.
453         * 
454         * @return Returns the accountType
455         */
456        public AccountType getAccountType();
457    
458        /**
459         * Sets the accountType attribute.
460         * 
461         * @param accountType The accountType to set.
462         * @deprecated
463         */
464        public void setAccountType(AccountType accountType);
465    
466        /**
467         * Gets the accountPhysicalCampus attribute.
468         * 
469         * @return Returns the accountPhysicalCampus
470         */
471        public Campus getAccountPhysicalCampus();
472    
473        /**
474         * Sets the accountPhysicalCampus attribute.
475         * 
476         * @param accountPhysicalCampus The accountPhysicalCampus to set.
477         * @deprecated
478         */
479        public void setAccountPhysicalCampus(Campus accountPhysicalCampus);
480    
481        /**
482         * Gets the accountState attribute
483         * 
484         * @return Returns the accountState
485         */
486        public State getAccountState();
487    
488        /**
489         * Sets the accountState attribute
490         * 
491         * @param state
492         * @deprecated
493         */
494        public void setAccountState(State state);
495    
496        /**
497         * Gets the subFundGroup attribute.
498         * 
499         * @return Returns the subFundGroup
500         */
501        public SubFundGroup getSubFundGroup();
502    
503        /**
504         * Sets the subFundGroup attribute.
505         * 
506         * @param subFundGroup The subFundGroup to set.
507         * @deprecated
508         */
509        public void setSubFundGroup(SubFundGroup subFundGroup);
510    
511        /**
512         * Gets the financialHigherEdFunction attribute.
513         * 
514         * @return Returns the financialHigherEdFunction
515         */
516        public HigherEducationFunction getFinancialHigherEdFunction();
517    
518        /**
519         * Sets the financialHigherEdFunction attribute.
520         * 
521         * @param financialHigherEdFunction The financialHigherEdFunction to set.
522         * @deprecated
523         */
524        public void setFinancialHigherEdFunction(HigherEducationFunction financialHigherEdFunction);
525    
526        /**
527         * Gets the accountRestrictedStatus attribute.
528         * 
529         * @return Returns the accountRestrictedStatus
530         */
531        public RestrictedStatus getAccountRestrictedStatus();
532    
533        /**
534         * Sets the accountRestrictedStatus attribute.
535         * 
536         * @param accountRestrictedStatus The accountRestrictedStatus to set.
537         * @deprecated
538         */
539        public void setAccountRestrictedStatus(RestrictedStatus accountRestrictedStatus);
540    
541        /**
542         * Gets the reportsToAccount attribute.
543         * 
544         * @return Returns the reportsToAccount
545         */
546        public Account getReportsToAccount();
547    
548        /**
549         * Sets the reportsToAccount attribute.
550         * 
551         * @param reportsToAccount The reportsToAccount to set.
552         * @deprecated
553         */
554        public void setReportsToAccount(Account reportsToAccount);
555    
556        /**
557         * Gets the endowmentIncomeAccount attribute.
558         * 
559         * @return Returns the endowmentIncomeAccount
560         */
561        public Account getEndowmentIncomeAccount();
562    
563        /**
564         * Sets the endowmentIncomeAccount attribute.
565         * 
566         * @param endowmentIncomeAccount The endowmentIncomeAccount to set.
567         * @deprecated
568         */
569        public void setEndowmentIncomeAccount(Account endowmentIncomeAccount);
570    
571        /**
572         * Gets the contractControlAccount attribute.
573         * 
574         * @return Returns the contractControlAccount
575         */
576        public Account getContractControlAccount();
577    
578        /**
579         * Sets the contractControlAccount attribute.
580         * 
581         * @param contractControlAccount The contractControlAccount to set.
582         * @deprecated
583         */
584        public void setContractControlAccount(Account contractControlAccount);
585    
586        /**
587         * Gets the incomeStreamAccount attribute.
588         * 
589         * @return Returns the incomeStreamAccount
590         */
591        public Account getIncomeStreamAccount();
592    
593        /**
594         * Sets the incomeStreamAccount attribute.
595         * 
596         * @param incomeStreamAccount The incomeStreamAccount to set.
597         * @deprecated
598         */
599        public void setIncomeStreamAccount(Account incomeStreamAccount);
600    
601        /**
602         * Gets the indirectCostRecoveryAcct attribute.
603         * 
604         * @return Returns the indirectCostRecoveryAcct
605         */
606        public Account getIndirectCostRecoveryAcct();
607    
608        /**
609         * Sets the indirectCostRecoveryAcct attribute.
610         * 
611         * @param indirectCostRecoveryAcct The indirectCostRecoveryAcct to set.
612         * @deprecated
613         */
614        public void setIndirectCostRecoveryAcct(Account indirectCostRecoveryAcct);
615    
616        /**
617         * @return Returns the accountFiscalOfficerUser.
618         */
619        public Person getAccountFiscalOfficerUser();
620    
621        /**
622         * @param accountFiscalOfficerUser The accountFiscalOfficerUser to set.
623         * @deprecated
624         */
625        public void setAccountFiscalOfficerUser(Person accountFiscalOfficerUser);
626    
627        /**
628         * @return Returns the accountManagerUser.
629         */
630        public Person getAccountManagerUser();
631    
632        /**
633         * @param accountManagerUser The accountManagerUser to set.
634         * @deprecated
635         */
636        public void setAccountManagerUser(Person accountManagerUser);
637    
638        /**
639         * @return Returns the accountSupervisoryUser.
640         */
641        public Person getAccountSupervisoryUser();
642    
643        /**
644         * @param accountSupervisoryUser The accountSupervisoryUser to set.
645         * @deprecated
646         */
647        public void setAccountSupervisoryUser(Person accountSupervisoryUser);
648    
649        /**
650         * @return Returns the continuationAccount.
651         */
652        public Account getContinuationAccount();
653    
654        /**
655         * @param continuationAccount The continuationAccount to set.
656         * @deprecated
657         */
658        public void setContinuationAccount(Account continuationAccount);
659    
660    
661        /**
662         * @return Returns the accountGuideline.
663         */
664        public AccountGuideline getAccountGuideline();
665    
666        /**
667         * @param accountGuideline The accountGuideline to set.
668         * @deprecated
669         */
670        public void setAccountGuideline(AccountGuideline accountGuideline);
671    
672        /**
673         * Gets the accountDescription attribute.
674         * 
675         * @return Returns the accountDescription.
676         */
677        public AccountDescription getAccountDescription();
678    
679        /**
680         * Sets the accountDescription attribute value.
681         * 
682         * @param accountDescription The accountDescription to set.
683         */
684        public void setAccountDescription(AccountDescription accountDescription);
685    
686        /**
687         * @return Returns the subAccounts.
688         */
689        public List getSubAccounts();
690    
691        /**
692         * @param subAccounts The subAccounts to set.
693         */
694        public void setSubAccounts(List subAccounts);
695    
696        /**
697         * @return Returns the chartOfAccountsCode.
698         */
699        public String getChartOfAccountsCode();
700    
701        /**
702         * @param chartOfAccountsCode The chartOfAccountsCode to set.
703         */
704        public void setChartOfAccountsCode(String chartOfAccountsCode);
705    
706        /**
707         * @return Returns the accountFiscalOfficerSystemIdentifier.
708         */
709        public String getAccountFiscalOfficerSystemIdentifier();
710    
711        /**
712         * @param accountFiscalOfficerSystemIdentifier The accountFiscalOfficerSystemIdentifier to set.
713         */
714        public void setAccountFiscalOfficerSystemIdentifier(String accountFiscalOfficerSystemIdentifier);
715    
716        /**
717         * @return Returns the accountManagerSystemIdentifier.
718         */
719        public String getAccountManagerSystemIdentifier();
720    
721        /**
722         * @param accountManagerSystemIdentifier The accountManagerSystemIdentifier to set.
723         */
724        public void setAccountManagerSystemIdentifier(String accountManagerSystemIdentifier);
725    
726        /**
727         * @return Returns the accountPhysicalCampusCode.
728         */
729        public String getAccountPhysicalCampusCode();
730    
731        /**
732         * @param accountPhysicalCampusCode The accountPhysicalCampusCode to set.
733         */
734        public void setAccountPhysicalCampusCode(String accountPhysicalCampusCode);
735    
736        /**
737         * @return Returns the accountRestrictedStatusCode.
738         */
739        public String getAccountRestrictedStatusCode();
740    
741        /**
742         * @param accountRestrictedStatusCode The accountRestrictedStatusCode to set.
743         */
744        public void setAccountRestrictedStatusCode(String accountRestrictedStatusCode);
745    
746        /**
747         * @return Returns the accountsSupervisorySystemsIdentifier.
748         */
749        public String getAccountsSupervisorySystemsIdentifier();
750    
751        /**
752         * @param accountsSupervisorySystemsIdentifier The accountsSupervisorySystemsIdentifier to set.
753         */
754        public void setAccountsSupervisorySystemsIdentifier(String accountsSupervisorySystemsIdentifier);
755    
756        /**
757         * @return Returns the accountTypeCode.
758         */
759        public String getAccountTypeCode();
760    
761        /**
762         * @param accountTypeCode The accountTypeCode to set.
763         */
764        public void setAccountTypeCode(String accountTypeCode);
765    
766        /**
767         * @return Returns the continuationAccountNumber.
768         */
769        public String getContinuationAccountNumber();
770    
771        /**
772         * @param continuationAccountNumber The continuationAccountNumber to set.
773         */
774        public void setContinuationAccountNumber(String continuationAccountNumber);
775    
776        /**
777         * @return Returns the continuationFinChrtOfAcctCd.
778         */
779        public String getContinuationFinChrtOfAcctCd();
780    
781        /**
782         * @param continuationFinChrtOfAcctCd The continuationFinChrtOfAcctCd to set.
783         */
784        public void setContinuationFinChrtOfAcctCd(String continuationFinChrtOfAcctCd);
785    
786        /**
787         * @return Returns the contractControlAccountNumber.
788         */
789        public String getContractControlAccountNumber();
790    
791        /**
792         * @param contractControlAccountNumber The contractControlAccountNumber to set.
793         */
794        public void setContractControlAccountNumber(String contractControlAccountNumber);
795    
796        /**
797         * @return Returns the contractControlFinCoaCode.
798         */
799        public String getContractControlFinCoaCode();
800    
801        /**
802         * @param contractControlFinCoaCode The contractControlFinCoaCode to set.
803         */
804        public void setContractControlFinCoaCode(String contractControlFinCoaCode);
805    
806        /**
807         * @return Returns the endowmentIncomeAccountNumber.
808         */
809        public String getEndowmentIncomeAccountNumber();
810    
811        /**
812         * @param endowmentIncomeAccountNumber The endowmentIncomeAccountNumber to set.
813         */
814        public void setEndowmentIncomeAccountNumber(String endowmentIncomeAccountNumber);
815    
816        /**
817         * @return Returns the endowmentIncomeAcctFinCoaCd.
818         */
819        public String getEndowmentIncomeAcctFinCoaCd();
820    
821        /**
822         * @param endowmentIncomeAcctFinCoaCd The endowmentIncomeAcctFinCoaCd to set.
823         */
824        public void setEndowmentIncomeAcctFinCoaCd(String endowmentIncomeAcctFinCoaCd);
825    
826        /**
827         * @return Returns the financialHigherEdFunctionCd.
828         */
829        public String getFinancialHigherEdFunctionCd();
830    
831        /**
832         * @param financialHigherEdFunctionCd The financialHigherEdFunctionCd to set.
833         */
834        public void setFinancialHigherEdFunctionCd(String financialHigherEdFunctionCd);
835    
836        /**
837         * @return Returns the incomeStreamAccountNumber.
838         */
839        public String getIncomeStreamAccountNumber();
840    
841        /**
842         * @param incomeStreamAccountNumber The incomeStreamAccountNumber to set.
843         */
844        public void setIncomeStreamAccountNumber(String incomeStreamAccountNumber);
845    
846        /**
847         * @return Returns the incomeStreamFinancialCoaCode.
848         */
849        public String getIncomeStreamFinancialCoaCode();
850    
851        /**
852         * @param incomeStreamFinancialCoaCode The incomeStreamFinancialCoaCode to set.
853         */
854        public void setIncomeStreamFinancialCoaCode(String incomeStreamFinancialCoaCode);
855    
856        /**
857         * @return Returns the indirectCostRcvyFinCoaCode.
858         */
859        public String getIndirectCostRcvyFinCoaCode();
860    
861        /**
862         * @param indirectCostRcvyFinCoaCode The indirectCostRcvyFinCoaCode to set.
863         */
864        public void setIndirectCostRcvyFinCoaCode(String indirectCostRcvyFinCoaCode);
865    
866        /**
867         * @return Returns the indirectCostRecoveryAcctNbr.
868         */
869        public String getIndirectCostRecoveryAcctNbr();
870    
871        /**
872         * @param indirectCostRecoveryAcctNbr The indirectCostRecoveryAcctNbr to set.
873         */
874        public void setIndirectCostRecoveryAcctNbr(String indirectCostRecoveryAcctNbr);
875    
876        /**
877         * @return Returns the organizationCode.
878         */
879        public String getOrganizationCode();
880    
881        /**
882         * @param organizationCode The organizationCode to set.
883         */
884        public void setOrganizationCode(String organizationCode);
885    
886        /**
887         * @return Returns the reportsToAccountNumber.
888         */
889        public String getReportsToAccountNumber();
890    
891        /**
892         * @param reportsToAccountNumber The reportsToAccountNumber to set.
893         */
894        public void setReportsToAccountNumber(String reportsToAccountNumber);
895    
896        /**
897         * @return Returns the reportsToChartOfAccountsCode.
898         */
899        public String getReportsToChartOfAccountsCode();
900    
901        /**
902         * @param reportsToChartOfAccountsCode The reportsToChartOfAccountsCode to set.
903         */
904        public void setReportsToChartOfAccountsCode(String reportsToChartOfAccountsCode);
905    
906        /**
907         * @return Returns the subFundGroupCode.
908         */
909        public String getSubFundGroupCode();
910    
911        /**
912         * @param subFundGroupCode The subFundGroupCode to set.
913         */
914        public void setSubFundGroupCode(String subFundGroupCode);
915    
916        /**
917         * Gets the postalZipCode attribute.
918         * 
919         * @return Returns the postalZipCode.
920         */
921        public PostalCode getPostalZipCode();
922    
923        /**
924         * Sets the postalZipCode attribute value.
925         * 
926         * @param postalZipCode The postalZipCode to set.
927         */
928        public void setPostalZipCode(PostalCode postalZipCode);
929    
930        /**
931         * Gets the budgetRecordingLevel attribute.
932         * 
933         * @return Returns the budgetRecordingLevel.
934         */
935        public BudgetRecordingLevel getBudgetRecordingLevel();
936    
937        /**
938         * Sets the budgetRecordingLevel attribute value.
939         * 
940         * @param budgetRecordingLevel The budgetRecordingLevel to set.
941         */
942        public void setBudgetRecordingLevel(BudgetRecordingLevel budgetRecordingLevel);
943    
944        /**
945         * Gets the sufficientFundsCode attribute.
946         * 
947         * @return Returns the sufficientFundsCode.
948         */
949        public SufficientFundsCode getSufficientFundsCode();
950    
951        /**
952         * Sets the sufficientFundsCode attribute value.
953         * 
954         * @param sufficientFundsCode The sufficientFundsCode to set.
955         */
956        public void setSufficientFundsCode(SufficientFundsCode sufficientFundsCode);
957    
958        /**
959         * Implementing equals since I need contains to behave reasonably in a hashed datastructure.
960         * 
961         * @see java.lang.Object#equals(java.lang.Object)
962         */
963        public boolean equals(Object obj);
964    
965        /**
966         * Calcluates hashCode based on current values of chartOfAccountsCode and accountNumber fields. Somewhat dangerous, since both
967         * of those fields are mutable, but I don't expect people to be editing those values directly for Accounts stored in hashed
968         * datastructures.
969         * 
970         * @see java.lang.Object#hashCode()
971         */
972        public int hashCode();
973    
974        /**
975         * Convenience method to make the primitive account fields from this Account easier to compare to the account fields from
976         * another Account or an AccountingLine
977         * 
978         * @return String representing the account associated with this Accounting
979         */
980        public String getAccountKey();
981    
982        /**
983         * Gets the dummy attribute.
984         * 
985         * @return Returns the dummy.
986         */
987    
988        /**
989         * Gets the accountResponsibilitySection attribute.
990         * 
991         * @return Returns the accountResponsibilitySection.
992         */
993        public String getAccountResponsibilitySection();
994    
995        /**
996         * Sets the accountResponsibilitySection attribute value.
997         * 
998         * @param accountResponsibilitySection The accountResponsibilitySection to set.
999         */
1000        public void setAccountResponsibilitySection(String accountResponsibilitySection);
1001    
1002        /**
1003         * Gets the contractsAndGrantsSection attribute.
1004         * 
1005         * @return Returns the contractsAndGrantsSection.
1006         */
1007        public String getContractsAndGrantsSection();
1008    
1009        /**
1010         * Sets the contractsAndGrantsSection attribute value.
1011         * 
1012         * @param contractsAndGrantsSection The contractsAndGrantsSection to set.
1013         */
1014        public void setContractsAndGrantsSection(String contractsAndGrantsSection);
1015    
1016        /**
1017         * Gets the accountDescriptionSection attribute.
1018         * 
1019         * @return Returns the accountDescriptionSection.
1020         */
1021        public String getAccountDescriptionSection();
1022    
1023        /**
1024         * Sets the accountDescriptionSection attribute value.
1025         * 
1026         * @param accountDescriptionSection The accountDescriptionSection to set.
1027         */
1028        public void setAccountDescriptionSection(String accountDescriptionSection);
1029    
1030        /**
1031         * Gets the guidelinesAndPurposeSection attribute.
1032         * 
1033         * @return Returns the guidelinesAndPurposeSection.
1034         */
1035        public String getGuidelinesAndPurposeSection();
1036    
1037        /**
1038         * Sets the guidelinesAndPurposeSection attribute value.
1039         * 
1040         * @param guidelinesAndPurposeSection The guidelinesAndPurposeSection to set.
1041         */
1042        public void setGuidelinesAndPurposeSection(String guidelinesAndPurposeSection);
1043    
1044        /**
1045         * Gets the accountResponsibilitySectionBlank attribute.
1046         * 
1047         * @return Returns the accountResponsibilitySectionBlank.
1048         */
1049        public String getAccountResponsibilitySectionBlank();
1050    
1051        /**
1052         * Gets the contractsAndGrantsSectionBlank attribute.
1053         * 
1054         * @return Returns the contractsAndGrantsSectionBlank.
1055         */
1056        public String getContractsAndGrantsSectionBlank();
1057    
1058        /**
1059         * Gets the accountDescriptionSectionBlank attribute.
1060         * 
1061         * @return Returns the accountDescriptionSectionBlank.
1062         */
1063        public String getAccountDescriptionSectionBlank();
1064    
1065        /**
1066         * Gets the guidelinesAndPurposeSectionBlank attribute.
1067         * 
1068         * @return Returns the guidelinesAndPurposeSectionBlank.
1069         */
1070        public String getGuidelinesAndPurposeSectionBlank();
1071        
1072        /**
1073         * @return if the account like entity is closed or not
1074         */
1075        public abstract boolean isClosed();
1076    
1077    }