Package org.apache.turbine.om.security
Class DefaultUserImpl
- java.lang.Object
-
- org.apache.turbine.om.security.DefaultUserImpl
-
- All Implemented Interfaces:
Serializable,EventListener,HttpSessionBindingListener,org.apache.fulcrum.security.entity.ExtendedUser,org.apache.fulcrum.security.entity.SecurityEntity,org.apache.fulcrum.security.entity.User,org.apache.fulcrum.security.model.turbine.entity.TurbineUser,org.apache.fulcrum.security.model.turbine.entity.TurbineUserGroupRoleEntity,TurbineUserDelegate,User
public class DefaultUserImpl extends Object implements User
This is the Default user implementation. It is a wrapper around a TurbineUser object- Version:
- $Id: TorqueUser.java 1199856 2011-11-09 17:06:04Z tv $
- Author:
- Thomas Vandahl
- See Also:
- Serialized Form
-
-
Field Summary
-
Fields inherited from interface org.apache.turbine.om.security.User
ACCESS_COUNTER, CONFIRM_DATA, CONFIRM_VALUE, CREATE_DATE, HAS_LOGGED_IN, LAST_LOGIN, SESSION_ACCESS_COUNTER, SESSION_KEY
-
-
Constructor Summary
Constructors Constructor Description DefaultUserImpl(org.apache.fulcrum.security.model.turbine.entity.TurbineUser user)Constructor
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddUserGroupRole(org.apache.fulcrum.security.model.turbine.entity.TurbineUserGroupRole userGroupRole)Add a User/Group/Role relation to this entityintgetAccessCounter()Gets the access counter for a user from perm storage.intgetAccessCounterForSession()Gets the access counter for a user during a session.StringgetConfirmed()Returns the confirm value of the userDategetCreateDate()Returns the creation date of the userStringgetEmail()Returns the email address for this user.StringgetFirstName()Returns the first name for this user.ObjectgetId()Get the Id of the SecurityEntity.DategetLastAccessDate()Gets the last access date for this User.DategetLastLogin()Returns the date of the last login of the userStringgetLastName()Returns the last name for this user.StringgetName()Get the Name of the SecurityEntity.byte[]getObjectdata()Returns the value of the objectdata for this user.StringgetPassword()Returns the user's password.ObjectgetPerm(String name)Get an object from permanent storage.ObjectgetPerm(String name, Object def)Get an object from permanent storage; return default if value is null.Map<String,Object>getPermStorage()Returns the permanent storage.ObjectgetTemp(String name)Get an object from temporary storage.ObjectgetTemp(String name, Object def)Get an object from temporary storage; return default if value is null.Map<String,Object>getTempStorage()Returns the temporary storage.org.apache.fulcrum.security.model.turbine.entity.TurbineUsergetUserDelegate()Get the delegated user<T extends org.apache.fulcrum.security.model.turbine.entity.TurbineUserGroupRole>
Set<T>getUserGroupRoleSet()Get the User/Group/Role set associated with this entitybooleanhasLoggedIn()The user is considered logged in if they have not timed out.voidincrementAccessCounter()Increments the permanent hit counter for the user.voidincrementAccessCounterForSession()Increments the session hit counter for the user.booleanisConfirmed()This method reports whether or not the user has been confirmed in the system by checking the User.CONFIRM_VALUE column in the users record to see if it is equal to User.CONFIRM_DATA.ObjectremoveTemp(String name)Remove an object from temporary storage and return the object.voidremoveUserGroupRole(org.apache.fulcrum.security.model.turbine.entity.TurbineUserGroupRole userGroupRole)Remove a User/Group/Role relation from this entityvoidsetAccessCounter(int cnt)Sets the access counter for a user, saved in perm storage.voidsetAccessCounterForSession(int cnt)Sets the session access counter for a user, saved in temp storage.voidsetConfirmed(String confirm)Sets the new confirm value of the uservoidsetCreateDate(Date createDate)Sets the new creation date of the uservoidsetEmail(String address)Sets the email address.voidsetFirstName(String firstName)Sets the first name for this user.voidsetHasLoggedIn(Boolean value)This sets whether or not someone has logged in.voidsetId(Object id)Sets the Id of the SecurityEntity.voidsetLastAccessDate()Sets the last access date for this User.voidsetLastLogin(Date lastLogin)Sets the new date of the last login of the uservoidsetLastName(String lastName)Sets the last name for this user.voidsetName(String name)Sets the Name of the SecurityEntity.voidsetObjectdata(byte[] objectdata)Sets the value of the objectdata for the uservoidsetPassword(String password)Set password.voidsetPerm(String name, Object value)Put an object into permanent storage.voidsetPermStorage(Map<String,Object> permStorage)This should only be used in the case where we want to make the data persistent.voidsetTemp(String name, Object value)Put an object into temporary storage.voidsetTempStorage(Map<String,Object> tempStorage)This should only be used in the case where we want to save the data to the database.voidsetUserDelegate(org.apache.fulcrum.security.model.turbine.entity.TurbineUser userDelegate)Set the delegated user<T extends org.apache.fulcrum.security.model.turbine.entity.TurbineUserGroupRole>
voidsetUserGroupRoleSet(Set<T> userGroupRoleSet)Set the User/Group/Role set associated with this entityvoidupdateLastLogin()Updates the last login date in the database.voidvalueBound(HttpSessionBindingEvent hsbe)Implement this method if you wish to be notified when the User has been Bound to the session.voidvalueUnbound(HttpSessionBindingEvent hsbe)Implement this method if you wish to be notified when the User has been Unbound from the session.
-
-
-
Constructor Detail
-
DefaultUserImpl
public DefaultUserImpl(org.apache.fulcrum.security.model.turbine.entity.TurbineUser user)
Constructor- Parameters:
user- the user object to wrap
-
-
Method Detail
-
valueBound
public void valueBound(HttpSessionBindingEvent hsbe)
Implement this method if you wish to be notified when the User has been Bound to the session.- Specified by:
valueBoundin interfaceHttpSessionBindingListener- Parameters:
hsbe- Indication of value/session binding.
-
valueUnbound
public void valueUnbound(HttpSessionBindingEvent hsbe)
Implement this method if you wish to be notified when the User has been Unbound from the session.- Specified by:
valueUnboundin interfaceHttpSessionBindingListener- Parameters:
hsbe- Indication of value/session unbinding.
-
getName
public String getName()
Get the Name of the SecurityEntity.- Specified by:
getNamein interfaceorg.apache.fulcrum.security.entity.SecurityEntity- Returns:
- The Name of the SecurityEntity.
-
setName
public void setName(String name)
Sets the Name of the SecurityEntity.- Specified by:
setNamein interfaceorg.apache.fulcrum.security.entity.SecurityEntity- Parameters:
name- Name of the SecurityEntity.
-
getId
public Object getId()
Get the Id of the SecurityEntity.- Specified by:
getIdin interfaceorg.apache.fulcrum.security.entity.SecurityEntity- Returns:
- The Id of the SecurityEntity.
-
setId
public void setId(Object id)
Sets the Id of the SecurityEntity.- Specified by:
setIdin interfaceorg.apache.fulcrum.security.entity.SecurityEntity- Parameters:
id- The new Id of the SecurityEntity
-
getPassword
public String getPassword()
Returns the user's password. This method should not be used by the application directly, because it's meaning depends upon the implementation of UserManager that manages this particular user object. Some implementations will use this attribute for storing a password encrypted in some way, other will not use it at all, when user entered password is presented to some external authority (like NT domain controller) to validate it. See alsoUserManager.authenticate(User,String).- Specified by:
getPasswordin interfaceorg.apache.fulcrum.security.entity.User- Returns:
- A String with the password for the user.
-
setPassword
public void setPassword(String password)
Set password. Application should not use this method directly, seegetPassword(). See alsoUserManager.changePassword(User,String,String).- Specified by:
setPasswordin interfaceorg.apache.fulcrum.security.entity.User- Parameters:
password- The new password.
-
getFirstName
public String getFirstName()
Returns the first name for this user.- Specified by:
getFirstNamein interfaceorg.apache.fulcrum.security.entity.ExtendedUser- Returns:
- A String with the user's first name.
-
setFirstName
public void setFirstName(String firstName)
Sets the first name for this user.- Specified by:
setFirstNamein interfaceorg.apache.fulcrum.security.entity.ExtendedUser- Parameters:
firstName- User's first name.
-
getLastName
public String getLastName()
Returns the last name for this user.- Specified by:
getLastNamein interfaceorg.apache.fulcrum.security.entity.ExtendedUser- Returns:
- A String with the user's last name.
-
setLastName
public void setLastName(String lastName)
Sets the last name for this user.- Specified by:
setLastNamein interfaceorg.apache.fulcrum.security.entity.ExtendedUser- Parameters:
lastName- User's last name.
-
getEmail
public String getEmail()
Returns the email address for this user.- Specified by:
getEmailin interfaceorg.apache.fulcrum.security.entity.ExtendedUser- Returns:
- A String with the user's email address.
-
setEmail
public void setEmail(String address)
Sets the email address.- Specified by:
setEmailin interfaceorg.apache.fulcrum.security.entity.ExtendedUser- Parameters:
address- The email address.
-
getObjectdata
public byte[] getObjectdata()
Returns the value of the objectdata for this user. Objectdata is a storage area used to store the permanent storage table from the User object.- Specified by:
getObjectdatain interfaceorg.apache.fulcrum.security.entity.ExtendedUser- Returns:
- The bytes in the objectdata for this user
-
setObjectdata
public void setObjectdata(byte[] objectdata)
Sets the value of the objectdata for the user- Specified by:
setObjectdatain interfaceorg.apache.fulcrum.security.entity.ExtendedUser- Parameters:
objectdata- The new permanent storage for the user
-
getUserGroupRoleSet
public <T extends org.apache.fulcrum.security.model.turbine.entity.TurbineUserGroupRole> Set<T> getUserGroupRoleSet() throws org.apache.fulcrum.security.util.DataBackendException
Get the User/Group/Role set associated with this entity- Specified by:
getUserGroupRoleSetin interfaceorg.apache.fulcrum.security.model.turbine.entity.TurbineUserGroupRoleEntity- Returns:
- a set of User/Group/Role relations
- Throws:
org.apache.fulcrum.security.util.DataBackendException- if there was an error accessing the data backend.
-
setUserGroupRoleSet
public <T extends org.apache.fulcrum.security.model.turbine.entity.TurbineUserGroupRole> void setUserGroupRoleSet(Set<T> userGroupRoleSet)
Set the User/Group/Role set associated with this entity- Specified by:
setUserGroupRoleSetin interfaceorg.apache.fulcrum.security.model.turbine.entity.TurbineUserGroupRoleEntity- Parameters:
userGroupRoleSet- a set of User/Group/Role relations
-
addUserGroupRole
public void addUserGroupRole(org.apache.fulcrum.security.model.turbine.entity.TurbineUserGroupRole userGroupRole) throws org.apache.fulcrum.security.util.DataBackendException
Add a User/Group/Role relation to this entity- Specified by:
addUserGroupRolein interfaceorg.apache.fulcrum.security.model.turbine.entity.TurbineUserGroupRoleEntity- Parameters:
userGroupRole- a User/Group/Role relation to add- Throws:
org.apache.fulcrum.security.util.DataBackendException- if there was an error accessing the data backend.
-
removeUserGroupRole
public void removeUserGroupRole(org.apache.fulcrum.security.model.turbine.entity.TurbineUserGroupRole userGroupRole) throws org.apache.fulcrum.security.util.DataBackendException
Remove a User/Group/Role relation from this entity- Specified by:
removeUserGroupRolein interfaceorg.apache.fulcrum.security.model.turbine.entity.TurbineUserGroupRoleEntity- Parameters:
userGroupRole- a User/Group/Role relation to remove- Throws:
org.apache.fulcrum.security.util.DataBackendException- if there was an error accessing the data backend.
-
getAccessCounter
public int getAccessCounter()
Gets the access counter for a user from perm storage.- Specified by:
getAccessCounterin interfaceUser- Returns:
- The access counter for the user.
-
getAccessCounterForSession
public int getAccessCounterForSession()
Gets the access counter for a user during a session.- Specified by:
getAccessCounterForSessionin interfaceUser- Returns:
- The access counter for the user for the session.
-
incrementAccessCounter
public void incrementAccessCounter()
Increments the permanent hit counter for the user.- Specified by:
incrementAccessCounterin interfaceUser
-
incrementAccessCounterForSession
public void incrementAccessCounterForSession()
Increments the session hit counter for the user.- Specified by:
incrementAccessCounterForSessionin interfaceUser
-
setAccessCounter
public void setAccessCounter(int cnt)
Sets the access counter for a user, saved in perm storage.- Specified by:
setAccessCounterin interfaceUser- Parameters:
cnt- The new count.
-
setAccessCounterForSession
public void setAccessCounterForSession(int cnt)
Sets the session access counter for a user, saved in temp storage.- Specified by:
setAccessCounterForSessionin interfaceUser- Parameters:
cnt- The new count.
-
getLastAccessDate
public Date getLastAccessDate()
Gets the last access date for this User. This is the last time that the user object was referenced.- Specified by:
getLastAccessDatein interfaceUser- Returns:
- A Java Date with the last access date for the user.
-
setLastAccessDate
public void setLastAccessDate()
Sets the last access date for this User. This is the last time that the user object was referenced.- Specified by:
setLastAccessDatein interfaceUser
-
getPermStorage
public Map<String,Object> getPermStorage()
Returns the permanent storage. This is implemented as a Map- Specified by:
getPermStoragein interfaceUser- Returns:
- A Map.
-
setPermStorage
public void setPermStorage(Map<String,Object> permStorage)
This should only be used in the case where we want to make the data persistent.- Specified by:
setPermStoragein interfaceUser- Parameters:
permStorage- A Map.
-
getTempStorage
public Map<String,Object> getTempStorage()
Returns the temporary storage. This is implemented as a Map- Specified by:
getTempStoragein interfaceUser- Returns:
- A Map.
-
setTempStorage
public void setTempStorage(Map<String,Object> tempStorage)
This should only be used in the case where we want to save the data to the database.- Specified by:
setTempStoragein interfaceUser- Parameters:
tempStorage- A Map.
-
getPerm
public Object getPerm(String name, Object def)
Get an object from permanent storage; return default if value is null.
-
getTemp
public Object getTemp(String name, Object def)
Get an object from temporary storage; return default if value is null.
-
removeTemp
public Object removeTemp(String name)
Remove an object from temporary storage and return the object.- Specified by:
removeTempin interfaceUser- Parameters:
name- The name of the object to remove.- Returns:
- An Object.
-
getConfirmed
public String getConfirmed()
Returns the confirm value of the user- Specified by:
getConfirmedin interfaceUser- Returns:
- The confirm value of the user
-
setConfirmed
public void setConfirmed(String confirm)
Sets the new confirm value of the user- Specified by:
setConfirmedin interfaceUser- Parameters:
confirm- The new confirm value of the user
-
getCreateDate
public Date getCreateDate()
Returns the creation date of the user- Specified by:
getCreateDatein interfaceUser- Returns:
- The creation date of the user
-
setCreateDate
public void setCreateDate(Date createDate)
Sets the new creation date of the user- Specified by:
setCreateDatein interfaceUser- Parameters:
createDate- The new creation date of the user
-
getLastLogin
public Date getLastLogin()
Returns the date of the last login of the user- Specified by:
getLastLoginin interfaceUser- Returns:
- The date of the last login of the user
-
setLastLogin
public void setLastLogin(Date lastLogin)
Sets the new date of the last login of the user- Specified by:
setLastLoginin interfaceUser- Parameters:
lastLogin- The new the date of the last login of the user
-
hasLoggedIn
public boolean hasLoggedIn()
The user is considered logged in if they have not timed out.- Specified by:
hasLoggedInin interfaceUser- Returns:
- Whether the user has logged in.
-
setHasLoggedIn
public void setHasLoggedIn(Boolean value)
This sets whether or not someone has logged in. hasLoggedIn() returns this value.- Specified by:
setHasLoggedInin interfaceUser- Parameters:
value- Whether someone has logged in or not.
-
isConfirmed
public boolean isConfirmed()
This method reports whether or not the user has been confirmed in the system by checking the User.CONFIRM_VALUE column in the users record to see if it is equal to User.CONFIRM_DATA.- Specified by:
isConfirmedin interfaceUser- Returns:
- True if the user has been confirmed.
-
updateLastLogin
public void updateLastLogin() throws Exception
Updates the last login date in the database.- Specified by:
updateLastLoginin interfaceUser- Throws:
Exception- A generic exception.
-
getUserDelegate
public org.apache.fulcrum.security.model.turbine.entity.TurbineUser getUserDelegate()
Description copied from interface:TurbineUserDelegateGet the delegated user- Specified by:
getUserDelegatein interfaceTurbineUserDelegate- Returns:
- the userDelegate
-
setUserDelegate
public void setUserDelegate(org.apache.fulcrum.security.model.turbine.entity.TurbineUser userDelegate)
Description copied from interface:TurbineUserDelegateSet the delegated user- Specified by:
setUserDelegatein interfaceTurbineUserDelegate- Parameters:
userDelegate- the userDelegate to set
-
-