Class ImportSessionFactoryWrapper
java.lang.Object
org.keycloak.models.map.datastore.ImportSessionFactoryWrapper
- All Implemented Interfaces:
KeycloakSessionFactory,InvalidationHandler,ProviderEventManager
This wraps an existing KeycloakSessionFactory and redirects all calls to a
MapStorageProvider to
ConcurrentHashMapStorageProvider. This allows all operations to
be in-memory. The final contents of the store can then be copied over to the final store once the import is complete.
For this to work, the CHM provider needs to be registered as a provider.- Author:
- Alexander Schwartz
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.keycloak.provider.InvalidationHandler
InvalidationHandler.InvalidableObjectType, InvalidationHandler.ObjectType -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidclose()create()getProviderFactoriesStream(Class<? extends Provider> clazz) Returns stream of provider factories for the given provider.<T extends Provider>
ProviderFactory<T>getProviderFactory(Class<T> clazz) <T extends Provider>
ProviderFactory<T>getProviderFactory(Class<T> clazz, String id) <T extends Provider>
ProviderFactory<T>getProviderFactory(Class<T> clazz, String realmId, String componentId, Function<KeycloakSessionFactory, ComponentModel> modelGetter) longgetSpis()voidinvalidate(KeycloakSession session, InvalidationHandler.InvalidableObjectType type, Object... params) Invalidates intermediate states of the given objectsvoidpublish(ProviderEvent event) voidregister(ProviderEventListener listener) voidunregister(ProviderEventListener listener)
-
Constructor Details
-
ImportSessionFactoryWrapper
-
-
Method Details
-
create
- Specified by:
createin interfaceKeycloakSessionFactory
-
getSpis
- Specified by:
getSpisin interfaceKeycloakSessionFactory
-
getSpi
- Specified by:
getSpiin interfaceKeycloakSessionFactory
-
getProviderFactory
- Specified by:
getProviderFactoryin interfaceKeycloakSessionFactory
-
getProviderFactory
- Specified by:
getProviderFactoryin interfaceKeycloakSessionFactory
-
getProviderFactory
public <T extends Provider> ProviderFactory<T> getProviderFactory(Class<T> clazz, String realmId, String componentId, Function<KeycloakSessionFactory, ComponentModel> modelGetter) - Specified by:
getProviderFactoryin interfaceKeycloakSessionFactory
-
getProviderFactoriesStream
Description copied from interface:KeycloakSessionFactoryReturns stream of provider factories for the given provider.- Specified by:
getProviderFactoriesStreamin interfaceKeycloakSessionFactory- Parameters:
clazz-Class<? extends Provider>- Returns:
Stream<ProviderFactory>Stream of provider factories. Never returnsnull.
-
getServerStartupTimestamp
public long getServerStartupTimestamp()- Specified by:
getServerStartupTimestampin interfaceKeycloakSessionFactory
-
close
public void close()- Specified by:
closein interfaceKeycloakSessionFactory
-
invalidate
public void invalidate(KeycloakSession session, InvalidationHandler.InvalidableObjectType type, Object... params) Description copied from interface:InvalidationHandlerInvalidates intermediate states of the given objects- Specified by:
invalidatein interfaceInvalidationHandler- Parameters:
session- KeycloakSessiontype- Type of the objects to invalidateparams- Parameters used for the invalidation
-
register
- Specified by:
registerin interfaceProviderEventManager
-
unregister
- Specified by:
unregisterin interfaceProviderEventManager
-
publish
- Specified by:
publishin interfaceProviderEventManager
-