Module io.inverno.mod.session
Package io.inverno.mod.session.jwt
Class RedisJWTSessionStore.Builder<A,B>
java.lang.Object
io.inverno.mod.session.AbstractSessionStore.Builder<A,JWTSession<A,B>,RedisJWTSessionStore<A,B>,RedisJWTSessionStore.Builder<A,B>>
io.inverno.mod.session.jwt.RedisJWTSessionStore.Builder<A,B>
- Type Parameters:
A
- the session data typeB
- the stateless session data type
- Enclosing class:
RedisJWTSessionStore<A,
B>
public static class RedisJWTSessionStore.Builder<A,B>
extends AbstractSessionStore.Builder<A,JWTSession<A,B>,RedisJWTSessionStore<A,B>,RedisJWTSessionStore.Builder<A,B>>
The Redis JWT session store builder.
- Since:
- 1.13
- Author:
- Jeremy Kuhn
-
Field Summary
Fields inherited from class io.inverno.mod.session.AbstractSessionStore.Builder
expireAfterPeriod, maxInactiveInterval, sessionIdGenerator
-
Method Summary
Modifier and TypeMethodDescriptionbuild()
Builds a session store.Sets the Redis key prefix.sessionDataSaveStrategy
(SessionDataSaveStrategy<A> sessionDataSaveStrategy) Sets the session data save strategy.statelessSessionDataSaveStrategy
(SessionDataSaveStrategy<B> statelessSessionDataSaveStrategy) Sets the stateless session data save strategy.Methods inherited from class io.inverno.mod.session.AbstractSessionStore.Builder
expireAfterPeriod, maxInactiveInterval
-
Method Details
-
keyPrefix
Sets the Redis key prefix.
Defaults to:
RedisJWTSessionStore.DEFAULT_KEY_PREFIX
.- Parameters:
keyPrefix
- a key prefix- Returns:
- the builder
-
sessionDataSaveStrategy
public RedisJWTSessionStore.Builder<A,B> sessionDataSaveStrategy(SessionDataSaveStrategy<A> sessionDataSaveStrategy) Sets the session data save strategy.
Defaults to
SessionDataSaveStrategy.onGet()
.- Parameters:
sessionDataSaveStrategy
- a session data save strategy- Returns:
- the builder
-
statelessSessionDataSaveStrategy
public RedisJWTSessionStore.Builder<A,B> statelessSessionDataSaveStrategy(SessionDataSaveStrategy<B> statelessSessionDataSaveStrategy) Sets the stateless session data save strategy.
Particular care must be taken when defining the stateless session data save strategy as this will trigger the refresh of the session id. It is important to make sure to only do it if/when it makes sense in order to avoid side effects, as a result
SessionDataSaveStrategy.onGet()
is not suited for stateless session data and shall not be used.Defaults to
SessionDataSaveStrategy.onSetOnly()
.- Parameters:
statelessSessionDataSaveStrategy
- a session data save strategy- Returns:
- the builder
-
build
Description copied from class:AbstractSessionStore.Builder
Builds a session store.
- Specified by:
build
in classAbstractSessionStore.Builder<A,
JWTSession<A, B>, RedisJWTSessionStore<A, B>, RedisJWTSessionStore.Builder<A, B>> - Returns:
- a new session store
-