| AccessLog | Intended for use by a  Valve to indicate that the  Valve
 provides access logging. | 
| AsyncDispatcher |  | 
| Authenticator | An Authenticator is a component (usually a Valve or Container) that
 provides some sort of authentication service. | 
| Cluster | A Cluster works as a Cluster client/server for the local host
 Different Cluster implementations can be used to support different
 ways to communicate within the Cluster. | 
| Contained | Decoupling interface which specifies that an implementing class is
 associated with at most one Container instance. | 
| Container | A Container is an object that can execute requests received from
 a client, and return responses based on those requests. | 
| ContainerListener | Interface defining a listener for significant Container generated events. | 
| ContainerServlet | A ContainerServlet is a servlet that has access to Catalina
 internal functionality, and is loaded from the Catalina class loader
 instead of the web application class loader. | 
| Context | A Context is a Container that represents a servlet context, and
 therefore an individual web application, in the Catalina servlet engine. | 
| CredentialHandler | This interface is used by the  Realm to compare the user provided
 credentials with the credentials stored in the  Realm for that user. | 
| DistributedManager | Interface implemented by session managers that do not keep a complete copy
 of all sessions in memory but do know where every session is. | 
| Engine | An Engine is a Container that represents the entire Catalina servlet
 engine. | 
| Executor |  | 
| Group |  | 
| Host | A Host is a Container that represents a virtual host in the
 Catalina servlet engine. | 
| JmxEnabled | This interface is implemented by components that will be registered with an
 MBean server when they are created and unregistered when they are destroyed. | 
| Lifecycle | Common interface for component life cycle methods. | 
| Lifecycle.SingleUse | Marker interface used to indicate that the instance should only be used
 once. | 
| LifecycleListener | Interface defining a listener for significant events (including "component
 start" and "component stop" generated by a component that implements the
 Lifecycle interface. | 
| Loader | A Loader represents a Java ClassLoader implementation that can
 be used by a Container to load class files (within a repository associated
 with the Loader) that are designed to be reloaded upon request, as well as
 a mechanism to detect whether changes have occurred in the underlying
 repository. | 
| Manager | A Manager manages the pool of Sessions that are associated with a
 particular Context. | 
| Pipeline | Interface describing a collection of Valves that should be executed
 in sequence when the invoke()method is invoked. | 
| Realm | A Realm is a read-only facade for an underlying security realm
 used to authenticate individual users, and identify the security roles
 associated with those users. | 
| Role | Abstract representation of a security role, suitable for use in
 environments like JAAS that want to deal with Principals. | 
| Server | A Serverelement represents the entire Catalina
 servlet container. | 
| Service | A Service is a group of one or more
 Connectors that share a single Container
 to process their incoming requests. | 
| Session | A Session is the Catalina-internal facade for an
 HttpSessionthat is used to maintain state information
 between requests for a particular user of a web application. | 
| SessionIdGenerator |  | 
| SessionListener | Interface defining a listener for significant Session generated events. | 
| Store | A Store is the abstraction of a Catalina component that provides
 persistent storage and loading of Sessions and their associated user data. | 
| StoreManager | PersistentManager would have been a better name but that would have clashed
 with the implementation name. | 
| ThreadBindingListener | Callback for establishing naming association when entering the application
 scope. | 
| TomcatPrincipal | Defines additional methods implemented by  Principals created by
 Tomcat's standard  Realm implementations. | 
| TrackedWebResource |  | 
| User |  | 
| UserDatabase | Abstract representation of a database of  Users and  Groups
 that can be maintained by an application, along with definitions of
 corresponding  Roles, and referenced by a  Realm for
 authentication and access control. | 
| Valve | A Valve is a request processing component associated with a
 particular Container. | 
| WebResource | Represents a file or directory within a web application. | 
| WebResourceRoot | Represents the complete set of resources for a web application. | 
| WebResourceRoot.CacheStrategy | Provides a mechanism to modify the caching behaviour. | 
| WebResourceSet | Represents a set of resources that are part of a web application. | 
| Wrapper | A Wrapper is a Container that represents an individual servlet
 definition from the deployment descriptor of the web application. |