Interface WebSessionStore
- All Known Implementing Classes:
InMemoryWebSessionStore
public interface WebSessionStore
Strategy forWebSessionpersistence.- Since:
- 5.0
- Author:
- Rossen Stoyanchev, Rob Winch
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description reactor.core.publisher.Mono<WebSession>createWebSession()Create a new WebSession.reactor.core.publisher.Mono<Void>removeSession(String sessionId)Remove the WebSession for the specified id.reactor.core.publisher.Mono<WebSession>retrieveSession(String sessionId)Return the WebSession for the given id.reactor.core.publisher.Mono<WebSession>updateLastAccessTime(WebSession webSession)Update the last accessed timestamp to "now".
Method Detail
createWebSession
reactor.core.publisher.Mono<WebSession> createWebSession()
Create a new WebSession.Note that this does nothing more than create a new instance. The session can later be started explicitly via
WebSession.start()or implicitly by adding attributes -- and then persisted viaWebSession.save().- Returns:
- the created session instance
retrieveSession
reactor.core.publisher.Mono<WebSession> retrieveSession(String sessionId)
Return the WebSession for the given id.Note: This method should perform an expiration check, and if it has expired remove the session and return empty. This method should also update the lastAccessTime of retrieved sessions.
- Parameters:
sessionId- the session to load- Returns:
- the session, or an empty
Mono.
removeSession
reactor.core.publisher.Mono<Void> removeSession(String sessionId)
Remove the WebSession for the specified id.- Parameters:
sessionId- the id of the session to remove- Returns:
- a completion notification (success or error)
updateLastAccessTime
reactor.core.publisher.Mono<WebSession> updateLastAccessTime(WebSession webSession)
Update the last accessed timestamp to "now".- Parameters:
webSession- the session to update- Returns:
- the session with the updated last access time