org.olat.user
Class UserManager

java.lang.Object
  extended by org.olat.user.UserManager
Direct Known Subclasses:
UserManagerImpl

public abstract class UserManager
extends java.lang.Object

Description:

The user manager provides methods to handle user objects. This includes some search methods and methods for the users property handling.

Most search methods are not implemented on the user manager but rather on the security manager from the base security package. See ManagerFactory.getManager()

Initial Date: Jun 23, 2004

Author:
Florian Gnaegi, frentix GmbH, http://www.frentix.com

Method Summary
abstract  User createAndPersistUser(java.lang.String firstName, java.lang.String lastName, java.lang.String email)
           
abstract  User createUser(java.lang.String firstName, java.lang.String lastName, java.lang.String eMail)
          Create a transient user object.
abstract  void deleteUserProperties(User user)
          Delete all user-properties which are deletable.
abstract  Identity findIdentityByEmail(java.lang.String email)
          Find the identity (and the user) that match the given email address.
abstract  User findUserByEmail(java.lang.String email)
          Deprecated. use ManagerFactory.getManager().getIdentitiesByPowerSearch instead
 java.util.List<UserPropertyHandler> getAllUserPropertyHandlers()
          added to be usable by user-bulkChange
static UserManager getInstance()
          Factory method: Loads the user manager that is configured in the spring config
 Translator getPropertyHandlerTranslator(Translator fallBack)
           
abstract  java.lang.String getUserCharset(Identity identity)
          Normaly returns the stringValue of the user's charset property.
 java.util.List<UserPropertyHandler> getUserPropertyHandlersFor(java.lang.String usageIdentifyer, boolean isAdministrativeUser)
           
static boolean isLoginOnBlacklist(java.lang.String login)
          Check wether a login is on the blacklist.
 boolean isMandatoryUserProperty(java.lang.String usageIdentifyer, UserPropertyHandler propertyHandler)
           
 boolean isUserViewReadOnly(java.lang.String usageIdentifyer, UserPropertyHandler propertyHandler)
           
abstract  User loadUserByKey(java.lang.Long key)
          Find user by its key (database primary key)
abstract  void saveUser(User user)
           
abstract  void setUserCharset(Identity identity, java.lang.String charset)
          Saves or updates the stringValue of the user's charset property
 void setUserNameAndPasswordSyntaxChecker(UserNameAndPasswordSyntaxChecker userNameAndPasswordSyntaxChecker)
          Spring setter
 void setUserPropertiesConfig(UserPropertiesConfig userPropertiesConfig)
          Spring setter
 boolean syntaxCheckOlatLogin(java.lang.String login)
          Check if the login matches.
 boolean syntaxCheckOlatPassword(java.lang.String password)
          Validates an OLAT password on a syntactical level.
abstract  void updateUser(User usr)
          Updates a user in the database.
abstract  boolean updateUserFromIdentity(Identity identity)
          Updates the user object for a given identity
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

getInstance

public static final UserManager getInstance()
Factory method: Loads the user manager that is configured in the spring config

Returns:
Instance of a UserManager

createUser

public abstract User createUser(java.lang.String firstName,
                                java.lang.String lastName,
                                java.lang.String eMail)
Create a transient user object. Use SaveUser to persist the object or use the createAndPersistUser method.

Parameters:
firstName -
lastName -
eMail -
Returns:
New user instance

createAndPersistUser

public abstract User createAndPersistUser(java.lang.String firstName,
                                          java.lang.String lastName,
                                          java.lang.String email)
Parameters:
firstName -
lastName -
email -
Returns:
a persistant User.

findIdentityByEmail

public abstract Identity findIdentityByEmail(java.lang.String email)
Find the identity (and the user) that match the given email address. The match is an exact match

Parameters:
email - The email search parameter
Returns:
The identity found for this email or null if not found

findUserByEmail

public abstract User findUserByEmail(java.lang.String email)
Deprecated. use ManagerFactory.getManager().getIdentitiesByPowerSearch instead

Find user by its email

Parameters:
email - that has to be searched
Returns:
User if the user has been found or null if not found

loadUserByKey

public abstract User loadUserByKey(java.lang.Long key)
Find user by its key (database primary key)

Parameters:
key - the primary key
Returns:
User if the user has been found or null if not found

updateUser

public abstract void updateUser(User usr)
Updates a user in the database.

Parameters:
usr - The user object to be updated

saveUser

public abstract void saveUser(User user)
Parameters:
user - The user to be saved

updateUserFromIdentity

public abstract boolean updateUserFromIdentity(Identity identity)
Updates the user object for a given identity

Parameters:
identity -
Returns:
true if successful.

setUserCharset

public abstract void setUserCharset(Identity identity,
                                    java.lang.String charset)
Saves or updates the stringValue of the user's charset property

Parameters:
identity -
charset -

getUserCharset

public abstract java.lang.String getUserCharset(Identity identity)
Normaly returns the stringValue of the user's charset property. If there is no charset property or it's not supported the default value is returned.

Parameters:
identity -
Returns:
String charset

syntaxCheckOlatPassword

public boolean syntaxCheckOlatPassword(java.lang.String password)
Validates an OLAT password on a syntactical level.

Parameters:
password - The passwort to validate
Returns:
true if it is valid, false otherwhise

syntaxCheckOlatLogin

public boolean syntaxCheckOlatLogin(java.lang.String login)
Check if the login matches.

Parameters:
login -
Returns:
True if synatx is ok.

isLoginOnBlacklist

public static boolean isLoginOnBlacklist(java.lang.String login)
Check wether a login is on the blacklist.

Parameters:
login -
Returns:
True if login is in blacklist

deleteUserProperties

public abstract void deleteUserProperties(User user)
Delete all user-properties which are deletable.

Parameters:
user -

getUserPropertyHandlersFor

public java.util.List<UserPropertyHandler> getUserPropertyHandlersFor(java.lang.String usageIdentifyer,
                                                                      boolean isAdministrativeUser)

getPropertyHandlerTranslator

public Translator getPropertyHandlerTranslator(Translator fallBack)

getAllUserPropertyHandlers

public java.util.List<UserPropertyHandler> getAllUserPropertyHandlers()
added to be usable by user-bulkChange

Returns:

isMandatoryUserProperty

public boolean isMandatoryUserProperty(java.lang.String usageIdentifyer,
                                       UserPropertyHandler propertyHandler)

isUserViewReadOnly

public boolean isUserViewReadOnly(java.lang.String usageIdentifyer,
                                  UserPropertyHandler propertyHandler)

setUserNameAndPasswordSyntaxChecker

public void setUserNameAndPasswordSyntaxChecker(UserNameAndPasswordSyntaxChecker userNameAndPasswordSyntaxChecker)
Spring setter

Parameters:
userNameAndPasswordSyntaxChecker -

setUserPropertiesConfig

public void setUserPropertiesConfig(UserPropertiesConfig userPropertiesConfig)
Spring setter

Parameters:
userPropertiesConfig -