001 /* 002 * Copyright 2005-2008 The Kuali Foundation 003 * 004 * 005 * Licensed under the Educational Community License, Version 2.0 (the "License"); 006 * you may not use this file except in compliance with the License. 007 * You may obtain a copy of the License at 008 * 009 * http://www.opensource.org/licenses/ecl2.php 010 * 011 * Unless required by applicable law or agreed to in writing, software 012 * distributed under the License is distributed on an "AS IS" BASIS, 013 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 014 * See the License for the specific language governing permissions and 015 * limitations under the License. 016 */ 017 package org.kuali.rice.kew.rule.service; 018 019 import java.util.Collection; 020 import java.util.List; 021 import java.util.Map; 022 023 import org.kuali.rice.kew.rule.RuleDelegation; 024 import org.kuali.rice.kew.xml.XmlLoader; 025 import org.kuali.rice.kew.xml.export.XmlExporter; 026 027 /** 028 * A service providing data access for {@link RuleDelegation}s. 029 * 030 * @see RuleDelegation 031 * 032 * @author Kuali Rice Team (rice.collab@kuali.org) 033 */ 034 public interface RuleDelegationService extends XmlLoader, XmlExporter { 035 036 public List findByDelegateRuleId(Long ruleId); 037 public void save(RuleDelegation ruleDelegation); 038 public void delete(Long ruleDelegationId); 039 public List findAllCurrentRuleDelegations(); 040 public RuleDelegation findByRuleDelegationId(Long ruleDelegationId); 041 public List<RuleDelegation> search(String parentRuleBaseVaueId, String parentResponsibilityId, String docTypeName, Long ruleId, Long ruleTemplateId, String ruleDescription, String groupId, String principalId, String delegationType, Boolean activeInd, Map extensionValues, String workflowIdDirective); 042 public List<RuleDelegation> search(String parentRuleBaseVaueId, String parentResponsibilityId, String docTypeName, String ruleTemplateName, String ruleDescription, String groupId, String principalId, Boolean workgroupMember, String delegationType, Boolean activeInd, Map extensionValues, Collection<String> actionRequestCodes); 043 /** 044 * Returns a List of all RuleDelegations with "current" Rules for the given 045 * responsibility id. 046 */ 047 public List<RuleDelegation> findByResponsibilityId(Long responsibilityId); 048 049 050 public void flushRuleDlgnCache(); 051 052 }