## org.eclipse.jetty.server.session
Class HashSessionIdManager

    java.lang.Object
      org.eclipse.jetty.util.component.AbstractLifeCycle
          org.eclipse.jetty.server.session.AbstractSessionIdManager
              org.eclipse.jetty.server.session.HashSessionIdManager

All Implemented Interfaces:
  SessionIdManager, LifeCycle

    public class HashSessionIdManager

extends AbstractSessionIdManager

HashSessionIdManager. An in-memory implementation of the session ID manager.

Nested Class Summary

Nested classes/interfaces inherited from class org.eclipse.jetty.util.component.AbstractLifeCycle
`AbstractLifeCycle.AbstractLifeCycleListener`

Nested classes/interfaces inherited from interface org.eclipse.jetty.util.component.LifeCycle
`LifeCycle.Listener`

Field Summary

Fields inherited from class org.eclipse.jetty.server.session.AbstractSessionIdManager
`_random, _weakRandom, _workerName`

Fields inherited from class org.eclipse.jetty.util.component.AbstractLifeCycle
`_listeners, FAILED, RUNNING, STARTED, STARTING, STOPPED, STOPPING`

Constructor Summary
`HashSessionIdManager()`
`HashSessionIdManager(Random random)`

Method Summary
`void` `addSession(HttpSession session)` Add a session to the list of known sessions for a given ID.
`protected void` `doStart()`
`protected void` `doStop()`
`String` `getClusterId(String nodeId)` Get the session ID without any worker ID.
`String` `getNodeId(String clusterId, HttpServletRequest request)` Get the session ID with any worker ID.
`boolean` `idInUse(String id)`
`void` `invalidateAll(String id)` Call `HttpSession.invalidate()` on all known sessions for the given id.
`void` `removeSession(HttpSession session)` Remove session from the list of known sessions for a given ID.

Methods inherited from class org.eclipse.jetty.server.session.AbstractSessionIdManager
`getRandom, getWorkerName, initRandom, newSessionId, setRandom, setWorkerName`

Methods inherited from class org.eclipse.jetty.util.component.AbstractLifeCycle
`addLifeCycleListener, getState, isFailed, isRunning, isStarted, isStarting, isStopped, isStopping, removeLifeCycleListener, start, stop`

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

Methods inherited from interface org.eclipse.jetty.util.component.LifeCycle
`addLifeCycleListener, isFailed, isRunning, isStarted, isStarting, isStopped, isStopping, removeLifeCycleListener, start, stop`

Constructor Detail

### HashSessionIdManager

    public HashSessionIdManager()

### HashSessionIdManager

    public HashSessionIdManager(Random random)

Method Detail

### getNodeId

    public String getNodeId(String clusterId,
                            HttpServletRequest request)

  Get the session ID with any worker ID.

  Parameters:
    `clusterId` -
    `request` -
  Returns:
    sessionId plus any worker ID.

### getClusterId

    public String getClusterId(String nodeId)

  Get the session ID without any worker ID.

  Parameters:
    `nodeId` - the node id
  Returns:
    sessionId without any worker ID.

### doStart

    protected void doStart()
                    throws Exception

  Overrides:
    `doStart` in class `AbstractSessionIdManager`
  Throws:
    `Exception`

### doStop

    protected void doStop()
                   throws Exception

  Overrides:
    `doStop` in class `AbstractSessionIdManager`
  Throws:
    `Exception`

### idInUse

    public boolean idInUse(String id)

  Parameters:
    `id` - The session ID without any cluster node extension
  Returns:
    True if the session ID is in use by at least one context.
  See Also:
    `SessionIdManager.idInUse(String)`

### addSession

    public void addSession(HttpSession session)

  Description copied from interface: `SessionIdManager`
  Add a session to the list of known sessions for a given ID.

  Parameters:
    `session` - The session
  See Also:
    `SessionIdManager.addSession(HttpSession)`

### removeSession

    public void removeSession(HttpSession session)

  Description copied from interface: `SessionIdManager`
  Remove session from the list of known sessions for a given ID.

  See Also:
    `SessionIdManager.removeSession(HttpSession)`

### invalidateAll

    public void invalidateAll(String id)

  Description copied from interface: `SessionIdManager`
  Call `HttpSession.invalidate()` on all known sessions for the given id.

  Parameters:
    `id` - The session ID without any cluster node extension
  See Also:
    `SessionIdManager.invalidateAll(String)`

Copyright © 1995-2010 Mort Bay Consulting. All Rights Reserved.