|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.springframework.web.method.annotation.SessionAttributesHandler
public class SessionAttributesHandler
Manages controller-specific session attributes declared via
@SessionAttributes
. Actual storage is
delegated to a SessionAttributeStore
instance.
When a controller annotated with @SessionAttributes
adds
attributes to its model, those attributes are checked against names and
types specified via @SessionAttributes
. Matching model attributes
are saved in the HTTP session and remain there until the controller calls
SessionStatus.setComplete()
.
Constructor Summary | |
---|---|
SessionAttributesHandler(Class<?> handlerType,
SessionAttributeStore sessionAttributeStore)
Create a new instance for a controller type. |
Method Summary | |
---|---|
void |
cleanupAttributes(WebRequest request)
Remove "known" attributes from the session, i.e. |
boolean |
hasSessionAttributes()
Whether the controller represented by this instance has declared any session attributes through an SessionAttributes annotation. |
boolean |
isHandlerSessionAttribute(String attributeName,
Class<?> attributeType)
Whether the attribute name or type match the names and types specified via @SessionAttributes in underlying controller. |
Map<String,Object> |
retrieveAttributes(WebRequest request)
Retrieve "known" attributes from the session, i.e. |
void |
storeAttributes(WebRequest request,
Map<String,?> attributes)
Store a subset of the given attributes in the session. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public SessionAttributesHandler(Class<?> handlerType, SessionAttributeStore sessionAttributeStore)
@SessionAttributes
annotation, if
present, on the given type.
handlerType
- the controller typesessionAttributeStore
- used for session accessMethod Detail |
---|
public boolean hasSessionAttributes()
SessionAttributes
annotation.
public boolean isHandlerSessionAttribute(String attributeName, Class<?> attributeType)
@SessionAttributes
in underlying controller.
Attributes successfully resolved through this method are "remembered"
and subsequently used in retrieveAttributes(WebRequest)
and
cleanupAttributes(WebRequest)
.
attributeName
- the attribute name to check, never null
attributeType
- the type for the attribute, possibly null
public void storeAttributes(WebRequest request, Map<String,?> attributes)
@SessionAttributes
are ignored.
request
- the current requestattributes
- candidate attributes for session storagepublic Map<String,Object> retrieveAttributes(WebRequest request)
@SessionAttributes
or attributes previously stored
in the model that matched by type.
request
- the current request
public void cleanupAttributes(WebRequest request)
@SessionAttributes
or attributes previously stored
in the model that matched by type.
request
- the current request
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |