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, 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_CACHE_NAME, USER_REVISIONS_CACHE_DEFAULT_MAX, USER_REVISIONS_CACHE_NAME, USER_SESSION_CACHE_NAME, WORK_CACHE_NAME
-
Constructor Summary
ConstructorDescriptionDefaultInfinispanConnectionProvider
(org.infinispan.manager.EmbeddedCacheManager cacheManager, RemoteCacheProvider remoteCacheProvider, TopologyInfo topologyInfo) -
Method Summary
Modifier and TypeMethodDescriptionvoid
close()
org.infinispan.util.concurrent.BlockingManager
Returns 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, wait
Methods 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:InfinispanConnectionProvider
Provides an instance if Infinispan cache by name- Specified by:
getCache
in 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:InfinispanConnectionProvider
Get 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:
getRemoteCache
in interfaceInfinispanConnectionProvider
-
getTopologyInfo
- Specified by:
getTopologyInfo
in interfaceInfinispanConnectionProvider
- Returns:
- Information about cluster topology
-
migrateToProtoStream
Description copied from interface:InfinispanConnectionProvider
Migrates the JBoss Marshalling encoding to Infinispan ProtoStream- Specified by:
migrateToProtoStream
in interfaceInfinispanConnectionProvider
- Returns:
- A
CompletionStage
to signal when the operator is completed.
-
getScheduledExecutor
- Specified by:
getScheduledExecutor
in 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:InfinispanConnectionProvider
Returns the InfinispanBlockingManager
.The
BlockingManager
should be used to execute blocking operation like disk I/O. It offloads the task to the Infinispan blocking thread pool.- Specified by:
getBlockingManager
in interfaceInfinispanConnectionProvider
- Returns:
- The Infinispan
BlockingManager
.
-
close
public void close()
-