Package org.apache.catalina
Interface UserDatabase
-
- All Known Implementing Classes:
MemoryUserDatabase
public interface UserDatabase
Abstract representation of a database ofUser
s andGroup
s that can be maintained by an application, along with definitions of correspondingRole
s, and referenced by aRealm
for authentication and access control.- Since:
- 4.1
- Author:
- Craig R. McClanahan
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description void
close()
Finalize access to this user database.Group
createGroup(java.lang.String groupname, java.lang.String description)
Create and return a newGroup
defined in this user database.Role
createRole(java.lang.String rolename, java.lang.String description)
Create and return a newRole
defined in this user database.User
createUser(java.lang.String username, java.lang.String password, java.lang.String fullName)
Create and return a newUser
defined in this user database.Group
findGroup(java.lang.String groupname)
Role
findRole(java.lang.String rolename)
User
findUser(java.lang.String username)
java.util.Iterator<Group>
getGroups()
java.lang.String
getId()
java.util.Iterator<Role>
getRoles()
java.util.Iterator<User>
getUsers()
void
open()
Initialize access to this user database.void
removeGroup(Group group)
Remove the specifiedGroup
from this user database.void
removeRole(Role role)
Remove the specifiedRole
from this user database.void
removeUser(User user)
Remove the specifiedUser
from this user database.void
save()
Save any updated information to the persistent storage location for this user database.
-
-
-
Method Detail
-
getGroups
java.util.Iterator<Group> getGroups()
- Returns:
- the set of
Group
s defined in this user database.
-
getId
java.lang.String getId()
- Returns:
- the unique global identifier of this user database.
-
getRoles
java.util.Iterator<Role> getRoles()
- Returns:
- the set of
Role
s defined in this user database.
-
getUsers
java.util.Iterator<User> getUsers()
- Returns:
- the set of
User
s defined in this user database.
-
close
void close() throws java.lang.Exception
Finalize access to this user database.- Throws:
java.lang.Exception
- if any exception is thrown during closing
-
createGroup
Group createGroup(java.lang.String groupname, java.lang.String description)
Create and return a newGroup
defined in this user database.- Parameters:
groupname
- The group name of the new group (must be unique)description
- The description of this group- Returns:
- The new group
-
createRole
Role createRole(java.lang.String rolename, java.lang.String description)
Create and return a newRole
defined in this user database.- Parameters:
rolename
- The role name of the new role (must be unique)description
- The description of this role- Returns:
- The new role
-
createUser
User createUser(java.lang.String username, java.lang.String password, java.lang.String fullName)
Create and return a newUser
defined in this user database.- Parameters:
username
- The logon username of the new user (must be unique)password
- The logon password of the new userfullName
- The full name of the new user- Returns:
- The new user
-
findGroup
Group findGroup(java.lang.String groupname)
- Parameters:
groupname
- Name of the group to return- Returns:
- the
Group
with the specified group name, if any; otherwise returnnull
.
-
findRole
Role findRole(java.lang.String rolename)
- Parameters:
rolename
- Name of the role to return- Returns:
- the
Role
with the specified role name, if any; otherwise returnnull
.
-
findUser
User findUser(java.lang.String username)
- Parameters:
username
- Name of the user to return- Returns:
- the
User
with the specified user name, if any; otherwise returnnull
.
-
open
void open() throws java.lang.Exception
Initialize access to this user database.- Throws:
java.lang.Exception
- if any exception is thrown during opening
-
removeGroup
void removeGroup(Group group)
Remove the specifiedGroup
from this user database.- Parameters:
group
- The group to be removed
-
removeRole
void removeRole(Role role)
Remove the specifiedRole
from this user database.- Parameters:
role
- The role to be removed
-
removeUser
void removeUser(User user)
Remove the specifiedUser
from this user database.- Parameters:
user
- The user to be removed
-
save
void save() throws java.lang.Exception
Save any updated information to the persistent storage location for this user database.- Throws:
java.lang.Exception
- if any exception is thrown during saving
-
-