ARoad0.gBaseInterface
Interface GroupID

All Superinterfaces:
ACSObject, BaseBeanManager, BaseObject, Basic, BoundBean, java.lang.Cloneable, java.lang.Comparable, Copyable, EligibleParty, FinalizedObject, FinalizedObjectForUser, GroupIDMember, ImmutableBasic, ImmutableEligibleParty, ImmutableGroupID, ImmutableGroupIDMember, ImmutablePrivilegeSource, ImmutableSource, ImmutableTarget, PrivilegeSource, PrivilegeUser
All Known Subinterfaces:
GroupIDMySQL, RoleMySQL
All Known Implementing Classes:
GroupIDImpl, GroupIDMySQLImpl, RoleMySQLImpl

public interface GroupID
extends ImmutableGroupID, GroupIDMember

This interface is responsible for modeling a GroupIDMember that owns a set of members, and which has Account/Group rights on Resources. Typically, it handles a set of userIDs and GroupIDs. The membership links between the groupID and each member are managed by the groupID instance. Resources may also be registered as owned by a groupID. Aa rights user, an actor may also have a groupID as a current group, and it is then registered in a third list. An actor may have several secondary groups as rights user, in a fourth list.


Method Summary
 void addEorMember(GroupIDMember _ep)
          Adds a GroupIDMember as a member of this groupID, and update the member through the addGroupToGM method.
 void removeEorMember(GroupIDMember _ep)
          Removes a groupID member, and update it.
 void setEorL_Members(GroupIDMember[] _L)
          Defines the groupID members, and update the members.
 void setOrder(int _i)
          Set the order of the GroupID which determines its priority among in access control decisions - on Unix : 16-bit group identifier (GID).
 
Methods inherited from interface ARoad0.gBaseInterface.ImmutableGroupID
containsAsIndirectMember, containsAsIndirectMemberWithoutAliasing, containsAsMember, containsAsMemberWithoutAliasing, getEorL_GroupIDCurrentActors, getEorL_GroupIDCurrentActorsAsSecondaryGroup, getEorL_GroupIDOwnResources, getEorL_Members, getFirstIntermediateForIndirectMember, getOrder, ownsResource
 
Methods inherited from interface ARoad0.gBaseInterface.GroupIDMember
addGroupToGM, removeGroupToGM
 
Methods inherited from interface ARoad0.gBaseInterface.EligibleParty
copyWithoutInternalAcl, setEPType
 
Methods inherited from interface ARoad0.gBaseInterface.Basic
finalizeForUser, setComment
 
Methods inherited from interface ARoad0.gBaseInterface.PrivilegeSource
addEorPrivilegeForTypeToSource, removeEorPrivilegeToSource
 
Methods inherited from interface ARoad0.gBaseInterface.ImmutableGroupIDMember
getEorL_GroupID, isAdmin
 
Methods inherited from interface ARoad0.gBaseInterface.ImmutableEligibleParty
getEorL_AclConnectedResources, getEPType, getM_ConstrainedChildACS
 
Methods inherited from interface ARoad0.gBaseInterface.ImmutableBasic
getComment, getEorAliasAsInternalHardReference, getEorReferenceAsInternalHardAlias, getHasSoftAlias, getImpliedViews, getIS_Name, getL_AcsOfSoftReferences, getL_SoftAlias, getPropertyChangeListeners, getSerialVersionUID, getVirtualFolders
 
Methods inherited from interface ARoad0.gBaseInterface.Copyable
copy
 
Methods inherited from interface ARoad0.gBaseInterface.BoundBean
addPropertyChangeListener, addPropertyChangeListener, removePropertyChangeListener, removePropertyChangeListener
 
Methods inherited from interface ARoad0.gBaseInterface.FinalizedObject
finalizeForBase
 
Methods inherited from interface ARoad0.gBaseInterface.ImmutablePrivilegeSource
getEorL_SourcePrivilegeForLinks, getEorL_SourcePrivilegeForTypes, getEorL_SourcePrivileges
 
Methods inherited from interface ARoad0.gBaseInterface.ImmutableSource
getEorAliasAsInternalHardReference, getEorReferenceAsInternalHardAlias, getHasSoftAlias, getL_AcsOfSoftReferences, getL_SoftAlias, getType
 
Methods inherited from interface ARoad0.gBaseInterface.ACSObject
getAcsName, getEorACS
 
Methods inherited from interface ARoad0.gBaseInterface.BaseObject
equals, getFullName, getName, getNickName, hashCode
 
Methods inherited from interface ARoad0.gBaseInterface.BaseBeanManager
addPropertyChangeListener, addPropertyChangeListener, removePropertyChangeListener, removePropertyChangeListener
 
Methods inherited from interface ARoad0.gBaseInterface.ImmutableTarget
getEorAliasAsInternalHardReference, getEorReferenceAsInternalHardAlias, getHasSoftAlias, getL_AcsOfSoftReferences, getL_SoftAlias, getType
 

Method Detail

setEorL_Members

void setEorL_Members(GroupIDMember[] _L)
                     throws CreateError
Defines the groupID members, and update the members. Controls the presence of a loop between groupIDs.

Parameters:
_L - is the members of the GroupID. May be null. The new children array is sorted with ImmutableEligibleParty.compareTo(); null and emptty instances are removed.
Throws:
CreateError - if _gm is a GroupID which has this instance has direct or indirect member, or if the type does not allow the operation

addEorMember

void addEorMember(GroupIDMember _ep)
                  throws CreateError
Adds a GroupIDMember as a member of this groupID, and update the member through the addGroupToGM method. Control the presence of a loop between groupIDs, including aliasings.

Parameters:
_ep - new member of the GroupID. No action if null or empty.
Throws:
CreateError - if _gm is a GroupID which has this instance has direct or indirect member, or if the type does not allow the operation

removeEorMember

void removeEorMember(GroupIDMember _ep)
                     throws CreateError
Removes a groupID member, and update it.

Parameters:
_ep - member of the GroupID. No action if unknown, null or empty.
Throws:
CreateError - if the type does not allow the operation

setOrder

void setOrder(int _i)
Set the order of the GroupID which determines its priority among in access control decisions - on Unix : 16-bit group identifier (GID).

Parameters:
_i - is the order of the groupID - on Unix : 16-bit group identifier (GID)