01: /*
02: * Copyright 2005-2007 The Kuali Foundation.
03: *
04: *
05: * Licensed under the Educational Community License, Version 1.0 (the "License");
06: * you may not use this file except in compliance with the License.
07: * You may obtain a copy of the License at
08: *
09: * http://www.opensource.org/licenses/ecl1.php
10: *
11: * Unless required by applicable law or agreed to in writing, software
12: * distributed under the License is distributed on an "AS IS" BASIS,
13: * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14: * See the License for the specific language governing permissions and
15: * limitations under the License.
16: */
17: package edu.iu.uis.eden.routetemplate.dao;
18:
19: import java.sql.Timestamp;
20: import java.util.Collection;
21: import java.util.List;
22: import java.util.Map;
23:
24: import edu.iu.uis.eden.routetemplate.RuleBaseValues;
25: import edu.iu.uis.eden.routetemplate.RuleResponsibility;
26:
27: public interface RuleDAO {
28:
29: public void save(RuleBaseValues ruleBaseValues);
30:
31: public void saveDeactivationDate(RuleBaseValues ruleBaseValues);
32:
33: public void delete(Long ruleBaseValuesId);
34:
35: public RuleBaseValues findRuleBaseValuesById(Long ruleBaseValuesId);
36:
37: public RuleResponsibility findRuleResponsibility(
38: Long responsibilityId);
39:
40: public List fetchAllRules(boolean currentRules);
41:
42: public List fetchAllCurrentRulesForTemplateDocCombination(
43: Long ruleTemplateId, List documentTypes);
44:
45: public List fetchAllCurrentRulesForTemplateDocCombination(
46: Long ruleTemplateId, List documentTypes,
47: Timestamp effectiveDate);
48:
49: public List search(String docTypeName, Long ruleId,
50: Long ruleTemplateId, String ruleDescription,
51: Long workgroupId, String workflowId, String roleName,
52: Boolean delegateRule, Boolean activeInd, Map extensionValues);
53:
54: public List search(String docTypeName, Long ruleTemplateId,
55: String ruleDescription, Collection<String> workgroupIds,
56: String workflowId, String roleName, Boolean delegateRule,
57: Boolean activeInd, Map extensionValues,
58: Collection actionRequestCodes);
59:
60: public List findByRouteHeaderId(Long routeHeaderId);
61:
62: public List findRuleBaseValuesByResponsibilityReviewer(
63: String reviewerName, String type);
64:
65: public List findResponsibilitiesByDelegationRuleId(
66: Long delegationRuleId);
67:
68: public List findByPreviousVersionId(Long previousVersionId);
69:
70: public void clearCache();
71:
72: public void retrieveAllReferences(RuleBaseValues rule);
73:
74: public RuleBaseValues findDefaultRuleByRuleTemplateId(
75: Long ruleTemplateId);
76:
77: public RuleBaseValues getParentRule(Long ruleBaseValuesId);
78:
79: public List findOldDelegations(RuleBaseValues oldRule,
80: RuleBaseValues newRule);
81: }
|