Class DefaultInfinispanConnectionProvider
java.lang.Object
org.keycloak.connections.infinispan.DefaultInfinispanConnectionProvider
- All Implemented Interfaces:
InfinispanConnectionProvider,Provider
public class DefaultInfinispanConnectionProvider
extends Object
implements InfinispanConnectionProvider
- Author:
- Stian Thorgersen
-
Field Summary
Fields inherited from interface org.keycloak.connections.infinispan.InfinispanConnectionProvider
ACTION_TOKEN_CACHE, ACTION_TOKEN_CACHE_DEFAULT_MAX, ACTION_TOKEN_MAX_IDLE_SECONDS, ACTION_TOKEN_WAKE_UP_INTERVAL_SECONDS, ALL_CACHES_NAME, AUTHENTICATION_SESSIONS_CACHE_NAME, AUTHORIZATION_CACHE_NAME, AUTHORIZATION_REVISIONS_CACHE_DEFAULT_MAX, AUTHORIZATION_REVISIONS_CACHE_NAME, CLIENT_SESSION_CACHE_NAME, CLUSTERED_CACHE_NAMES, CRL_CACHE_DEFAULT_MAX, CRL_CACHE_NAME, JBOSS_NODE_NAME, JBOSS_SITE_NAME, JGROUPS_BIND_ADDR, JGROUPS_UDP_MCAST_ADDR, JMX_DOMAIN, KEYS_CACHE_DEFAULT_MAX, KEYS_CACHE_MAX_IDLE_SECONDS, KEYS_CACHE_NAME, LOCAL_CACHE_NAMES, LOGIN_FAILURE_CACHE_NAME, NODE_PREFIX, OFFLINE_CLIENT_SESSION_CACHE_NAME, OFFLINE_USER_SESSION_CACHE_NAME, REALM_CACHE_NAME, REALM_REVISIONS_CACHE_DEFAULT_MAX, REALM_REVISIONS_CACHE_NAME, USER_AND_CLIENT_SESSION_CACHES, USER_CACHE_NAME, USER_REVISIONS_CACHE_DEFAULT_MAX, USER_REVISIONS_CACHE_NAME, USER_SESSION_CACHE_NAME, WORK_CACHE_NAME -
Constructor Summary
ConstructorsConstructorDescriptionDefaultInfinispanConnectionProvider(org.infinispan.manager.EmbeddedCacheManager cacheManager, RemoteCacheProvider remoteCacheProvider, TopologyInfo topologyInfo) -
Method Summary
Modifier and TypeMethodDescriptionvoidclose()org.infinispan.util.concurrent.BlockingManagerReturns the InfinispanBlockingManager.<K,V> org.infinispan.Cache<K, V> Provides an instance if Infinispan cache by name<K,V> org.infinispan.client.hotrod.RemoteCache<K, V> getRemoteCache(String cacheName) Get remote cache of given name.Migrates the JBoss Marshalling encoding to Infinispan ProtoStreamMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.keycloak.connections.infinispan.InfinispanConnectionProvider
getCache, getExecutor
-
Constructor Details
-
DefaultInfinispanConnectionProvider
public DefaultInfinispanConnectionProvider(org.infinispan.manager.EmbeddedCacheManager cacheManager, RemoteCacheProvider remoteCacheProvider, TopologyInfo topologyInfo)
-
-
Method Details
-
getCache
Description copied from interface:InfinispanConnectionProviderProvides an instance if Infinispan cache by name- Specified by:
getCachein interfaceInfinispanConnectionProvider- Type Parameters:
K- key typeV- value type- Parameters:
name- name of the requested cachecreateIfAbsent- if true the connection provider will create the requested cache on method call if it does not exist- Returns:
- return a cache instance
-
getRemoteCache
Description copied from interface:InfinispanConnectionProviderGet remote cache of given name. Could just retrieve the remote cache from the remoteStore configured in given infinispan cache and/or alternatively return the secured remoteCache (remoteCache corresponding to secured hotrod endpoint)- Specified by:
getRemoteCachein interfaceInfinispanConnectionProvider
-
getTopologyInfo
- Specified by:
getTopologyInfoin interfaceInfinispanConnectionProvider- Returns:
- Information about cluster topology
-
migrateToProtoStream
Description copied from interface:InfinispanConnectionProviderMigrates the JBoss Marshalling encoding to Infinispan ProtoStream- Specified by:
migrateToProtoStreamin interfaceInfinispanConnectionProvider- Returns:
- A
CompletionStageto signal when the operator is completed.
-
getScheduledExecutor
- Specified by:
getScheduledExecutorin interfaceInfinispanConnectionProvider- Returns:
- The Infinispan
ScheduledExecutorService. Long or blocking operations must not be executed directly.
-
getBlockingManager
public org.infinispan.util.concurrent.BlockingManager getBlockingManager()Description copied from interface:InfinispanConnectionProviderReturns the InfinispanBlockingManager.The
BlockingManagershould be used to execute blocking operation like disk I/O. It offloads the task to the Infinispan blocking thread pool.- Specified by:
getBlockingManagerin interfaceInfinispanConnectionProvider- Returns:
- The Infinispan
BlockingManager.
-
close
public void close()
-