Interface WebAuthSession
-
public interface WebAuthSessionA WebAuthSession manages a user'sWebAuthSessionContextfor a given IdP based on incomingWebAuthResponseContextupdates, Security Zones, and any other contextual information available. The WebAuthSession notifies the listener passed duringstartup(Runnable)when the WebAuthSessionContext changes so that the listener may pull the new value by callinggetContext().
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description WebAuthSessionContextgetContext()java.util.Optional<java.lang.String>getIdpId()voidlogout()Clears 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(java.lang.Runnable listener)Start up the session.
-
-
-
Method Detail
-
startup
void startup(@Nonnull java.lang.Runnable listener)Start up the session. May only be called once. The givenlisteneris called for any changes to theWebAuthSessionContext- Parameters:
listener- theRunnablewhich will be called when theWebAuthSessionContextchanges- Throws:
java.lang.IllegalStateException- if the session was already started or shut down
-
shutdown
void shutdown()
Shut down the session. May only be called once after startup. The listener passed intostartup(Runnable)will no longer be called when theWebAuthSessionContextchanges and the listener's reference will be released.- Throws:
java.lang.IllegalStateException- if the session was already shut down or if it was never started
-
getIdpId
@Nonnull java.util.Optional<java.lang.String> getIdpId()
- Returns:
- an
Optionalcontaining the IdP Adapter ID associated with this session or an empty Optional if the IdP Adapter ID is null
-
getContext
@Nonnull WebAuthSessionContext getContext()
- Returns:
- the latest
WebAuthSessionContext
-
onLoginResponse
void onLoginResponse(@Nonnull WebAuthResponseContext webAuthResponseContext)Push a newWebAuthResponseContextwhen the user logs in from the IdP- Parameters:
webAuthResponseContext- theWebAuthResponseContext- Throws:
java.lang.IllegalStateException- if the session is not running
-
onLogoutResponse
void onLogoutResponse(@Nonnull WebAuthResponseContext webAuthResponseContext)Push a newWebAuthResponseContextwhen the user logs out from the IdP- Parameters:
webAuthResponseContext- theWebAuthResponseContext- Throws:
java.lang.IllegalStateException- if the session is not running
-
logout
void logout()
Clears the user from thisWebAuthSession
-
-