The Spring Framework

## org.springframework.web.context.request
Class AbstractRequestAttributes

    java.lang.Object
      org.springframework.web.context.request.AbstractRequestAttributes

All Implemented Interfaces:
  RequestAttributes

Direct Known Subclasses:
  PortletRequestAttributes, ServletRequestAttributes

    public abstract class AbstractRequestAttributes

extends Object
implements RequestAttributes

Abstract support class for RequestAttributes implementations, offering a request completion mechanism for request-specific destruction callbacks and for updating accessed session attributes.

Since:
  2.0
Author:
  Juergen Hoeller
See Also:
  `requestCompleted()`

Field Summary
`protected Map` `requestDestructionCallbacks` Map from attribute name String to destruction callback Runnable

Fields inherited from interface org.springframework.web.context.request.RequestAttributes
`SCOPE_GLOBAL_SESSION, SCOPE_REQUEST, SCOPE_SESSION`

Constructor Summary
`AbstractRequestAttributes()`

Method Summary
`protected boolean` `isRequestActive()` Determine whether the original request is still active.
`protected void` `registerRequestDestructionCallback(String name, Runnable callback)` Register the given callback as to be executed after request completion.
`protected void` `removeRequestDestructionCallback(String name)` Remove the request destruction callback for the specified attribute, if any.
`void` `requestCompleted()` Signal that the request has been completed.
`protected abstract void` `updateAccessedSessionAttributes()` Update all session attributes that have been accessed during request processing, to expose their potentially updated state to the underlying session manager.

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

Methods inherited from interface org.springframework.web.context.request.RequestAttributes
`getAttribute, getAttributeNames, getSessionId, getSessionMutex, registerDestructionCallback, removeAttribute, setAttribute`

Field Detail

### requestDestructionCallbacks

    protected final Map requestDestructionCallbacks

  Map from attribute name String to destruction callback Runnable

Constructor Detail

### AbstractRequestAttributes

    public AbstractRequestAttributes()

Method Detail

### requestCompleted

    public void requestCompleted()

  Signal that the request has been completed.

  Executes all request destruction callbacks and updates the session attributes that have been accessed during request processing.

### isRequestActive

    protected final boolean isRequestActive()

  Determine whether the original request is still active.

  See Also:
    `requestCompleted()`

### registerRequestDestructionCallback

    protected final void registerRequestDestructionCallback(String name,
                                                            Runnable callback)

  Register the given callback as to be executed after request completion.

  Parameters:
    `name` - the name of the attribute to register the callback for
    `callback` - the callback to be executed for destruction

### removeRequestDestructionCallback

    protected final void removeRequestDestructionCallback(String name)

  Remove the request destruction callback for the specified attribute, if any.

  Parameters:
    `name` - the name of the attribute to remove the callback for

### updateAccessedSessionAttributes

    protected abstract void updateAccessedSessionAttributes()

  Update all session attributes that have been accessed during request processing, to expose their potentially updated state to the underlying session manager.

The Spring Framework

Copyright © 2002-2008 The Spring Framework.