keycloak
公開メンバ関数 | 静的公開変数類 | 限定公開変数類 | 非公開メンバ関数 | 静的非公開変数類 | 全メンバ一覧
org.keycloak.models.cache.infinispan.InfinispanCacheRealmProviderFactory クラス
org.keycloak.models.cache.infinispan.InfinispanCacheRealmProviderFactory の継承関係図
Inheritance graph
org.keycloak.models.cache.infinispan.InfinispanCacheRealmProviderFactory 連携図
Collaboration graph

公開メンバ関数

CacheRealmProvider create (KeycloakSession session)
 
void init (Config.Scope config)
 
void postInit (KeycloakSessionFactory factory)
 
void close ()
 
String getId ()
 
default int order ()
 

静的公開変数類

static final String REALM_CLEAR_CACHE_EVENTS = "REALM_CLEAR_CACHE_EVENTS"
 
static final String REALM_INVALIDATION_EVENTS = "REALM_INVALIDATION_EVENTS"
 

限定公開変数類

volatile RealmCacheManager realmCache
 

非公開メンバ関数

void lazyInit (KeycloakSession session)
 

静的非公開変数類

static final Logger log = Logger.getLogger(InfinispanCacheRealmProviderFactory.class)
 

詳解

著者
Bill Burke
Stian Thorgersen

関数詳解

◆ close()

void org.keycloak.models.cache.infinispan.InfinispanCacheRealmProviderFactory.close ( )
inline

org.keycloak.provider.ProviderFactory< T extends Provider >を実装しています。

89  {
90  }

◆ create()

CacheRealmProvider org.keycloak.models.cache.infinispan.InfinispanCacheRealmProviderFactory.create ( KeycloakSession  session)
inline

org.keycloak.provider.ProviderFactory< T extends Provider >を実装しています。

46  {
47  lazyInit(session);
48  return new RealmCacheSession(realmCache, session);
49  }
void lazyInit(KeycloakSession session)
Definition: InfinispanCacheRealmProviderFactory.java:51
volatile RealmCacheManager realmCache
Definition: InfinispanCacheRealmProviderFactory.java:43

◆ getId()

String org.keycloak.models.cache.infinispan.InfinispanCacheRealmProviderFactory.getId ( )
inline

org.keycloak.provider.ProviderFactory< T extends Provider >を実装しています。

93  {
94  return "default";
95  }

◆ init()

void org.keycloak.models.cache.infinispan.InfinispanCacheRealmProviderFactory.init ( Config.Scope  config)
inline

org.keycloak.provider.ProviderFactory< T extends Provider >を実装しています。

80  {
81  }

◆ lazyInit()

void org.keycloak.models.cache.infinispan.InfinispanCacheRealmProviderFactory.lazyInit ( KeycloakSession  session)
inlineprivate
51  {
52  if (realmCache == null) {
53  synchronized (this) {
54  if (realmCache == null) {
55  Cache<String, Revisioned> cache = session.getProvider(InfinispanConnectionProvider.class).getCache(InfinispanConnectionProvider.REALM_CACHE_NAME);
56  Cache<String, Long> revisions = session.getProvider(InfinispanConnectionProvider.class).getCache(InfinispanConnectionProvider.REALM_REVISIONS_CACHE_NAME);
57  realmCache = new RealmCacheManager(cache, revisions);
58 
59  ClusterProvider cluster = session.getProvider(ClusterProvider.class);
60  cluster.registerListener(REALM_INVALIDATION_EVENTS, (ClusterEvent event) -> {
61 
62  InvalidationEvent invalidationEvent = (InvalidationEvent) event;
63  realmCache.invalidationEventReceived(invalidationEvent);
64 
65  });
66 
67  cluster.registerListener(REALM_CLEAR_CACHE_EVENTS, (ClusterEvent event) -> {
68 
69  realmCache.clear();
70 
71  });
72 
73  log.debug("Registered cluster listeners");
74  }
75  }
76  }
77  }
static final Logger log
Definition: InfinispanCacheRealmProviderFactory.java:39
static final String REALM_CLEAR_CACHE_EVENTS
Definition: InfinispanCacheRealmProviderFactory.java:40
void clear()
Definition: CacheManager.java:181
void invalidationEventReceived(InvalidationEvent event)
Definition: CacheManager.java:211
volatile RealmCacheManager realmCache
Definition: InfinispanCacheRealmProviderFactory.java:43
static final String REALM_INVALIDATION_EVENTS
Definition: InfinispanCacheRealmProviderFactory.java:41

◆ order()

default int org.keycloak.provider.ProviderFactory< T extends Provider >.order ( )
inlineinherited

◆ postInit()

void org.keycloak.models.cache.infinispan.InfinispanCacheRealmProviderFactory.postInit ( KeycloakSessionFactory  factory)
inline

org.keycloak.provider.ProviderFactory< T extends Provider >を実装しています。

84  {
85 
86  }

メンバ詳解

◆ log

final Logger org.keycloak.models.cache.infinispan.InfinispanCacheRealmProviderFactory.log = Logger.getLogger(InfinispanCacheRealmProviderFactory.class)
staticprivate

◆ REALM_CLEAR_CACHE_EVENTS

final String org.keycloak.models.cache.infinispan.InfinispanCacheRealmProviderFactory.REALM_CLEAR_CACHE_EVENTS = "REALM_CLEAR_CACHE_EVENTS"
static

◆ REALM_INVALIDATION_EVENTS

final String org.keycloak.models.cache.infinispan.InfinispanCacheRealmProviderFactory.REALM_INVALIDATION_EVENTS = "REALM_INVALIDATION_EVENTS"
static

◆ realmCache

volatile RealmCacheManager org.keycloak.models.cache.infinispan.InfinispanCacheRealmProviderFactory.realmCache
protected

このクラス詳解は次のファイルから抽出されました: