java.lang.Object
io.jooby.jwt.JwtSessionStore
- All Implemented Interfaces:
io.jooby.SessionStore
A HTTP cookie session store using JSON Web Token. Usage:
{
String key = "256 bit key"
setSessionStore(new JwtSession(key));
}
It uses HMAC-SHA-256 for signing the cookie. Secret key and cookie option can be
specify programmatically or in your application configuration file.
This session store delegates to SessionStore.signed(SessionToken, Function, Function)
using JSON Web Token library.
- Since:
- 2.2.0
- Author:
- edgar
-
Nested Class Summary
Nested classes/interfaces inherited from interface io.jooby.SessionStore
io.jooby.SessionStore.InMemory -
Field Summary
Fields inherited from interface io.jooby.SessionStore
DEFAULT_TIMEOUT -
Constructor Summary
ConstructorsConstructorDescriptionJwtSessionStore(String key) Creates a JSON Web Token session store.JwtSessionStore(String key, io.jooby.SessionToken token) Creates a JSON Web Token session store.JwtSessionStore(Key key, io.jooby.SessionToken token) Creates a JSON Web Token session store. -
Method Summary
Modifier and TypeMethodDescriptionvoiddeleteSession(io.jooby.Context ctx, io.jooby.Session session) io.jooby.SessionfindSession(io.jooby.Context ctx) io.jooby.SessionnewSession(io.jooby.Context ctx) voidrenewSessionId(io.jooby.Context ctx, io.jooby.Session session) voidsaveSession(io.jooby.Context ctx, io.jooby.Session session) voidtouchSession(io.jooby.Context ctx, io.jooby.Session session)
-
Constructor Details
-
JwtSessionStore
Creates a JSON Web Token session store. It uses a cookie token:SessionToken.SID.- Parameters:
key- Secret key.
-
JwtSessionStore
Creates a JSON Web Token session store. Session token is usually aSessionToken.signedCookie(Cookie),SessionToken.header(String)or combination of both.- Parameters:
key- Secret key.token- Session token.
-
JwtSessionStore
Creates a JSON Web Token session store. Session token is usually aSessionToken.signedCookie(Cookie),SessionToken.header(String)or combination of both.- Parameters:
key- Secret key.token- Session token.
-
-
Method Details
-
newSession
@NonNull public io.jooby.Session newSession(@NonNull io.jooby.Context ctx) - Specified by:
newSessionin interfaceio.jooby.SessionStore
-
findSession
@Nullable public io.jooby.Session findSession(@NonNull io.jooby.Context ctx) - Specified by:
findSessionin interfaceio.jooby.SessionStore
-
deleteSession
public void deleteSession(@NonNull io.jooby.Context ctx, @NonNull io.jooby.Session session) - Specified by:
deleteSessionin interfaceio.jooby.SessionStore
-
touchSession
public void touchSession(@NonNull io.jooby.Context ctx, @NonNull io.jooby.Session session) - Specified by:
touchSessionin interfaceio.jooby.SessionStore
-
saveSession
public void saveSession(@NonNull io.jooby.Context ctx, @NonNull io.jooby.Session session) - Specified by:
saveSessionin interfaceio.jooby.SessionStore
-
renewSessionId
public void renewSessionId(@NonNull io.jooby.Context ctx, @NonNull io.jooby.Session session) - Specified by:
renewSessionIdin interfaceio.jooby.SessionStore
-