org.keycloak.adapters.jetty.core

## Class AbstractJettySessionTokenStore

- java.lang.Object
- - org.keycloak.adapters.jetty.core.AbstractJettySessionTokenStore

- All Implemented Interfaces:
    AdapterTokenStore
  Direct Known Subclasses:
    JettySessionTokenStore

      public abstract class AbstractJettySessionTokenStore
      extends Object
      implements AdapterTokenStore

  Handle storage of token info in HTTP Session. Per-request object
  Author:
    Marek Posolda

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static String` | `__J_METHOD`
    `protected KeycloakDeployment` | `deployment`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `AbstractJettySessionTokenStore(org.eclipse.jetty.server.Request request, KeycloakDeployment deployment)`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `checkCurrentToken()` Impl can validate if current token exists and perform refreshing if it exists and is expired
    `boolean` | `isCached(RequestAuthenticator authenticator)` Check if we are logged already (we have already valid and successfully refreshed accessToken).
    `void` | `logout()` Handle logout on store side and possibly propagate logout call to Keycloak
    `void` | `refreshCallback(RefreshableKeycloakSecurityContext securityContext)` Callback invoked after successful token refresh
    `void` | `saveAccountInfo(KeycloakAccount account)` Finish successful OAuth2 login and store validated account

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

    - ### Methods inherited from interface org.keycloak.adapters.AdapterTokenStore

      `restoreRequest, saveRequest`

- - ### Field Detail

    - #### __J_METHOD

          public static final String __J_METHOD

      See Also:
        Constant Field Values

    - #### deployment

          protected KeycloakDeployment deployment

  - ### Constructor Detail

    - #### AbstractJettySessionTokenStore

          public AbstractJettySessionTokenStore(org.eclipse.jetty.server.Request request,
                                        KeycloakDeployment deployment)

  - ### Method Detail

    - #### checkCurrentToken

          public void checkCurrentToken()

      Description copied from interface: `AdapterTokenStore`
      Impl can validate if current token exists and perform refreshing if it exists and is expired
      Specified by:
        `checkCurrentToken` in interface `AdapterTokenStore`

    - #### isCached

          public boolean isCached(RequestAuthenticator authenticator)

      Description copied from interface: `AdapterTokenStore`
      Check if we are logged already (we have already valid and successfully refreshed accessToken). Establish security context if yes
      Specified by:
        `isCached` in interface `AdapterTokenStore`
      Parameters:
        `authenticator` - used for actual request authentication
      Returns:
        true if we are logged-in already

    - #### saveAccountInfo

          public void saveAccountInfo(KeycloakAccount account)

      Description copied from interface: `AdapterTokenStore`
      Finish successful OAuth2 login and store validated account
      Specified by:
        `saveAccountInfo` in interface `AdapterTokenStore`

    - #### logout

          public void logout()

      Description copied from interface: `AdapterTokenStore`
      Handle logout on store side and possibly propagate logout call to Keycloak
      Specified by:
        `logout` in interface `AdapterTokenStore`

    - #### refreshCallback

          public void refreshCallback(RefreshableKeycloakSecurityContext securityContext)

      Description copied from interface: `AdapterTokenStore`
      Callback invoked after successful token refresh
      Specified by:
        `refreshCallback` in interface `AdapterTokenStore`
      Parameters:
        `securityContext` - context where refresh was performed

Copyright © 2015. All Rights Reserved.