View Javadoc

1   /**
2    * Copyright 2005-2011 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.group;
17  
18  
19  import org.kuali.rice.core.api.membership.MemberType;
20  import org.kuali.rice.core.api.mo.common.GloballyUnique;
21  import org.kuali.rice.core.api.mo.common.Identifiable;
22  import org.kuali.rice.core.api.mo.common.Versioned;
23  import org.kuali.rice.core.api.mo.common.active.InactivatableFromTo;
24  
25  public interface GroupMemberContract extends Versioned, GloballyUnique, InactivatableFromTo, Identifiable {
26  
27      /**
28       * This is the id for the Group.
29       *
30       * <p>
31       * This is a id assigned to a Group.  It defines the group this group member belongs to.
32       * </p>
33       *
34       * @return groupId
35       */
36      String getGroupId();
37  
38      /**
39       * This is the member id for the Group Member.
40       *
41       * <p>
42       * This is a id value that defines the Group Member.  This value is either a Principal Id or Group Id
43       * depending on the type code
44       * </p>
45       *
46       * @return memberId
47       */
48      String getMemberId();
49  
50      /**
51       * This is the type code for the Group Member.
52       *
53       * <p>
54       * This is a value that defines the type of Group Member.  This value determines whether memberId is
55       * either a Principal Id or Group Id
56       * </p>
57       *
58       * @return typeCode
59       */
60      MemberType getType();
61  }