Class SessionHandler
- All Implemented Interfaces:
MutinyDelegate,io.vertx.core.Handler<RoutingContext>,PlatformHandler,Consumer<RoutingContext>
Session for each browser
session.
It looks up the session for each request based on a session cookie which contains a session ID. It stores the session when the response is ended in the session store.
The session is available on the routing context with .
NOTE: This class has been automatically generated from theoriginal non Mutiny-ified interface using Vert.x codegen.-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final TypeArg<SessionHandler>static final booleanDefault of whether the cookie has the HttpOnly flag set More info: https://www.owasp.org/index.php/HttpOnlystatic final booleanDefault of whether the cookie has the 'secure' flag set to allow transmission over https only.static final booleanDefault of whether the session should be created lazily.static final booleanDefault of whether a nagging log warning should be written if the session handler is accessed over HTTP, not HTTPSstatic final StringDefault name of session cookiestatic final StringDefault path of session cookiestatic final longDefault time, in ms, that a session lasts for without being accessed before expiring.static final intDefault min length for a session id. -
Constructor Summary
ConstructorsConstructorDescriptionSessionHandler(io.vertx.ext.web.handler.SessionHandler delegate) SessionHandler(Object delegate) -
Method Summary
Modifier and TypeMethodDescriptionvoidaccept(RoutingContext item) static SessionHandlercreate(SessionStore sessionStore) booleanio.smallrye.mutiny.Uni<Void>flush(RoutingContext ctx) Flush a context session earlier to the store, this will allow the end user to have full control on the event of a failure at the store level.io.smallrye.mutiny.Uni<Void>flush(RoutingContext ctx, boolean ignoreStatus) Flush a context session earlier to the store, this will allow the end user to have full control on the event of a failure at the store level.Blocking variant offlush(io.vertx.mutiny.ext.web.RoutingContext).flushAndAwait(RoutingContext ctx, boolean ignoreStatus) Blocking variant offlush(io.vertx.mutiny.ext.web.RoutingContext,boolean).Variant offlush(io.vertx.mutiny.ext.web.RoutingContext)that ignores the result of the operation.flushAndForget(RoutingContext ctx, boolean ignoreStatus) Variant offlush(io.vertx.mutiny.ext.web.RoutingContext,boolean)that ignores the result of the operation.io.vertx.ext.web.handler.SessionHandlervoidhandle(RoutingContext arg0) inthashCode()static SessionHandlernewInstance(io.vertx.ext.web.handler.SessionHandler arg) newSession(RoutingContext context) setCookieHttpOnlyFlag(boolean httpOnly) setCookieless(boolean cookieless) setCookieMaxAge(long cookieMaxAge) setCookieSameSite(io.vertx.core.http.CookieSameSite policy) setCookieSecureFlag(boolean secure) setLazySession(boolean lazySession) setMinLength(int minLength) setNagHttps(boolean nag) setSessionCookieName(String sessionCookieName) setSessionCookiePath(String sessionCookiePath) setSessionTimeout(long timeout) io.smallrye.mutiny.Uni<Void>setUser(RoutingContext context, User user) Set the user for the sessionsetUserAndAwait(RoutingContext context, User user) Blocking variant ofsetUser(io.vertx.mutiny.ext.web.RoutingContext,io.vertx.mutiny.ext.auth.User).setUserAndForget(RoutingContext context, User user) Variant ofsetUser(io.vertx.mutiny.ext.web.RoutingContext,io.vertx.mutiny.ext.auth.User)that ignores the result of the operation.toString()
-
Field Details
-
__TYPE_ARG
-
DEFAULT_SESSION_COOKIE_NAME
Default name of session cookie- See Also:
-
DEFAULT_SESSION_COOKIE_PATH
Default path of session cookie- See Also:
-
DEFAULT_SESSION_TIMEOUT
public static final long DEFAULT_SESSION_TIMEOUTDefault time, in ms, that a session lasts for without being accessed before expiring.- See Also:
-
DEFAULT_NAG_HTTPS
public static final boolean DEFAULT_NAG_HTTPSDefault of whether a nagging log warning should be written if the session handler is accessed over HTTP, not HTTPS- See Also:
-
DEFAULT_COOKIE_HTTP_ONLY_FLAG
public static final boolean DEFAULT_COOKIE_HTTP_ONLY_FLAGDefault of whether the cookie has the HttpOnly flag set More info: https://www.owasp.org/index.php/HttpOnly- See Also:
-
DEFAULT_COOKIE_SECURE_FLAG
public static final boolean DEFAULT_COOKIE_SECURE_FLAGDefault of whether the cookie has the 'secure' flag set to allow transmission over https only. More info: https://www.owasp.org/index.php/SecureFlag- See Also:
-
DEFAULT_SESSIONID_MIN_LENGTH
public static final int DEFAULT_SESSIONID_MIN_LENGTHDefault min length for a session id. More info: https://www.owasp.org/index.php/Session_Management_Cheat_Sheet- See Also:
-
DEFAULT_LAZY_SESSION
public static final boolean DEFAULT_LAZY_SESSIONDefault of whether the session should be created lazily.- See Also:
-
-
Constructor Details
-
SessionHandler
public SessionHandler(io.vertx.ext.web.handler.SessionHandler delegate) -
SessionHandler
-
-
Method Details
-
getDelegate
public io.vertx.ext.web.handler.SessionHandler getDelegate()- Specified by:
getDelegatein interfaceMutinyDelegate- Specified by:
getDelegatein interfacePlatformHandler- Returns:
- the delegate used by this Mutiny object of generated type
-
toString
-
equals
-
hashCode
public int hashCode() -
handle
- Specified by:
handlein interfaceio.vertx.core.Handler<RoutingContext>- Specified by:
handlein interfacePlatformHandler
-
create
- Parameters:
sessionStore- the session store- Returns:
- the handler
-
setSessionTimeout
- Parameters:
timeout- the timeout, in ms.- Returns:
- a reference to this, so the API can be used fluently
-
setNagHttps
- Parameters:
nag- true to nag- Returns:
- a reference to this, so the API can be used fluently
-
setCookieSecureFlag
- Parameters:
secure- true to set the secure flag on the cookie- Returns:
- a reference to this, so the API can be used fluently
-
setCookieHttpOnlyFlag
- Parameters:
httpOnly- true to set the HttpOnly flag on the cookie- Returns:
- a reference to this, so the API can be used fluently
-
setSessionCookieName
- Parameters:
sessionCookieName- the session cookie name- Returns:
- a reference to this, so the API can be used fluently
-
setSessionCookiePath
- Parameters:
sessionCookiePath- the session cookie path- Returns:
- a reference to this, so the API can be used fluently
-
setMinLength
- Parameters:
minLength- the session id minimal length- Returns:
- a reference to this, so the API can be used fluently
-
setCookieSameSite
- Parameters:
policy- to use,nullfor no policy.- Returns:
- a reference to this, so the API can be used fluently
-
setLazySession
- Parameters:
lazySession- true to have a lazy session creation.- Returns:
- a reference to this, so the API can be used fluently
-
setCookieMaxAge
- Parameters:
cookieMaxAge- a non negative max-age, note that 0 means expire now.- Returns:
- a reference to this, so the API can be used fluently
-
flush
Flush a context session earlier to the store, this will allow the end user to have full control on the event of a failure at the store level. Once a session is flushed no automatic save will be performed at end of request.Unlike the bare Vert.x variant, this method returns a
Uni. Don't forget to subscribe on it to trigger the operation.- Parameters:
ctx- the current context- Returns:
- the
unifiring the result of the operation when completed, or a failure if the operation failed.
-
flushAndAwait
Blocking variant offlush(io.vertx.mutiny.ext.web.RoutingContext).This method waits for the completion of the underlying asynchronous operation. If the operation completes successfully, the result is returned, otherwise the failure is thrown (potentially wrapped in a RuntimeException).
- Parameters:
ctx- the current context- Returns:
- the Void instance produced by the operation.
-
flushAndForget
Variant offlush(io.vertx.mutiny.ext.web.RoutingContext)that ignores the result of the operation.This method subscribes on the result of
flush(io.vertx.mutiny.ext.web.RoutingContext), but discards the outcome (item or failure). This method is useful to trigger the asynchronous operation fromflush(io.vertx.mutiny.ext.web.RoutingContext)but you don't need to compose it with other operations.- Parameters:
ctx- the current context- Returns:
- the instance of SessionHandler to chain method calls.
-
flush
@CheckReturnValue public io.smallrye.mutiny.Uni<Void> flush(RoutingContext ctx, boolean ignoreStatus) Flush a context session earlier to the store, this will allow the end user to have full control on the event of a failure at the store level. Once a session is flushed no automatic save will be performed at end of request.Unlike the bare Vert.x variant, this method returns a
Uni. Don't forget to subscribe on it to trigger the operation.- Parameters:
ctx- the current contextignoreStatus- flush regardless of response status code- Returns:
- the
unifiring the result of the operation when completed, or a failure if the operation failed.
-
flushAndAwait
Blocking variant offlush(io.vertx.mutiny.ext.web.RoutingContext,boolean).This method waits for the completion of the underlying asynchronous operation. If the operation completes successfully, the result is returned, otherwise the failure is thrown (potentially wrapped in a RuntimeException).
- Parameters:
ctx- the current contextignoreStatus- flush regardless of response status code- Returns:
- the Void instance produced by the operation.
-
flushAndForget
Variant offlush(io.vertx.mutiny.ext.web.RoutingContext,boolean)that ignores the result of the operation.This method subscribes on the result of
flush(io.vertx.mutiny.ext.web.RoutingContext,boolean), but discards the outcome (item or failure). This method is useful to trigger the asynchronous operation fromflush(io.vertx.mutiny.ext.web.RoutingContext,boolean)but you don't need to compose it with other operations.- Parameters:
ctx- the current contextignoreStatus- flush regardless of response status code- Returns:
- the instance of SessionHandler to chain method calls.
-
setCookieless
- Parameters:
cookieless- true if a cookieless session should be used- Returns:
- a reference to this, so the API can be used fluently
-
newSession
- Parameters:
context- the routing context- Returns:
- the session
-
setUser
Set the user for the sessionUnlike the bare Vert.x variant, this method returns a
Uni. Don't forget to subscribe on it to trigger the operation.- Parameters:
context- the routing contextuser- the user- Returns:
- the
unifiring the result of the operation when completed, or a failure if the operation failed.
-
setUserAndAwait
Blocking variant ofsetUser(io.vertx.mutiny.ext.web.RoutingContext,io.vertx.mutiny.ext.auth.User).This method waits for the completion of the underlying asynchronous operation. If the operation completes successfully, the result is returned, otherwise the failure is thrown (potentially wrapped in a RuntimeException).
- Parameters:
context- the routing contextuser- the user- Returns:
- the Void instance produced by the operation.
-
setUserAndForget
Variant ofsetUser(io.vertx.mutiny.ext.web.RoutingContext,io.vertx.mutiny.ext.auth.User)that ignores the result of the operation.This method subscribes on the result of
setUser(io.vertx.mutiny.ext.web.RoutingContext,io.vertx.mutiny.ext.auth.User), but discards the outcome (item or failure). This method is useful to trigger the asynchronous operation fromsetUser(io.vertx.mutiny.ext.web.RoutingContext,io.vertx.mutiny.ext.auth.User)but you don't need to compose it with other operations.- Parameters:
context- the routing contextuser- the user- Returns:
- the instance of SessionHandler to chain method calls.
-
accept
- Specified by:
acceptin interfaceConsumer<RoutingContext>- Specified by:
acceptin interfacePlatformHandler
-
newInstance
-