Package org.apache.guacamole.net.auth
Class DelegatingUser
java.lang.Object
org.apache.guacamole.net.auth.DelegatingUser
- All Implemented Interfaces:
Attributes
,Disableable
,Identifiable
,Permissions
,ReadableAttributes
,User
User implementation which simply delegates all function calls to an
underlying User.
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.apache.guacamole.net.auth.User
User.Attribute
-
Constructor Summary
ConstructorsConstructorDescriptionDelegatingUser
(User user) Wraps the given User such that all function calls against this DelegatingUser will be delegated to it. -
Method Summary
Modifier and TypeMethodDescriptionReturns all permissions given to this object regarding currently-active connections.Returns all attributes associated with this object.Returns all connection group permissions given to this object.Returns all connection permissions given to this object.protected User
Returns the underlying User wrapped by this DelegatingUser.Returns a read-only view of all permissions granted to this user.List
<? extends ActivityRecord> Deprecated.Returns the unique identifier assigned to this object.Returns the date and time that this user was last active.Returns this user's password.Returns all sharing profile permissions given to this object.Returns all system-level permissions given to this object.Returns all user group permissions given to this object.Returns a set of all readable user groups of which this user is a member.Returns an ActivityRecordSet containing ActivityRecords representing the login history for this user, including any active sessions.Returns all user permissions given to this object.boolean
Returns true if this object is disabled, otherwise false.void
setAttributes
(Map<String, String> attributes) Sets the given attributes.void
setDisabled
(boolean disabled) Set the disabled status of this object to the boolean value provided, true if the object should be disabled, otherwise false.void
setIdentifier
(String identifier) Sets the identifier assigned to this object.void
setPassword
(String password) Sets this user's password.
-
Constructor Details
-
DelegatingUser
Wraps the given User such that all function calls against this DelegatingUser will be delegated to it.- Parameters:
user
- The User to wrap.
-
-
Method Details
-
getDelegateUser
Returns the underlying User wrapped by this DelegatingUser.- Returns:
- The User wrapped by this DelegatingUser.
-
getIdentifier
Description copied from interface:Identifiable
Returns the unique identifier assigned to this object. All identifiable objects must have a deterministic, unique identifier which may not be null.- Specified by:
getIdentifier
in interfaceIdentifiable
- Returns:
- The unique identifier assigned to this object, which may not be null.
-
setIdentifier
Description copied from interface:Identifiable
Sets the identifier assigned to this object.- Specified by:
setIdentifier
in interfaceIdentifiable
- Parameters:
identifier
- The identifier to assign.
-
getPassword
Description copied from interface:User
Returns this user's password. Note that the password returned may be hashed or completely arbitrary.- Specified by:
getPassword
in interfaceUser
- Returns:
- A String which may (or may not) be the user's password.
-
setPassword
Description copied from interface:User
Sets this user's password. Note that while this function is guaranteed to change the password of this User object, there is no guarantee that getPassword() will return the value given to setPassword().- Specified by:
setPassword
in interfaceUser
- Parameters:
password
- The password to set.
-
isDisabled
public boolean isDisabled()Description copied from interface:Disableable
Returns true if this object is disabled, otherwise false.- Specified by:
isDisabled
in interfaceDisableable
- Returns:
- True if this object is disabled, otherwise false.
-
setDisabled
public void setDisabled(boolean disabled) Description copied from interface:Disableable
Set the disabled status of this object to the boolean value provided, true if the object should be disabled, otherwise false.- Specified by:
setDisabled
in interfaceDisableable
- Parameters:
disabled
- True if the object should be disabled, otherwise false.
-
getAttributes
Description copied from interface:ReadableAttributes
Returns all attributes associated with this object. The returned map may not be modifiable.- Specified by:
getAttributes
in interfaceReadableAttributes
- Returns:
- A map of all attribute identifiers to their corresponding values, for all attributes associated with this object, which may not be modifiable.
-
setAttributes
Description copied from interface:Attributes
Sets the given attributes. If an attribute within the map is not supported, it will simply be dropped. Any attributes not within the given map will be left untouched. Attributes which are not declared within the associated UserContext MUST NOT be submitted, but other extensions may manipulate the declared attributes through decorate() and redecorate(). Implementations may optionally allow storage of unsupported attributes. Extensions which rely on other extensions to store their attribute values should verify that such storage is supported by first testing that the attribute value is retrievable via getAttributes() after being set.- Specified by:
setAttributes
in interfaceAttributes
- Parameters:
attributes
- A map of all attribute identifiers to their corresponding values.
-
getLastActive
Description copied from interface:User
Returns the date and time that this user was last active. If the user was never active, the time that the user was last active is unknown, or this information is not visible to the current user, this may be null.- Specified by:
getLastActive
in interfaceUser
- Returns:
- The date and time this user was last active, or null if this information is unavailable or inapplicable.
-
getHistory
@Deprecated public List<? extends ActivityRecord> getHistory() throws org.apache.guacamole.GuacamoleExceptionDeprecated.Description copied from interface:User
Returns a list of ActivityRecords representing the login history of this user, including any active sessions. ActivityRecords in this list will be sorted in descending order of end time (active sessions are first), and then in descending order of start time (newer sessions are first). If user login history is not implemented this method should throw GuacamoleUnsupportedException.- Specified by:
getHistory
in interfaceUser
- Returns:
- A list of ActivityRecords representing the login history of this User.
- Throws:
org.apache.guacamole.GuacamoleException
- If history tracking is not implemented, if an error occurs while reading the history of this user, or if permission is denied.
-
getUserHistory
public ActivityRecordSet<ActivityRecord> getUserHistory() throws org.apache.guacamole.GuacamoleExceptionDescription copied from interface:User
Returns an ActivityRecordSet containing ActivityRecords representing the login history for this user, including any active sessions. ActivityRecords in this list will be sorted in descending order of end time (active sessions are first), and then in descending order of start time (newer sessions are first). If login history tracking is not implemented, or is only implemented using the deprecatedUser.getHistory()
method, this method should throw GuacamoleUnsupportedException.- Specified by:
getUserHistory
in interfaceUser
- Returns:
- An ActivityRecordSet containing ActivityRecords representing the login history for this user.
- Throws:
org.apache.guacamole.GuacamoleException
- If history tracking is not implemented, if an error occurs while reading the history of this user, or if permission is denied.
-
getSystemPermissions
Description copied from interface:Permissions
Returns all system-level permissions given to this object.- Specified by:
getSystemPermissions
in interfacePermissions
- Returns:
- A SystemPermissionSet of all system-level permissions granted to this object.
- Throws:
org.apache.guacamole.GuacamoleException
- If an error occurs while retrieving permissions, or if reading all permissions is not allowed.
-
getConnectionPermissions
public ObjectPermissionSet getConnectionPermissions() throws org.apache.guacamole.GuacamoleExceptionDescription copied from interface:Permissions
Returns all connection permissions given to this object.- Specified by:
getConnectionPermissions
in interfacePermissions
- Returns:
- An ObjectPermissionSet of all connection permissions granted to this object.
- Throws:
org.apache.guacamole.GuacamoleException
- If an error occurs while retrieving permissions, or if reading all permissions is not allowed.
-
getConnectionGroupPermissions
public ObjectPermissionSet getConnectionGroupPermissions() throws org.apache.guacamole.GuacamoleExceptionDescription copied from interface:Permissions
Returns all connection group permissions given to this object.- Specified by:
getConnectionGroupPermissions
in interfacePermissions
- Returns:
- An ObjectPermissionSet of all connection group permissions granted to this object.
- Throws:
org.apache.guacamole.GuacamoleException
- If an error occurs while retrieving permissions, or if reading all permissions is not allowed.
-
getSharingProfilePermissions
public ObjectPermissionSet getSharingProfilePermissions() throws org.apache.guacamole.GuacamoleExceptionDescription copied from interface:Permissions
Returns all sharing profile permissions given to this object.- Specified by:
getSharingProfilePermissions
in interfacePermissions
- Returns:
- An ObjectPermissionSet of all sharing profile permissions granted to this object.
- Throws:
org.apache.guacamole.GuacamoleException
- If an error occurs while retrieving permissions, or if reading all permissions is not allowed.
-
getActiveConnectionPermissions
public ObjectPermissionSet getActiveConnectionPermissions() throws org.apache.guacamole.GuacamoleExceptionDescription copied from interface:Permissions
Returns all permissions given to this object regarding currently-active connections.- Specified by:
getActiveConnectionPermissions
in interfacePermissions
- Returns:
- An ObjectPermissionSet of all active connection permissions granted to this object.
- Throws:
org.apache.guacamole.GuacamoleException
- If an error occurs while retrieving permissions, or if reading all permissions is not allowed.
-
getUserPermissions
Description copied from interface:Permissions
Returns all user permissions given to this object.- Specified by:
getUserPermissions
in interfacePermissions
- Returns:
- An ObjectPermissionSet of all user permissions granted to this object.
- Throws:
org.apache.guacamole.GuacamoleException
- If an error occurs while retrieving permissions, or if reading all permissions is not allowed.
-
getUserGroupPermissions
Description copied from interface:Permissions
Returns all user group permissions given to this object.- Specified by:
getUserGroupPermissions
in interfacePermissions
- Returns:
- An ObjectPermissionSet of all user group permissions granted to this object.
- Throws:
org.apache.guacamole.GuacamoleException
- If an error occurs while retrieving permissions, or if reading all permissions is not allowed.
-
getUserGroups
Description copied from interface:User
Returns a set of all readable user groups of which this user is a member. If permission is granted for the current user to modify the membership of this user, then the returned set will be mutable, and any such modifications should be made through changes to the returned set.- Specified by:
getUserGroups
in interfaceUser
- Returns:
- The set of all readable user groups of which this user is a member.
- Throws:
org.apache.guacamole.GuacamoleException
- If an error occurs while retrieving the user groups.
-
getEffectivePermissions
Description copied from interface:User
Returns a read-only view of all permissions granted to this user. The exact semantics of what permissions are granted are up to the implementation, and the permissions within this view may be implied, derived dynamically, inherited through multiple levels of group membership, etc.- Specified by:
getEffectivePermissions
in interfaceUser
- Returns:
- A read-only view of the permissions which are granted to this user.
- Throws:
org.apache.guacamole.GuacamoleException
- If an error occurs while retrieving permissions, or if reading all permissions is not allowed.
-