# Class SparseUserDatabase

java.lang.Object
org.apache.catalina.users.SparseUserDatabase

All Implemented Interfaces:
  `UserDatabase`

Direct Known Subclasses:
  `DataSourceUserDatabase`

public abstract class SparseUserDatabase extends Object implements UserDatabase
Abstract base class for a sparse user database implementation. A sparse database creates MBeans for users, groups, and roles on demand rather than registering all of them at startup.

## Constructor Summary

Constructors
Constructor
Description
`SparseUserDatabase()`
Default constructor required for subclasses.

## Method Summary

Modifier and Type
Method
Description
`boolean`
`isSparse()`
Indicates that this is a sparse user database.

### Methods inherited from class Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Methods inherited from interface UserDatabase

`backgroundProcess, close, createGroup, createRole, createUser, findGroup, findRole, findUser, getGroups, getId, getRoles, getUsers, isAvailable, modifiedGroup, modifiedRole, modifiedUser, open, removeGroup, removeRole, removeUser, save`

## Constructor Details

### SparseUserDatabase

public SparseUserDatabase()
Default constructor required for subclasses.

## Method Details

### isSparse

public boolean isSparse()
Indicates that this is a sparse user database.

Specified by:
  `isSparse` in interface `UserDatabase`
Returns:
  always `true`