org.apache.james.userrepository
Class DefaultUsersJdbcRepository
java.lang.Object
org.apache.avalon.framework.logger.AbstractLogEnabled
org.apache.james.impl.jamesuser.AbstractUsersRepository
org.apache.james.userrepository.AbstractJdbcUsersRepository
org.apache.james.userrepository.DefaultUsersJdbcRepository
- All Implemented Interfaces:
- org.apache.avalon.framework.activity.Initializable, org.apache.avalon.framework.configuration.Configurable, org.apache.avalon.framework.logger.LogEnabled, org.apache.avalon.framework.service.Serviceable, UsersRepository, VirtualUserTable, JamesUsersRepository
public class DefaultUsersJdbcRepository
- extends AbstractJdbcUsersRepository
A Jdbc-backed UserRepository which handles User instances
of the DefaultUser class.
Although this repository can handle subclasses of DefaultUser,
like DefaultJamesUser, only properties from
the DefaultUser class are persisted.
TODO Please note that default configuration uses JamesUsersJdbcRepository
instead of this class. So we could also delete this implementation.
|
Method Summary |
boolean |
addUser(java.lang.String username,
java.lang.String password)
Adds a user to the repository with the specified password |
protected User |
readUserFromResultSet(java.sql.ResultSet rsUsers)
Reads properties for a User from an open ResultSet. |
protected void |
setUserForInsertStatement(User user,
java.sql.PreparedStatement userInsert)
Set parameters of a PreparedStatement object with property values from a
User instance. |
protected void |
setUserForUpdateStatement(User user,
java.sql.PreparedStatement userUpdate)
Set parameters of a PreparedStatement object with property values from a
User instance. |
| Methods inherited from class org.apache.james.userrepository.AbstractJdbcUsersRepository |
configure, contains, containsCaseInsensitive, countUsers, doAddUser, doRemoveUser, doUpdateUser, getRealName, getUserByName, getUserByName, getUserByNameCaseInsensitive, getUserByNameIterating, initialize, list, listAllUsers, listUserNames, removeUser, service, test |
| Methods inherited from class org.apache.avalon.framework.logger.AbstractLogEnabled |
enableLogging, getLogger, setupLogger, setupLogger, setupLogger |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
DefaultUsersJdbcRepository
public DefaultUsersJdbcRepository()
readUserFromResultSet
protected User readUserFromResultSet(java.sql.ResultSet rsUsers)
throws java.sql.SQLException
- Description copied from class:
AbstractJdbcUsersRepository
- Reads properties for a User from an open ResultSet. Subclass
implementations of this method must have knowledge of the fields
presented by the "select" and "selectByLowercaseName" SQL statements.
These implemenations may generate a subclass-specific User instance.
- Specified by:
readUserFromResultSet in class AbstractJdbcUsersRepository
- Parameters:
rsUsers - A ResultSet with a User record in the current row.
- Returns:
- A User instance
- Throws:
java.sql.SQLException - if an exception occurs reading from the ResultSet- See Also:
AbstractJdbcUsersRepository.readUserFromResultSet(java.sql.ResultSet)
setUserForInsertStatement
protected void setUserForInsertStatement(User user,
java.sql.PreparedStatement userInsert)
throws java.sql.SQLException
- Description copied from class:
AbstractJdbcUsersRepository
- Set parameters of a PreparedStatement object with property values from a
User instance. Implementations of this method have knowledge of the
parameter ordering of the "insert" SQL statement definition.
- Specified by:
setUserForInsertStatement in class AbstractJdbcUsersRepository
- Parameters:
user - a User instance, which should be an implementation class which
is handled by this Repostory implementation.userInsert - a PreparedStatement initialised with SQL taken from the
"insert" SQL definition.
- Throws:
java.sql.SQLException - if an exception occurs while setting parameter values.- See Also:
AbstractJdbcUsersRepository.setUserForInsertStatement(org.apache.james.api.user.User, java.sql.PreparedStatement)
setUserForUpdateStatement
protected void setUserForUpdateStatement(User user,
java.sql.PreparedStatement userUpdate)
throws java.sql.SQLException
- Description copied from class:
AbstractJdbcUsersRepository
- Set parameters of a PreparedStatement object with property values from a
User instance. Implementations of this method have knowledge of the
parameter ordering of the "update" SQL statement definition.
- Specified by:
setUserForUpdateStatement in class AbstractJdbcUsersRepository
- Parameters:
user - a User instance, which should be an implementation class which
is handled by this Repostory implementation.userUpdate - a PreparedStatement initialised with SQL taken from the
"update" SQL definition.
- Throws:
java.sql.SQLException - if an exception occurs while setting parameter values.- See Also:
AbstractJdbcUsersRepository.setUserForUpdateStatement(org.apache.james.api.user.User, java.sql.PreparedStatement)
addUser
public boolean addUser(java.lang.String username,
java.lang.String password)
- Description copied from interface:
UsersRepository
- Adds a user to the repository with the specified password
- Parameters:
username - the username of the user to be addedpassword - the password of the user to add
- Returns:
- true if succesful, false otherwise
- See Also:
UsersRepository.addUser(java.lang.String, java.lang.String)
Copyright ? 2002-2009 The Apache Software Foundation. All Rights Reserved.