Interface WebAuthSession
public interface WebAuthSession
A WebAuthSession manages a user's
WebAuthSessionContext for a given IdP based on incoming
WebAuthResponseContext updates, Security Zones, and any other contextual information available. The
WebAuthSession posts a WebAuthSessionChangeEvent to its EventBus when the
WebAuthSessionContext changes so that any listener may pull the new value by calling getContext().-
Method Summary
Modifier and TypeMethodDescriptioncom.google.common.eventbus.EventBusgetName()logout()Clears the user from thisWebAuthSessionClears the user from thisWebAuthSessionvoidonLoginResponse(WebAuthResponseContext webAuthResponseContext) Push a newWebAuthResponseContextwhen the user logs in from the IdPvoidonLogoutResponse(WebAuthResponseContext webAuthResponseContext) Push a newWebAuthResponseContextwhen the user logs out from the IdPvoidshutdown()Shut down the session.voidstartup()Start up the session.
-
Method Details
-
startup
void startup()Start up the session. May only be called once.- Throws:
IllegalStateException- if the session was already started or shut down
-
shutdown
void shutdown()Shut down the session. May only be called once after startup.- Throws:
IllegalStateException- if the session was already shut down or if it was never started
-
getName
- Returns:
- an
Optionalcontaining the IdP Adapter name associated with this session or an empty Optional if the IdP Adapter name is null
-
getContext
- Returns:
- the latest
WebAuthSessionContext
-
onLoginResponse
Push a newWebAuthResponseContextwhen the user logs in from the IdP- Parameters:
webAuthResponseContext- theWebAuthResponseContext- Throws:
IllegalStateException- if the session is not running
-
onLogoutResponse
Push a newWebAuthResponseContextwhen the user logs out from the IdP- Parameters:
webAuthResponseContext- theWebAuthResponseContext- Throws:
IllegalStateException- if the session is not running
-
logout
Clears the user from thisWebAuthSession- Returns:
- an optional signed attributes document used as a hint to the IdP during logout
-
logout
Clears the user from thisWebAuthSession- Parameters:
message- an optional message to include with the logout event- Returns:
- an optional signed attributes document used as a hint to the IdP during logout
-
getEventBus
@Nonnull com.google.common.eventbus.EventBus getEventBus()WebAuthSessionChangeEvents will be posted to theEventBuswhen theWebAuthSessionhas changed. Interested parties may callEventBus.register(Object)to listen for changes.- Returns:
- the
EventBusfor thisWebAuthSession
-