ARoad0.gBaseInterface
Interface Actor

All Superinterfaces:
ACSObject, BaseBeanManager, BaseObject, Basic, BoundBean, java.lang.Cloneable, java.lang.Comparable, Copyable, EligibleParty, FinalizedObject, FinalizedObjectForUser, ImmutableActor, ImmutableBasic, ImmutableEligibleParty, ImmutableLeaf, ImmutablePrivilegeSource, ImmutablePrivilegeTarget, ImmutableResource, ImmutableSource, ImmutableTarget, Leaf, PrivilegeSource, PrivilegeTarget, PrivilegeUser, Resource
All Known Subinterfaces:
ActorMySQL, ActorUbuntu, ExecutableUbuntu
All Known Implementing Classes:
ActorImpl, ActorMySQLImpl, ActorUbuntuImpl, ExecutableUbuntuImpl

public interface Actor
extends Resource, EligibleParty, ImmutableActor

This class is responsible for modeling an acting entity which may access to resources controlled by the ACS, and which may play some special roles, as a bridge, between an another actor and some resources. Exemples of such actors are servers or programs. This class also models the operating system process which has a current account and group, and belongs to several groups. The current account and group, and the secondary groups, cannot be updated if the resource type does not allow it. But the resource type does not control the bridge target. The setActorAlias() method in 0.6 version has been deleted, and it is replaced by ImmutableBasic.getEorReferenceAsInternalHardAlias() for the AcsAddons only.


Method Summary
 void setEorACSBridgeTarget(Actor _target)
          Sets the another-ACS actor for which this actor is a bridge source.
 void setEorCurrentGroupIDForUser(ImmutableGroupID _g)
          The current groupID is not null when, typically, the actor is an executable launched under an another groupID.
 void setEorCurrentUserIDForUser(ImmutableUserID _u)
          The current userID is not null when, typically, the actor is an executable launched under an another userID.
 void setEorL_SecondaryGroupForUser(ImmutableGroupID[] _L)
          A secondary group is used by an Actor as rights user, to get complementary accesses to targets only when a current userID is set.
 void setIsRightProxy(boolean _b)
          Noop if the resource type is or contains .
 
Methods inherited from interface ARoad0.gBaseInterface.Resource
addAclEntry, copyWithoutInternalAcl, removeAclEntry, resetInheritedAclEntryRights, resetInheritedPrivilegeRights, selectInheritedPrivilege, setEorGroupID, setEorUserID, setL_groupRights, setL_ownerRights, setL_rootRights, setResourceType
 
Methods inherited from interface ARoad0.gBaseInterface.PrivilegeTarget
addEorPrivilegeForTypeToTarget, removeEorPrivilegeToTarget
 
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.ImmutableActor
getEorACSBridgeTarget, getEorCurrentGroupID, getEorCurrentUserID, getEorL_bridgeSources, getEorL_SecondaryGroup, getIsACSBridgeSource, getIsRightProxy, isMemberToSecondaryGroup
 
Methods inherited from interface ARoad0.gBaseInterface.ImmutableResource
containsAclEntryToEP, getActorActivated, getAGOAccessFromTheParentAccount, getAGOAccessFromTheParentGroup, getEorGroupID, getEorImmutableL_TargetInheritedAclEntries, getEorL_EPthroughAclEntry, getEorUserID, getL_aclEntry, getL_AcsControllers, getL_groupRights, getL_inheritedGroupRights, getL_inheritedOwnerRights, getL_ownerRights, getL_rootRights, getM_ConstrainedChildACS, getM_TargetInheritedACLRights, getResourceType, hasTheAccountAndGroupOfParent, selectInheritedAclEntry
 
Methods inherited from interface ARoad0.gBaseInterface.ImmutablePrivilegeTarget
getEorImmutableL_TargetInheritedLinkedPrivileges, getEorL_TargetPrivilegeForLinks, getEorL_TargetPrivilegeForTypes, getEorL_TargetPrivileges, getM_TargetInheritedLinkedPRIRights, getType
 
Methods inherited from interface ARoad0.gBaseInterface.ImmutableTarget
getEorAliasAsInternalHardReference, getEorReferenceAsInternalHardAlias, getHasSoftAlias, getL_AcsOfSoftReferences, getL_SoftAlias
 
Methods inherited from interface ARoad0.gBaseInterface.ImmutableLeaf
compareTo, getEorParent
 
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.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
 

Method Detail

setEorCurrentUserIDForUser

void setEorCurrentUserIDForUser(ImmutableUserID _u)
                                throws UpDateError
The current userID is not null when, typically, the actor is an executable launched under an another userID. This class does not overiddes Resource.setEorUserID() since the userID may be different, for instance when the group rights authorizes the launching to the launcher. Resource.userID is an access target property, and Actor.currentUserID is a rights user property. Fires an event.

Parameters:
_u - the current userID of the actor. May be null.
Throws:
UpDateError - if the current userID is immutable.

setEorCurrentGroupIDForUser

void setEorCurrentGroupIDForUser(ImmutableGroupID _g)
                                 throws UpDateError
The current groupID is not null when, typically, the actor is an executable launched under an another groupID. This class does not overiddes Resource.setEorGroupID() since the groupID may be different, for instance when the ACL rights authorizes the launching to the launcher. Resource.groupID is an access target property, and Actor.currentGroupID is a rights user property.

Parameters:
_g - the current groupID, that for an actor may be changed by itself and different to the resource groupID (an actor is a kind of resource).
Throws:
UpDateError - if the current groupID is immutable.

setEorL_SecondaryGroupForUser

void setEorL_SecondaryGroupForUser(ImmutableGroupID[] _L)
                                   throws UpDateError
A secondary group is used by an Actor as rights user, to get complementary accesses to targets only when a current userID is set. So, when the actor is accessed as any target, the current userID of the rights user is activated with its secondary groups, and the secondary groups returned by this method are not activated. Unregister the previous groupIDs and set the new ones. Remove in the argument, the current group or GroupIDImpl.EMPTY_INSTANCE. Noop if the resource type contains or . Fire an event 'SecondaryGroups'.

Parameters:
_L - array of the secondary groupID attached to this actor. May be null.
Throws:
UpDateError - if the secondary groupIDs are immutable.

setEorACSBridgeTarget

void setEorACSBridgeTarget(Actor _target)
                           throws CreateError
Sets the another-ACS actor for which this actor is a bridge source.

Parameters:
_target - a reference on the bridge target. May be null.
Throws:
CreateError - if the target belongs to the same ACS, or if the target changing is not validated by the connected objects.

setIsRightProxy

void setIsRightProxy(boolean _b)
                     throws UpDateError
Noop if the resource type is or contains .

Parameters:
_b - true if this Actor may be a proxy in the access paths, that is, as rights user, it gets some rights to the other rights users which have an 'execute' right on it
Throws:
UpDateError - if the right proxy flag is immutable.