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, UNSUPPORTED -
Constructor Summary
ConstructorsConstructorDescriptionJwtSessionStore(io.jooby.SessionToken token, String key) Creates a JSON Web Token session store.JwtSessionStore(io.jooby.SessionToken token, SecretKey key) Creates a JSON Web Token session store. -
Method Summary
Modifier and TypeMethodDescriptionvoiddeleteSession(io.jooby.Context ctx, io.jooby.Session session) @Nullable 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. Session token is usually aSessionToken.signedCookie(Cookie),SessionToken.header(String)or combination of both.- Parameters:
token- Session token.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:
token- Session token.key- Secret key.
-
-
Method Details
-
newSession
public io.jooby.Session newSession(io.jooby.Context ctx) - Specified by:
newSessionin interfaceio.jooby.SessionStore
-
findSession
public @Nullable io.jooby.Session findSession(io.jooby.Context ctx) - Specified by:
findSessionin interfaceio.jooby.SessionStore
-
deleteSession
public void deleteSession(io.jooby.Context ctx, io.jooby.Session session) - Specified by:
deleteSessionin interfaceio.jooby.SessionStore
-
touchSession
public void touchSession(io.jooby.Context ctx, io.jooby.Session session) - Specified by:
touchSessionin interfaceio.jooby.SessionStore
-
saveSession
public void saveSession(io.jooby.Context ctx, io.jooby.Session session) - Specified by:
saveSessionin interfaceio.jooby.SessionStore
-
renewSessionId
public void renewSessionId(io.jooby.Context ctx, io.jooby.Session session) - Specified by:
renewSessionIdin interfaceio.jooby.SessionStore
-