001: /*
002: * Copyright 2006-2007 The Kuali Foundation.
003: *
004: * Licensed under the Educational Community License, Version 1.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/ecl1.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.module.chart.service;
017:
018: import java.util.List;
019:
020: import org.kuali.module.chart.bo.ObjectType;
021:
022: /**
023: *
024: * This service interface defines methods necessary for retrieving fully populated ObjectType business objects from the database
025: * that are necessary for transaction processing in the application. It also defines methods to retrieve specific object type codes
026: */
027: public interface ObjectTypeService {
028: /**
029: * Retrieve an ObjectType by code/id.
030: *
031: * @param objectTypeCode
032: * @return an ObjectType that matches this code
033: */
034: public ObjectType getByPrimaryKey(String objectTypeCode);
035:
036: /**
037: * Returns a list of basic expense objects from options table for a given university fiscal year
038: *
039: * @param universityFiscalYear
040: * @return a list of basic expense object types based on the fiscal year
041: */
042: public List<String> getBasicExpenseObjectTypes(
043: Integer universityFiscalYear);
044:
045: /**
046: *
047: * Returns a list of all expense objects from options table for a given university fiscal year
048: * @param universityFiscalYear
049: * @return a list of all expense object types based on the fiscal year
050: */
051: public List<String> getExpenseObjectTypes(
052: Integer universityFiscalYear);
053:
054: /**
055: * Returns the expense transfer object type from options table for a given university fiscal year
056: *
057: * @param universityFiscalYear
058: * @return the expense transfer object type associated with this fiscal year
059: */
060: public String getExpenseTransferObjectType(
061: Integer universityFiscalYear);
062:
063: /**
064: * Returns the asset object type from options table for a given university fiscal year
065: *
066: * @param universityFiscalYear
067: * @return the asset object type that is associated with this fiscal year
068: */
069: public String getAssetObjectType(Integer universityFiscalYear);
070:
071: /**
072: * Returns a list of basic income objects from options table for a given university fiscal year
073: *
074: * @param universityFiscalYear
075: * @return a list of basic income object types associated with this fiscal year
076: */
077: public List<String> getBasicIncomeObjectTypes(
078: Integer universityFiscalYear);
079:
080: /**
081: * Returns the income transfer object type from options table for a given university fiscal year
082: *
083: * @param universityFiscalYear
084: * @return the income transfer object type associated with this fiscal year
085: */
086: public String getIncomeTransferObjectType(
087: Integer universityFiscalYear);
088:
089: /**
090: * Returns a list of basic expense objects from options table for the current university fiscal year
091: *
092: * @return list of current fiscal year basic expense object types
093: */
094: public List<String> getCurrentYearBasicExpenseObjectTypes();
095:
096: /**
097: * Returns a list of basic expense objects from options table for the current university fiscal year. Normally, this method
098: * returns the same values as getCurrentYearBasicExpenseObjectTypes, but also has the expenseTransferObjectType value.
099: *
100: * @return current fiscal year expense object types
101: */
102: public List<String> getCurrentYearExpenseObjectTypes();
103:
104: /**
105: * Returns the expense transfer object type from options table for the current university fiscal year
106: *
107: * @return current fiscal year expense transfer object type
108: */
109: public String getCurrentYearExpenseTransferObjectType();
110:
111: /**
112: * Returns the asset object type from options table for the current university fiscal year
113: *
114: * @return current fiscal year asset object type
115: */
116: public String getCurrentYearAssetObjectType();
117:
118: /**
119: * Returns a list of basic income objects from options table for the current university fiscal year
120: *
121: * @return list of current year basic income object types associated with this fiscal year
122: */
123: public List<String> getCurrentYearBasicIncomeObjectTypes();
124:
125: /**
126: * Returns the income transfer object type from options table for the current university fiscal year
127: *
128: * @return current fiscal year income transfer object type
129: */
130: public String getCurrentYearIncomeTransferObjectType();
131:
132: /**
133: * Returns a list of the object types that the nominal balance selector uses to determine if it should process a balance or not
134: *
135: * @param fiscalYear
136: * @return list of nominal activity closing allowed object types associated with this fiscal year
137: */
138: public List<String> getNominalActivityClosingAllowedObjectTypes(
139: Integer fiscalYear);
140:
141: /**
142: * Returns a list of object types that the general balance forwards selector uses to determine if it should process a balance
143: *
144: * @param fiscalYear
145: * @return list of general forward balance object types associated with this fiscal year
146: */
147: public List<String> getGeneralForwardBalanceObjectTypes(
148: Integer fiscalYear);
149:
150: /**
151: * Returns a list of object types that the cumulative balance forwards selector uses to determine if it should process a balance
152: *
153: * @param fiscalYear
154: * @return list of cumulative forward balance object types associated with this fiscal year
155: */
156: public List<String> getCumulativeForwardBalanceObjectTypes(
157: Integer fiscalYear);
158: }
|