Package org.springframework.web.util

# Class HttpSessionMutexListener

java.lang.Object
org.springframework.web.util.HttpSessionMutexListener

All Implemented Interfaces:
  `HttpSessionListener`, `EventListener`

public class HttpSessionMutexListener extends Object implements HttpSessionListener
Servlet HttpSessionListener that automatically exposes the session mutex when an HttpSession gets created. To be registered as a listener in `web.xml`.

The session mutex is guaranteed to be the same object during the entire lifetime of the session, available under the key defined by the `SESSION_MUTEX_ATTRIBUTE` constant. It serves as a safe reference to synchronize on for locking on the current session.

In many cases, the HttpSession reference itself is a safe mutex as well, since it will always be the same object reference for the same active logical session. However, this is not guaranteed across different servlet containers; the only 100% safe way is a session mutex.

Since:
  1.2.7
Author:
  Juergen Hoeller
See Also:
  - `WebUtils.SESSION_MUTEX_ATTRIBUTE`
  - `WebUtils.getSessionMutex(jakarta.servlet.http.HttpSession)`
  - `org.springframework.web.servlet.mvc.AbstractController#setSynchronizeOnSession`

## Constructor Summary

Constructors
Constructor
Description
`HttpSessionMutexListener()`

## Method Summary

Modifier and Type
Method
Description
`void`
`sessionCreated(HttpSessionEvent event)`
`void`
`sessionDestroyed(HttpSessionEvent event)`

### Methods inherited from class java.lang.Object

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

## Constructor Details

### HttpSessionMutexListener

public HttpSessionMutexListener()

## Method Details

### sessionCreated

public void sessionCreated(HttpSessionEvent event)

Specified by:
  `sessionCreated` in interface `HttpSessionListener`

### sessionDestroyed

public void sessionDestroyed(HttpSessionEvent event)

Specified by:
  `sessionDestroyed` in interface `HttpSessionListener`