View Javadoc
1   /**
2    * Copyright 2005-2014 The Kuali Foundation
3    *
4    * Licensed under the Educational Community License, Version 2.0 (the "License");
5    * you may not use this file except in compliance with the License.
6    * You may obtain a copy of the License at
7    *
8    * http://www.opensource.org/licenses/ecl2.php
9    *
10   * Unless required by applicable law or agreed to in writing, software
11   * distributed under the License is distributed on an "AS IS" BASIS,
12   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13   * See the License for the specific language governing permissions and
14   * limitations under the License.
15   */
16  package org.kuali.rice.kim.api.responsibility;
17  
18  
19  import org.kuali.rice.kim.api.common.delegate.DelegateTypeContract;
20  
21  import java.util.List;
22  import java.util.Map;
23  
24  /**
25   * Contains information related to responsibilities in the kim system.
26   */
27  public interface ResponsibilityActionContract {
28  
29      /**
30       * The principalId the responsibility action is associated with.
31       * <p>
32       * Can be null as long as the {@link #getGroupId()} is not null.
33       * </p>
34       * <p>
35       * When this is set the {@link #getGroupId()} will not be.
36       * </p>
37       * @return the principalId
38       */
39      String getPrincipalId();
40  
41      /**
42       * The groupId the responsibility action is associated with.
43       *
44       * <p>
45       * Can be null as long as the {@link #getPrincipalId()} is not null.
46       * </p>
47       * <p>
48       * When this is set the {@link #getPrincipalId()} will not be.
49       * </p>
50       *
51       * @return the groupId
52       */
53  	String getGroupId();
54  
55      /**
56       * The roleResponsibilityActionId the responsibility action is associated with.  Can be null.
57       *
58       * @return the roleResponsibilityActionId
59       */
60  	String getRoleResponsibilityActionId();
61  
62      /**
63       * The parallelRoutingGroupingCode the responsibility action is associated with.  Can be null.
64       *
65       * @return the parallelRoutingGroupingCode
66       */
67      String getParallelRoutingGroupingCode();
68  
69      /**
70       * The actionTypeCode the responsibility action is associated with.  Can be null.
71       *
72       * @return the actionTypeCode
73       */
74      String getActionTypeCode();
75  
76      /**
77       * The actionPolicyCode the responsibility action is associated with.  Can be null.
78       *
79       * @return the actionPolicyCode
80       */
81  	String getActionPolicyCode();
82  
83      /**
84       * The priorityNumber the responsibility action is associated with.  Can be null.
85       *
86       * @return the priorityNumber
87       */
88      Integer getPriorityNumber();
89  
90      /**
91       * The memberRoleId the responsibility action is associated with.  Cannot be null or blank.
92       *
93       * @return the memberRoleId
94       */
95  	String getMemberRoleId();
96  
97      /**
98       * The responsibilityName the responsibility action is associated with.  Cannot be null or blank.
99       *
100      * @return the responsibilityName
101      */
102 	String getResponsibilityName();
103 
104     /**
105      * The responsibilityId the responsibility action is associated with.  Cannot be null or blank.
106      *
107      * @return the responsibilityId
108      */
109     String getResponsibilityId();
110 
111     /**
112      * The responsibilityNamespaceCode the responsibility action is associated with.  Cannot be null or blank.
113      *
114      * @return the responsibilityNamespaceCode
115      */
116     String getResponsibilityNamespaceCode();
117 
118     /**
119      * Whether is responsibility action is a force action.
120      * @return true if is a force action
121      */
122 	boolean isForceAction();
123 
124     /**
125      * The qualifying attributes for the responsibility action.  Cannot be null.
126      * @return attributes
127      */
128 	Map<String, String> getQualifier();
129 
130     /**
131      * The delegates for this responsibility action. Cannot be null but can be an empty list.
132      * @return delegates
133      */
134 	List<? extends DelegateTypeContract> getDelegates();
135 
136     /**
137      * The roleId the responsibility action is associated with.  Cannot be null or blank.
138      *
139      * @return the roleId
140      */
141     String getRoleId();
142 }