org.springframework.mock.web

## Class MockHttpSession

- java.lang.Object
- - org.springframework.mock.web.MockHttpSession

All Implemented Interfaces:
  HttpSession

    public class MockHttpSession
    extends Object
    implements HttpSession

Mock implementation of the `HttpSession` interface.

Compatible with Servlet 2.5 as well as Servlet 3.0.

Used for testing the web framework; also useful for testing application controllers.

Since:
  1.0.2
Author:
  Juergen Hoeller, Rod Johnson, Mark Fisher, Sam Brannen

### Field Summary

Fields
`static String` `SESSION_COOKIE_NAME`

### Constructor Summary

Constructors
Constructor and Description
`MockHttpSession()` Create a new MockHttpSession with a default `MockServletContext`.
`MockHttpSession(ServletContext servletContext)` Create a new MockHttpSession.
`MockHttpSession(ServletContext servletContext, String id)` Create a new MockHttpSession.

### Method Summary

Methods
`void` `access()`
`void` `clearAttributes()` Clear all of this session's attributes.
`void` `deserializeState(Serializable state)` Deserialize the attributes of this session from a state object created by `serializeState()`.
`Object` `getAttribute(String name)`
`Enumeration<String>` `getAttributeNames()`
`long` `getCreationTime()`
`String` `getId()`
`long` `getLastAccessedTime()`
`int` `getMaxInactiveInterval()`
`ServletContext` `getServletContext()`
`HttpSessionContext` `getSessionContext()`
`Object` `getValue(String name)`
`String[]` `getValueNames()`
`void` `invalidate()` Invalidates this session then unbinds any objects bound to it.
`boolean` `isInvalid()`
`boolean` `isNew()`
`void` `putValue(String name, Object value)`
`void` `removeAttribute(String name)`
`void` `removeValue(String name)`
`Serializable` `serializeState()` Serialize the attributes of this session into an object that can be turned into a byte array with standard Java serialization.
`void` `setAttribute(String name, Object value)`
`void` `setMaxInactiveInterval(int interval)`
`void` `setNew(boolean value)`

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

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

### Field Detail

#### SESSION_COOKIE_NAME

    public static final String SESSION_COOKIE_NAME

See Also:
  Constant Field Values

### Constructor Detail

#### MockHttpSession

    public MockHttpSession()

Create a new MockHttpSession with a default `MockServletContext`.

See Also:
  `MockServletContext`

#### MockHttpSession

    public MockHttpSession(ServletContext servletContext)

Create a new MockHttpSession.

Parameters:
  `servletContext` - the ServletContext that the session runs in

#### MockHttpSession

    public MockHttpSession(ServletContext servletContext,
                   String id)

Create a new MockHttpSession.

Parameters:
  `servletContext` - the ServletContext that the session runs in
  `id` - a unique identifier for this session

### Method Detail

#### getCreationTime

    public long getCreationTime()

Specified by:
  `getCreationTime` in interface `HttpSession`

#### getId

    public String getId()

Specified by:
  `getId` in interface `HttpSession`

#### access

    public void access()

#### getLastAccessedTime

    public long getLastAccessedTime()

Specified by:
  `getLastAccessedTime` in interface `HttpSession`

#### getServletContext

    public ServletContext getServletContext()

Specified by:
  `getServletContext` in interface `HttpSession`

#### setMaxInactiveInterval

    public void setMaxInactiveInterval(int interval)

Specified by:
  `setMaxInactiveInterval` in interface `HttpSession`

#### getMaxInactiveInterval

    public int getMaxInactiveInterval()

Specified by:
  `getMaxInactiveInterval` in interface `HttpSession`

#### getSessionContext

    public HttpSessionContext getSessionContext()

Specified by:
  `getSessionContext` in interface `HttpSession`

#### getAttribute

    public Object getAttribute(String name)

Specified by:
  `getAttribute` in interface `HttpSession`

#### getValue

    public Object getValue(String name)

Specified by:
  `getValue` in interface `HttpSession`

#### getAttributeNames

    public Enumeration<String> getAttributeNames()

Specified by:
  `getAttributeNames` in interface `HttpSession`

#### getValueNames

    public String[] getValueNames()

Specified by:
  `getValueNames` in interface `HttpSession`

#### setAttribute

    public void setAttribute(String name,
                    Object value)

Specified by:
  `setAttribute` in interface `HttpSession`

#### putValue

    public void putValue(String name,
                Object value)

Specified by:
  `putValue` in interface `HttpSession`

#### removeAttribute

    public void removeAttribute(String name)

Specified by:
  `removeAttribute` in interface `HttpSession`

#### removeValue

    public void removeValue(String name)

Specified by:
  `removeValue` in interface `HttpSession`

#### clearAttributes

    public void clearAttributes()

Clear all of this session's attributes.

#### invalidate

    public void invalidate()

Invalidates this session then unbinds any objects bound to it.

Specified by:
  `invalidate` in interface `HttpSession`
Throws:
  `IllegalStateException` - if this method is called on an already invalidated session

#### isInvalid

    public boolean isInvalid()

#### setNew

    public void setNew(boolean value)

#### isNew

    public boolean isNew()

Specified by:
  `isNew` in interface `HttpSession`

#### serializeState

    public Serializable serializeState()

Serialize the attributes of this session into an object that can be turned into a byte array with standard Java serialization.

Returns:
  a representation of this session's serialized state

#### deserializeState

    public void deserializeState(Serializable state)

Deserialize the attributes of this session from a state object created by `serializeState()`.

Parameters:
  `state` - a representation of this session's serialized state