|
The Spring Framework | |||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
public interface RequestAttributes
Abstraction for accessing attribute objects associated with a request. Supports access to request-scoped attributes as well as to session-scoped attributes, with the optional notion of a "global session".
Can be implemented for any kind of request/session mechanism, in particular for servlet requests and portlet requests.
ServletRequestAttributes
,
PortletRequestAttributes
Field Summary | |
---|---|
static int |
SCOPE_GLOBAL_SESSION
Constant that indicates global session scope. |
static int |
SCOPE_REQUEST
Constant that indicates request scope. |
static int |
SCOPE_SESSION
Constant that indicates session scope. |
Method Summary | |
---|---|
Object |
getAttribute(String name,
int scope)
Return the value for the scoped attribute of the given name, if any. |
String |
getSessionId()
Return an id for the current underlying session. |
Object |
getSessionMutex()
Expose the best available mutex for the underlying session: that is, an object to synchronize on for the underlying session. |
void |
registerDestructionCallback(String name,
Runnable callback,
int scope)
Register a callback to be executed at destruction of the specified attribute in the given scope. |
void |
removeAttribute(String name,
int scope)
Remove the scoped attribute of the given name, if it exists. |
void |
setAttribute(String name,
Object value,
int scope)
Set the value for the scoped attribute of the given name. |
Field Detail |
---|
static final int SCOPE_REQUEST
static final int SCOPE_SESSION
This preferably refers to a locally isolated session, if such a distinction is available (for example, in a Portlet environment). Else, it simply refers to the common session.
static final int SCOPE_GLOBAL_SESSION
This explicitly refers to a globally shared session, if such a distinction is available (for example, in a Portlet environment). Else, it simply refers to the common session.
Method Detail |
---|
Object getAttribute(String name, int scope)
name
- the name of the attributescope
- the scope identifier
null
if not foundvoid setAttribute(String name, Object value, int scope)
name
- the name of the attributescope
- the scope identifiervalue
- the value for the attributevoid removeAttribute(String name, int scope)
name
- the name of the attributescope
- the scope identifiervoid registerDestructionCallback(String name, Runnable callback, int 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 removed.
If an attribute gets removed via this facade's
removeAttribute(String, int)
method, any registered
destruction callback should be disabled as well (assuming that the
removed object will be reused or manually destroyed).
name
- the name of the attribute to register the callback forcallback
- the destruction callback to be executedscope
- the scope identifierString getSessionId()
Object getSessionMutex()
|
The Spring Framework | |||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |