This package contains the standard `Manager` and `Session` implementations that represent the collection of active sessions and the individual sessions themselves, respectively, that are associated with a `Context`. Additional implementations of the `Manager` interface can be based upon the supplied convenience base class (`ManagerBase`), if desired. Different implementations of `Session` are possible, but a need for functionality beyond what is provided by the standard implementation (`StandardSession`) is not expected.

The convenience `ManagerBase` base class is configured by setting the following properties:

- algorithm - Message digest algorithm to be used when generating session identifiers. This must be the name of an algorithm supported by the `java.security.MessageDigest` class on your platform. [DEFAULT_ALGORITHM]
- debug - Debugging detail level for this component. [0]
- distributable - Has the web application we are associated with been marked as "distributable"? If it has, attempts to add or replace a session attribute object that does not implement the `java.io.Serializable` interface will be rejected. [false]
- maxInactiveInterval - The default maximum inactive interval, in minutes, for sessions created by this Manager. The standard implementation automatically updates this value based on the configuration settings in the web application deployment descriptor. [60]
- randomClass - The Java class name of the random number generator to be used when creating session identifiers for this Manager. [java.security.SecureRandom]

The standard implementation of the `Manager` interface (`StandardManager`) supports the following additional configuration properties:

- checkInterval - The interval, in seconds, between checks for sessions that have expired and should be invalidated. [60]
- maxActiveSessions - The maximum number of active sessions that will be allowed, or -1 for no limit. [-1]
- pathname - Pathname to the file that is used to store session data persistently across container restarts. If this pathname is relative, it is resolved against the temporary working directory provided by our associated Context, if any. ["sessions.ser"]