## org.apache.catalina.session
Class DistributedManager

    java.lang.Object
      org.apache.catalina.session.ManagerBase
          org.apache.catalina.session.PersistentManagerBase
              org.apache.catalina.session.DistributedManager

All Implemented Interfaces:
  java.util.EventListener, Lifecycle, Manager, java.beans.PropertyChangeListener, java.lang.Runnable

public final class DistributedManager
extends PersistentManagerBase

This manager is responsible for in memory replication of Sessions across a defined Cluster. It could also utilize a Store to make Sessions persistence.

Version:
  $Revision: 1.6 $, $Date: 2004/08/26 21:39:08 $
Author:
  Bip Thelin

Field Summary
`protected static java.lang.String` `name` The descriptive name of this Manager implementation (for logging).

Fields inherited from class org.apache.catalina.session.PersistentManagerBase
`lifecycle, threadDone`

Fields inherited from class org.apache.catalina.session.ManagerBase
`algorithm, container, debug, DEFAULT_ALGORITHM, defaultContext, digest, distributable, duplicates, entropy, maxActive, maxInactiveInterval, random, randomClass, recycled, SESSION_ID_BYTES, sessionCounter, sessions, sm, support`

Fields inherited from interface org.apache.catalina.Lifecycle
`AFTER_START_EVENT, AFTER_STOP_EVENT, BEFORE_START_EVENT, BEFORE_STOP_EVENT, START_EVENT, STOP_EVENT`

Constructor Summary
`DistributedManager()`

Method Summary
`Session` `createSession()` Create a Session and replicate it in our Cluster
`java.lang.String` `getInfo()` Return descriptive information about this Manager implementation and the corresponding version number, in the format `<description>/<version>`.
`java.lang.String` `getName()` Return the descriptive short name of this Manager implementation.
`void` `processClusterReceiver()` Called from our background thread to process new received Sessions
`void` `run()` The background thread that checks for session timeouts and shutdown.
`void` `start()` Start this manager

Methods inherited from class org.apache.catalina.session.PersistentManagerBase

`addLifecycleListener, clearStore, findLifecycleListeners, findSession, getCheckInterval, getMaxActiveSessions, getMaxIdleBackup, getMaxIdleSwap, getMinIdleSwap, getSaveOnRestart, getStore, isLoaded, isSessionStale, isStarted, load, processExpires, processMaxActiveSwaps, processMaxIdleBackups, processMaxIdleSwaps, processPersistenceChecks, propertyChange, remove, removeLifecycleListener, setCheckInterval, setContainer, setMaxActiveSessions, setMaxIdleBackup, setMaxIdleSwap, setMinIdleSwap, setSaveOnRestart, setStarted, setStore, stop, swapIn, swapOut, threadSleep, threadStart, threadStop, unload, writeSession`

Methods inherited from class org.apache.catalina.session.ManagerBase

`add, addPropertyChangeListener, createEmptySession, expireSession, findSessions, generateSessionId, getActiveSessions, getAlgorithm, getContainer, getDebug, getDefaultContext, getDigest, getDistributable, getDuplicates, getEngine, getEntropy, getJvmRoute, getLastAccessedTime, getMaxActive, getMaxInactiveInterval, getRandom, getRandomClass, getSessionAttribute, getSessionCounter, listSessionIds, removePropertyChangeListener, setAlgorithm, setDebug, setDefaultContext, setDistributable, setDuplicates, setEntropy, setMaxActive, setMaxInactiveInterval, setRandomClass, setSessionCounter`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### name

    protected static java.lang.String name

  The descriptive name of this Manager implementation (for logging).

Constructor Detail

### DistributedManager

    public DistributedManager()

Method Detail

### getInfo

    public java.lang.String getInfo()

  Return descriptive information about this Manager implementation and the corresponding version number, in the format `<description>/<version>`.

  Specified by:
    `getInfo` in interface `Manager`
  Overrides:
    `getInfo` in class `PersistentManagerBase`

### getName

    public java.lang.String getName()

  Return the descriptive short name of this Manager implementation.

  Overrides:
    `getName` in class `PersistentManagerBase`

### createSession

    public Session createSession()

  Create a Session and replicate it in our Cluster

  Specified by:
    `createSession` in interface `Manager`
  Overrides:
    `createSession` in class `PersistentManagerBase`
  Returns:
    The newly created Session

### start

    public void start()
               throws LifecycleException

  Start this manager

  Specified by:
    `start` in interface `Lifecycle`
  Overrides:
    `start` in class `PersistentManagerBase`
  Throws:
    `LifecycleException` - if an error occurs

### processClusterReceiver

    public void processClusterReceiver()

  Called from our background thread to process new received Sessions

### run

    public void run()

  The background thread that checks for session timeouts and shutdown.

  Specified by:
    `run` in interface `java.lang.Runnable`
  Overrides:
    `run` in class `PersistentManagerBase`

Copyright ? 2000-2002 Apache Software Foundation. All Rights Reserved.