1 /** 2 * Copyright 2005-2015 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.role; 17 18 import org.kuali.rice.core.api.mo.common.Identifiable; 19 import org.kuali.rice.core.api.mo.common.Versioned; 20 21 /** 22 * 23 * <p>Associates a Role/Responsibility/(Group/Principal).<p/> 24 * 25 * <p>When a person is assigned to a role with a responsibility, the UI must populate this table with this additional 26 * information.</p> 27 * 28 * Data is an action request type (approve/acknowledge/fyi/etc...), and a priority number 29 */ 30 public interface RoleResponsibilityActionContract extends Versioned, Identifiable { 31 32 /** 33 * Id of the contained RoleResponsibility object. 34 * @return A RoleResponsibility Id. Can be null if there is no associated RoleResponsibility. 35 */ 36 String getRoleResponsibilityId(); 37 38 /** 39 * <p>A string representation of the action type to be taken on this RoleResponsibilityAction.</p> 40 * 41 * <p>Examples are 42 * <ul> 43 * <li>"A" - Approve </li> 44 * <li>"F" - FYI </li> 45 * <li>"K" - Acknowledge </li> 46 * </p> 47 * 48 * @return String representing the action type. This can be null. 49 */ 50 String getActionTypeCode(); 51 52 /** 53 * @return Integer representing the priority assigned to this Action. This can be a null value. 54 */ 55 Integer getPriorityNumber(); 56 57 /** 58 * Returns the action policy code. 59 * @return String for the policy code. This can be null. 60 */ 61 String getActionPolicyCode(); 62 63 /** 64 * String identifier for an associated RoleMember 65 * @return RoleMember identifier. This can be null. 66 */ 67 String getRoleMemberId(); 68 69 /** 70 * Returns a RoleResponsibility instances associated with this action. 71 * @return Associated RoleResponsibility - can be null. 72 */ 73 RoleResponsibilityContract getRoleResponsibility(); 74 75 /** 76 * @return Whether this action should be is forced or not. 77 */ 78 boolean isForceAction(); 79 }