info.magnolia.cms.security
Class MgnlUser

java.lang.Object
  extended by info.magnolia.cms.security.AbstractUser
      extended by info.magnolia.cms.security.MgnlUser
All Implemented Interfaces:
User, Serializable

public class MgnlUser
extends AbstractUser
implements Serializable

This class wraps a user content object.

Version:
$Revision: 48411 $ ($Author: ochytil $)
See Also:
Serialized Form

Field Summary
 
Fields inherited from class info.magnolia.cms.security.AbstractUser
subject
 
Constructor Summary
protected MgnlUser(Content userNode)
           
 
Method Summary
 void addGroup(String groupName)
          Adds this user to a group.
 void addRole(String roleName)
          Adds a role to this user.
protected  String decodePassword(String encodedPassword)
           
 Collection<String> getAllGroups()
          Get all groups to which this user belongs to, collected recursively including.
 Collection<String> getAllRoles()
          Get all roles assigned to this user, collected recursively including groups/subgroups.
 int getFailedLoginAttempts()
           
 Collection<String> getGroups()
          Get groups that are directly assigned to the user.
 String getLanguage()
           
 String getName()
           
 String getPassword()
           
 String getProperty(String propertyName)
          Gets an arbitrary property from this user.
 Calendar getReleaseTime()
           
 Collection<String> getRoles()
          Get roles that are directly assigned to the user.
 Content getUserNode()
           
 boolean hasRole(String roleName)
          Is this user in a specified role?
 boolean inGroup(String groupName)
          Is this user in a specified role?
 boolean isEnabled()
          Returns false if the user was explicitly disabled.
 void removeGroup(String groupName)
          Remove a group.
 void removeRole(String roleName)
          Remove a role.
 void setEnabled(boolean enabled)
           
 void setFailedLoginAttempts(int failedAttempts)
           
 void setLastAccess()
          Update the "last access" timestamp.
 void setProperty(String propertyName, String value)
          Sets an arbitrary property for this user.
 void setReleaseTime(Calendar time)
           
 
Methods inherited from class info.magnolia.cms.security.AbstractUser
getSubject, setSubject
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

MgnlUser

protected MgnlUser(Content userNode)
Parameters:
userNode - the Content object representing this user
Method Detail

getFailedLoginAttempts

public int getFailedLoginAttempts()

setFailedLoginAttempts

public void setFailedLoginAttempts(int failedAttempts)

getReleaseTime

public Calendar getReleaseTime()

setReleaseTime

public void setReleaseTime(Calendar time)

inGroup

public boolean inGroup(String groupName)
Is this user in a specified role?

Specified by:
inGroup in interface User
Parameters:
groupName - the name of the role
Returns:
true if in role

removeGroup

public void removeGroup(String groupName)
                 throws UnsupportedOperationException
Remove a group. Implementation is optional

Specified by:
removeGroup in interface User
Parameters:
groupName -
Throws:
UnsupportedOperationException

addGroup

public void addGroup(String groupName)
              throws UnsupportedOperationException
Adds this user to a group. Implementation is optional

Specified by:
addGroup in interface User
Parameters:
groupName -
Throws:
UnsupportedOperationException

isEnabled

public boolean isEnabled()
Description copied from interface: User
Returns false if the user was explicitly disabled. Implementations should return true by default if the status is unknown.

Specified by:
isEnabled in interface User

setEnabled

public void setEnabled(boolean enabled)
Specified by:
setEnabled in interface User

hasRole

public boolean hasRole(String roleName)
Is this user in a specified role?

Specified by:
hasRole in interface User
Parameters:
roleName - the name of the role
Returns:
true if in role

removeRole

public void removeRole(String roleName)
Description copied from interface: User
Remove a role. Implementation is optional

Specified by:
removeRole in interface User

addRole

public void addRole(String roleName)
Description copied from interface: User
Adds a role to this user. Implementation is optional

Specified by:
addRole in interface User
Parameters:
roleName - the name of the role

getName

public String getName()
Specified by:
getName in interface User

getPassword

public String getPassword()
Specified by:
getPassword in interface User

decodePassword

protected String decodePassword(String encodedPassword)

getLanguage

public String getLanguage()
Specified by:
getLanguage in interface User

getProperty

public String getProperty(String propertyName)
Description copied from interface: User
Gets an arbitrary property from this user.

Specified by:
getProperty in interface User

setProperty

public void setProperty(String propertyName,
                        String value)
Description copied from interface: User
Sets an arbitrary property for this user. Values are currently Strings; we'd need some kind of abstract encoding mechanism to allow other types if needed.

Specified by:
setProperty in interface User

getGroups

public Collection<String> getGroups()
Description copied from interface: User
Get groups that are directly assigned to the user.

Specified by:
getGroups in interface User

getAllGroups

public Collection<String> getAllGroups()
Description copied from interface: User
Get all groups to which this user belongs to, collected recursively including.

Specified by:
getAllGroups in interface User

getRoles

public Collection<String> getRoles()
Description copied from interface: User
Get roles that are directly assigned to the user.

Specified by:
getRoles in interface User

getAllRoles

public Collection<String> getAllRoles()
Description copied from interface: User
Get all roles assigned to this user, collected recursively including groups/subgroups.

Specified by:
getAllRoles in interface User

setLastAccess

public void setLastAccess()
Update the "last access" timestamp.


getUserNode

public Content getUserNode()


Copyright © 2003-2012 Magnolia International Ltd.. All Rights Reserved.