Interface KeycloakSession

All Superinterfaces:
AutoCloseable
All Known Implementing Classes:
DefaultKeycloakSession

public interface KeycloakSession extends AutoCloseable
Version:
$Revision: 1 $
Author:
Bill Burke
  • Method Details

    • getContext

      KeycloakContext getContext()
    • getTransactionManager

      KeycloakTransactionManager getTransactionManager()
    • getProvider

      <T extends Provider> T getProvider(Class<T> clazz)
      Get dedicated provider instance of provider type clazz that was created for this session. If one hasn't been created yet, find the factory and allocate by calling ProviderFactory.create(KeycloakSession). The provider to use is determined by the "provider" config entry in keycloak-server boot configuration. (keycloak-server.json)
      Type Parameters:
      T -
      Parameters:
      clazz -
      Returns:
    • getProvider

      <T extends Provider> T getProvider(Class<T> clazz, String id)
      Get dedicated provider instance for a specific provider factory of id of provider type clazz that was created for this session. If one hasn't been created yet, find the factory and allocate by calling ProviderFactory.create(KeycloakSession).
      Type Parameters:
      T -
      Parameters:
      clazz -
      id -
      Returns:
    • getComponentProvider

      <T extends Provider> T getComponentProvider(Class<T> clazz, String componentId)
      Returns a component provider for a component from the realm that is relevant to this session. The relevant realm must be set prior to calling this method in the context, see KeycloakContext.getRealm().
      Type Parameters:
      T -
      Parameters:
      clazz -
      componentId - Component configuration
      Returns:
      Provider configured according to the , null if it cannot be instantiated.
      Throws:
      IllegalArgumentException - If the realm is not set in the context.
    • getComponentProvider

      <T extends Provider> T getComponentProvider(Class<T> clazz, String componentId, Function<KeycloakSessionFactory,ComponentModel> modelGetter)
      Returns a component provider for a component from the realm that is relevant to this session. The relevant realm must be set prior to calling this method in the context, see KeycloakContext.getRealm().
      Type Parameters:
      T -
      Parameters:
      clazz -
      componentId - Component configuration
      modelGetter - Getter to retrieve componentModel
      Returns:
      Provider configured according to the , null if it cannot be instantiated.
      Throws:
      IllegalArgumentException - If the realm is not set in the context.
    • getProvider

      @Deprecated <T extends Provider> T getProvider(Class<T> clazz, ComponentModel componentModel)
      Deprecated.
      Deprecated in favor of {@link #getComponentProvider)
      Type Parameters:
      T -
      Parameters:
      clazz -
      componentModel -
      Returns:
    • listProviderIds

      <T extends Provider> Set<String> listProviderIds(Class<T> clazz)
      Get all provider factories that manage provider instances of class.
      Type Parameters:
      T -
      Parameters:
      clazz -
      Returns:
    • getAllProviders

      <T extends Provider> Set<T> getAllProviders(Class<T> clazz)
    • getProviderClass

      Class<? extends Provider> getProviderClass(String providerClassName)
    • getAttribute

      Object getAttribute(String attribute)
    • getAttribute

      <T> T getAttribute(String attribute, Class<T> clazz)
    • getAttributeOrDefault

      default <T> T getAttributeOrDefault(String attribute, T defaultValue)
    • removeAttribute

      Object removeAttribute(String attribute)
    • setAttribute

      void setAttribute(String name, Object value)
    • getAttributes

      Map<String,Object> getAttributes()
    • invalidate

      void invalidate(InvalidationHandler.InvalidableObjectType type, Object... params)
      Invalidates intermediate states of the given objects, both immediately and at the end of this session.
      Parameters:
      type - Type of the objects to invalidate
      params - Parameters used for the invalidation
    • enlistForClose

      void enlistForClose(Provider provider)
    • getKeycloakSessionFactory

      KeycloakSessionFactory getKeycloakSessionFactory()
    • realms

      RealmProvider realms()
      Returns a managed provider instance. Will start a provider transaction. This transaction is managed by the KeycloakSession transaction.
      Returns:
      Throws:
      IllegalStateException - if transaction is not active
    • clients

      ClientProvider clients()
      Returns a managed provider instance. Will start a provider transaction. This transaction is managed by the KeycloakSession transaction.
      Returns:
      Throws:
      IllegalStateException - if transaction is not active
    • clientScopes

      ClientScopeProvider clientScopes()
      Returns a managed provider instance. Will start a provider transaction. This transaction is managed by the KeycloakSession transaction.
      Returns:
      Currently used ClientScopeProvider instance.
      Throws:
      IllegalStateException - if transaction is not active
    • groups

      GroupProvider groups()
      Returns a managed group provider instance.
      Returns:
      Currently used GroupProvider instance.
      Throws:
      IllegalStateException - if transaction is not active
    • roles

      RoleProvider roles()
      Returns a managed provider instance. Will start a provider transaction. This transaction is managed by the KeycloakSession transaction.
      Returns:
      Throws:
      IllegalStateException - if transaction is not active
    • sessions

      Returns a managed provider instance. Will start a provider transaction. This transaction is managed by the KeycloakSession transaction.
      Returns:
      Throws:
      IllegalStateException - if transaction is not active
    • loginFailures

      UserLoginFailureProvider loginFailures()
      Returns a managed provider instance. Will start a provider transaction. This transaction is managed by the KeycloakSession transaction.
      Returns:
      UserLoginFailureProvider
      Throws:
      IllegalStateException - if transaction is not active
    • authenticationSessions

      AuthenticationSessionProvider authenticationSessions()
    • singleUseObjects

      SingleUseObjectProvider singleUseObjects()
    • close

      void close()
      Specified by:
      close in interface AutoCloseable
    • users

      UserProvider users()
      A cached view of all users in system including users loaded by UserStorageProviders
      Returns:
      UserProvider instance
    • keys

      KeyManager keys()
      Key manager
      Returns:
    • theme

      ThemeManager theme()
      Theme manager
      Returns:
    • tokens

      TokenManager tokens()
      Token manager
      Returns:
    • vault

      Vault transcriber
    • clientPolicy

      ClientPolicyManager clientPolicy()
      Client Policy Manager
    • isClosed

      boolean isClosed()