ARoad0.gBaseInterface
Interface UserID

All Superinterfaces:
ACSObject, BaseBeanManager, BaseObject, Basic, BoundBean, java.lang.Cloneable, java.lang.Comparable, Copyable, EligibleParty, FinalizedObject, FinalizedObjectForUser, GroupIDMember, ImmutableBasic, ImmutableEligibleParty, ImmutableGroupIDMember, ImmutablePrivilegeSource, ImmutableSource, ImmutableTarget, ImmutableUserID, PrivilegeSource, PrivilegeUser
All Known Subinterfaces:
ProxyMySQL, UserIDMySQL, UserIDUbuntu
All Known Implementing Classes:
ProxyMySQLImpl, UserIDImpl, UserIDMySQLImpl, UserIDUbuntuImpl

public interface UserID
extends ImmutableUserID, GroupIDMember

This interface is responsible for modeling an account in an ACS, as a kind of GroupIDMember that owns some resources and a primary groupID. It has some current actors, that are programs starting their execution under it.


Method Summary
 void finalizeForUser()
          The super method removes the userID in the ACS lists (main and controllers), and removes in the resources connected through an aclEntry.
 void setEorPrimGroup(GroupID _g)
          Set a primary group, and it must have this instance as member.
 void setOrder(int _i)
          Set the strenght of the UserID which defines its priority order in access control decisions.
 
Methods inherited from interface ARoad0.gBaseInterface.ImmutableUserID
getEorL_UserIDCurrentActors, getEorL_UserIDOwnResources, getEorPrimGroup, 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
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

setEorPrimGroup

void setEorPrimGroup(GroupID _g)
                     throws UpDateError
Set a primary group, and it must have this instance as member. The primary group is used by an Actor that has a current UserID, to set the primary group as current GroupID of the Actor. Update the own actors which have the previous primary group as current group. Remove the current primary group in the current actors which have it as their current group. Fire the PropertyChange 'PrimGroup'. Noop and error mesage to the user if the ep type contains or after the creation. To do it in that case, remove this instance from all its groups, and then, the first registered group will be the primary group. Read the ACS 'GroupID.NoPrimaryGroup' values to check if the argument may be a primary group.

Parameters:
_g - the primary group of the userID. May be null.
Throws:
UpDateError - if _g does not belong to the main ACS of this resource or cannot be a primary group, or does not contain this instance, or if the type is immutable after the first creation.

setOrder

void setOrder(int _i)
              throws UpDateError
Set the strenght of the UserID which defines its priority order in access control decisions.

Parameters:
_i - is the order of the userID - on Unix: 16-bit user identifier (UID)
Throws:
UpDateError - if immutable

finalizeForUser

void finalizeForUser()
                     throws UpDateError
The super method removes the userID in the ACS lists (main and controllers), and removes in the resources connected through an aclEntry. This method removes this instance in own resources and in current actors, so they have no more UserIDs connected to them. This method HAS TO BE USED before deleting the userID.

Specified by:
finalizeForUser in interface Basic
Specified by:
finalizeForUser in interface FinalizedObjectForUser
Throws:
UpDateError - if the userID is unknown of the main ACS (if it is a clone, typically)