Class CookieRequestCache
java.lang.Object
org.springframework.security.web.savedrequest.CookieRequestCache
- All Implemented Interfaces:
RequestCache
An Implementation of
RequestCache
which saves the original request URI in a
cookie.- Since:
- 5.4
-
Field Summary
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionjakarta.servlet.http.HttpServletRequest
getMatchingRequest
(jakarta.servlet.http.HttpServletRequest request, jakarta.servlet.http.HttpServletResponse response) Returns a wrapper around the saved request, if it matches the current request.getRequest
(jakarta.servlet.http.HttpServletRequest request, jakarta.servlet.http.HttpServletResponse response) Returns the saved request, leaving it cached.void
removeRequest
(jakarta.servlet.http.HttpServletRequest request, jakarta.servlet.http.HttpServletResponse response) Removes the cached request.void
saveRequest
(jakarta.servlet.http.HttpServletRequest request, jakarta.servlet.http.HttpServletResponse response) Caches the current request for later retrieval, once authentication has taken place.void
setRequestMatcher
(RequestMatcher requestMatcher) Allows selective use of saved requests for a subset of requests.
-
Field Details
-
logger
protected final org.apache.commons.logging.Log logger
-
-
Constructor Details
-
CookieRequestCache
public CookieRequestCache()
-
-
Method Details
-
saveRequest
public void saveRequest(jakarta.servlet.http.HttpServletRequest request, jakarta.servlet.http.HttpServletResponse response) Description copied from interface:RequestCache
Caches the current request for later retrieval, once authentication has taken place. Used by ExceptionTranslationFilter.- Specified by:
saveRequest
in interfaceRequestCache
- Parameters:
request
- the request to be stored
-
getRequest
public SavedRequest getRequest(jakarta.servlet.http.HttpServletRequest request, jakarta.servlet.http.HttpServletResponse response) Description copied from interface:RequestCache
Returns the saved request, leaving it cached.- Specified by:
getRequest
in interfaceRequestCache
- Parameters:
request
- the current request- Returns:
- the saved request which was previously cached, or null if there is none.
-
getMatchingRequest
public jakarta.servlet.http.HttpServletRequest getMatchingRequest(jakarta.servlet.http.HttpServletRequest request, jakarta.servlet.http.HttpServletResponse response) Description copied from interface:RequestCache
Returns a wrapper around the saved request, if it matches the current request. The saved request should be removed from the cache.- Specified by:
getMatchingRequest
in interfaceRequestCache
- Returns:
- the wrapped save request, if it matches the original, or null if there is no cached request or it doesn't match.
-
removeRequest
public void removeRequest(jakarta.servlet.http.HttpServletRequest request, jakarta.servlet.http.HttpServletResponse response) Description copied from interface:RequestCache
Removes the cached request.- Specified by:
removeRequest
in interfaceRequestCache
- Parameters:
request
- the current request, allowing access to the cache.
-
setRequestMatcher
Allows selective use of saved requests for a subset of requests. By default any request will be cached by thesaveRequest
method.If set, only matching requests will be cached.
- Parameters:
requestMatcher
- a request matching strategy which defines which requests should be cached.
-