Class AbstractFlashMapManager
java.lang.Object
org.springframework.web.servlet.support.AbstractFlashMapManager
- All Implemented Interfaces:
- FlashMapManager
- Direct Known Subclasses:
- SessionFlashMapManager
A base class for 
FlashMapManager implementations.- Since:
- 3.1.1
- Author:
- Rossen Stoyanchev, Juergen Hoeller, Sam Brannen
- 
Field SummaryFields
- 
Constructor SummaryConstructors
- 
Method SummaryModifier and TypeMethodDescriptionprotected ObjectgetFlashMapsMutex(HttpServletRequest request) Obtain a mutex for modifying the FlashMap List as handled byretrieveFlashMaps(jakarta.servlet.http.HttpServletRequest)andupdateFlashMaps(java.util.List<org.springframework.web.servlet.FlashMap>, jakarta.servlet.http.HttpServletRequest, jakarta.servlet.http.HttpServletResponse),intReturn the amount of time in seconds before a FlashMap expires.Return the UrlPathHelper implementation to use.protected booleanisFlashMapForRequest(FlashMap flashMap, HttpServletRequest request) Whether the given FlashMap matches the current request.final FlashMapretrieveAndUpdate(HttpServletRequest request, HttpServletResponse response) Find a FlashMap saved by a previous request that matches to the current request, remove it from underlying storage, and also remove other expired FlashMap instances.retrieveFlashMaps(HttpServletRequest request) Retrieve saved FlashMap instances from the underlying storage.final voidsaveOutputFlashMap(FlashMap flashMap, HttpServletRequest request, HttpServletResponse response) Save the given FlashMap, in some underlying storage and set the start of its expiration period.voidsetFlashMapTimeout(int flashMapTimeout) Set the amount of time in seconds after aFlashMapis saved (at request completion) and before it expires.voidsetUrlPathHelper(UrlPathHelper urlPathHelper) Set the UrlPathHelper to use to match FlashMap instances to requests.protected abstract voidupdateFlashMaps(List<FlashMap> flashMaps, HttpServletRequest request, HttpServletResponse response) Update the FlashMap instances in the underlying storage.
- 
Field Details- 
logger
 
- 
- 
Constructor Details- 
AbstractFlashMapManagerpublic AbstractFlashMapManager()
 
- 
- 
Method Details- 
setFlashMapTimeoutpublic void setFlashMapTimeout(int flashMapTimeout) Set the amount of time in seconds after aFlashMapis saved (at request completion) and before it expires.The default value is 180 seconds. 
- 
getFlashMapTimeoutpublic int getFlashMapTimeout()Return the amount of time in seconds before a FlashMap expires.
- 
setUrlPathHelperSet the UrlPathHelper to use to match FlashMap instances to requests.
- 
getUrlPathHelperReturn the UrlPathHelper implementation to use.
- 
retrieveAndUpdate@Nullable public final FlashMap retrieveAndUpdate(HttpServletRequest request, HttpServletResponse response) Description copied from interface:FlashMapManagerFind a FlashMap saved by a previous request that matches to the current request, remove it from underlying storage, and also remove other expired FlashMap instances.This method is invoked in the beginning of every request in contrast to FlashMapManager.saveOutputFlashMap(org.springframework.web.servlet.FlashMap, jakarta.servlet.http.HttpServletRequest, jakarta.servlet.http.HttpServletResponse), which is invoked only when there are flash attributes to be saved - i.e. before a redirect.- Specified by:
- retrieveAndUpdatein interface- FlashMapManager
- Parameters:
- request- the current request
- response- the current response
- Returns:
- a FlashMap matching the current request or null
 
- 
isFlashMapForRequestWhether the given FlashMap matches the current request. Uses the expected request path and query parameters saved in the FlashMap.
- 
saveOutputFlashMappublic final void saveOutputFlashMap(FlashMap flashMap, HttpServletRequest request, HttpServletResponse response) Description copied from interface:FlashMapManagerSave the given FlashMap, in some underlying storage and set the start of its expiration period.NOTE: Invoke this method prior to a redirect in order to allow saving the FlashMap in the HTTP session or in a response cookie before the response is committed. - Specified by:
- saveOutputFlashMapin interface- FlashMapManager
- Parameters:
- flashMap- the FlashMap to save
- request- the current request
- response- the current response
 
- 
retrieveFlashMapsRetrieve saved FlashMap instances from the underlying storage.- Parameters:
- request- the current request
- Returns:
- a List with FlashMap instances, or nullif none found
 
- 
updateFlashMapsprotected abstract void updateFlashMaps(List<FlashMap> flashMaps, HttpServletRequest request, HttpServletResponse response) Update the FlashMap instances in the underlying storage.- Parameters:
- flashMaps- a (potentially empty) list of FlashMap instances to save
- request- the current request
- response- the current response
 
- 
getFlashMapsMutexObtain a mutex for modifying the FlashMap List as handled byretrieveFlashMaps(jakarta.servlet.http.HttpServletRequest)andupdateFlashMaps(java.util.List<org.springframework.web.servlet.FlashMap>, jakarta.servlet.http.HttpServletRequest, jakarta.servlet.http.HttpServletResponse),The default implementation returns a shared static mutex. Subclasses are encouraged to return a more specific mutex, or nullto indicate that no synchronization is necessary.- Parameters:
- request- the current request
- Returns:
- the mutex to use (may be nullif none applicable)
- Since:
- 4.0.3
 
 
-