Can be implemented for any kind of request/session mechanism, in particular for servlet requests.
ServletRequestAttributes
| Modifier and Type | Field and Description |
|---|---|
| public static final String | REFERENCE_REQUEST
Name of the standard reference to the request object: "request". |
| public static final String | REFERENCE_SESSION
Name of the standard reference to the session object: "session". |
| public static final int | SCOPE_REQUEST
Constant that indicates request scope. |
| public static final int | SCOPE_SESSION
Constant that indicates session scope. |
| Modifier and Type | Method and Description |
|---|---|
| public Object | Returns: the current attribute value, ornull if not foundthe name of the attribute name, int the scope identifier scope)Return the value for the scoped attribute of the given name, if any. |
| public String[] | Returns: the attribute names as String arraythe scope identifier scope)Retrieve the names of all attributes in the scope. |
| public String | Returns: the session id as String (nevernull)Return an id for the current underlying session. |
| public Object | Returns: the session mutex to use (nevernull)Expose the best available mutex for the underlying session: that is, an object to synchronize on for the underlying session. |
| public void | registerDestructionCallback(String
the name of the attribute to register the callback for name, Runnable the destruction callback to be executed callback, int the scope identifier scope)Register a callback to be executed on destruction of the specified attribute in the given scope. |
| public void | removeAttribute(String
the name of the attribute name, int the scope identifier scope)Remove the scoped attribute of the given name, if it exists. |
| public Object | Returns: the corresponding object, ornull if none foundthe contextual key key)Resolve the contextual reference for the given key, if any. |
| public void | setAttribute(String
the name of the attribute name, Object the value for the attribute value, int the scope identifier scope)Set the value for the scoped attribute of the given name, replacing an existing value (if any). |
| REFERENCE_REQUEST | back to summary |
|---|---|
| public static final String REFERENCE_REQUEST Name of the standard reference to the request object: "request".
| |
| REFERENCE_SESSION | back to summary |
|---|---|
| public static final String REFERENCE_SESSION Name of the standard reference to the session object: "session".
| |
| SCOPE_REQUEST | back to summary |
|---|---|
| public static final int SCOPE_REQUEST Constant that indicates request scope. | |
| SCOPE_SESSION | back to summary |
|---|---|
| public static final int SCOPE_SESSION Constant that indicates session scope. This preferably refers to a locally isolated session, if such a distinction is available. Else, it simply refers to the common session. | |
| getAttribute | back to summary |
|---|---|
| public Object getAttribute(String name, int scope) Return the value for the scoped attribute of the given name, if any. | |
| getAttributeNames | back to summary |
|---|---|
| public String[] getAttributeNames(int scope) Retrieve the names of all attributes in the scope.
| |
| getSessionId | back to summary |
|---|---|
| public String getSessionId() Return an id for the current underlying session.
| |
| getSessionMutex | back to summary |
|---|---|
| public Object getSessionMutex() Expose the best available mutex for the underlying session: that is, an object to synchronize on for the underlying session.
| |
| registerDestructionCallback | back to summary |
|---|---|
| public void registerDestructionCallback(String name, Runnable callback, int scope) Register a callback to be executed on destruction of the specified attribute in the given scope. Implementations should do their best to execute the callback at the appropriate time: that is, at request completion or session termination, respectively. If such a callback is not supported by the underlying runtime environment, the callback must be ignored and a corresponding warning should be logged. Note that 'destruction' usually corresponds to destruction of the
entire scope, not to the individual attribute having been explicitly
removed by the application. If an attribute gets removed via this
facade's Note Callback objects should generally be serializable if they are being registered for a session scope. Otherwise the callback (or even the entire session) might not survive web app restarts. | |
| removeAttribute | back to summary |
|---|---|
| public void removeAttribute(String name, int scope) Remove the scoped attribute of the given name, if it exists. Note that an implementation should also remove a registered destruction callback for the specified attribute, if any. It does, however, not need to execute a registered destruction callback in this case, since the object will be destroyed by the caller (if appropriate).
| |
| resolveReference | back to summary |
|---|---|
| public Object resolveReference(String key) Resolve the contextual reference for the given key, if any. At a minimum: the HttpServletRequest reference for key "request", and the HttpSession reference for key "session". | |
| setAttribute | back to summary |
|---|---|
| public void setAttribute(String name, Object value, int scope) Set the value for the scoped attribute of the given name, replacing an existing value (if any). | |