Module io.inverno.mod.security.http
Class LogoutActionHandler<A extends Authentication,B extends Identity,C extends AccessController,D extends SecurityContext<B,C>,E extends Exchange<D>>
java.lang.Object
io.inverno.mod.security.http.login.LogoutActionHandler<A,B,C,D,E>
- Type Parameters:
A- the authentication typeB- the identity typeC- the access controller typeD- the security context typeE- the exchange type
- All Implemented Interfaces:
ExchangeHandler<D,,E> ReactiveExchangeHandler<D,E>
public class LogoutActionHandler<A extends Authentication,B extends Identity,C extends AccessController,D extends SecurityContext<B,C>,E extends Exchange<D>>
extends Object
implements ExchangeHandler<D,E>
An exchange handler that logs out a logged in entity and delegates further processing to a success handler.
A logout action handler is used whenever there is a need to explicitly invalidate an authentication (e.g. invalidate a token credentials) or free resources locked by that authentication (e.g.
remove a session). It uses an AuthenticationReleaser to release the authentication and a LogoutSuccessHandler to handle successful logouts.
- Since:
- 1.5
- Author:
- Jeremy Kuhn
-
Constructor Summary
ConstructorsConstructorDescriptionLogoutActionHandler(AuthenticationReleaser<A> authenticationReleaser) Creates a logout action handler with the specified authentication releaser.LogoutActionHandler(AuthenticationReleaser<A> authenticationReleaser, LogoutSuccessHandler<A, B, C, D, E> logoutSuccessHandler) Creates a logout action handler with the specified authentication releaser and logout success handler. -
Method Summary
Modifier and TypeMethodDescriptionreactor.core.publisher.Mono<Void> Returns the authentication releaser.Returns the logout success handler.voidMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface io.inverno.mod.http.server.ReactiveExchangeHandler
intercept
-
Constructor Details
-
LogoutActionHandler
Creates a logout action handler with the specified authentication releaser.
- Parameters:
authenticationReleaser- an authentication releaser
-
LogoutActionHandler
public LogoutActionHandler(AuthenticationReleaser<A> authenticationReleaser, LogoutSuccessHandler<A, B, C, D, E> logoutSuccessHandler) Creates a logout action handler with the specified authentication releaser and logout success handler.
- Parameters:
authenticationReleaser- an authentication releaserlogoutSuccessHandler- a logout success handler
-
-
Method Details
-
getAuthenticationReleaser
Returns the authentication releaser.
- Returns:
- the authentication releaser
-
getLogoutSuccessHandler
Returns the logout success handler.
- Returns:
- the logout success handler
-
defer
- Specified by:
deferin interfaceExchangeHandler<A extends Authentication,B extends Identity> - Specified by:
deferin interfaceReactiveExchangeHandler<A extends Authentication,B extends Identity>
-
handle
- Specified by:
handlein interfaceExchangeHandler<A extends Authentication,B extends Identity> - Throws:
io.inverno.mod.http.base.HttpException
-