Class CrossDCLastSessionRefreshStore
java.lang.Object
org.keycloak.models.sessions.infinispan.changes.sessions.AbstractLastSessionRefreshStore
org.keycloak.models.sessions.infinispan.changes.sessions.CrossDCLastSessionRefreshStore
Cross-DC based CrossDCLastSessionRefreshStore
Tracks the queue of lastSessionRefreshes, which were updated on this host. Those will be sent to the second DC in bulk, so second DC can update
lastSessionRefreshes on it's side. Message is sent either periodically or if there are lots of stored lastSessionRefreshes.
- Author:
- Marek Posolda
-
Field Summary
-
Constructor Summary
ModifierConstructorDescriptionprotected
CrossDCLastSessionRefreshStore
(int maxIntervalBetweenMessagesSeconds, int maxCount, String eventKey) -
Method Summary
Modifier and TypeMethodDescriptionprotected void
sendMessage
(KeycloakSession kcSession, Map<String, SessionData> refreshesToSend) Bulk update the underlying store with all the user sessions, which were refreshed by Keycloak since the last call of this methodMethods inherited from class org.keycloak.models.sessions.infinispan.changes.sessions.AbstractLastSessionRefreshStore
putLastSessionRefresh, reset
-
Field Details
-
logger
protected static final org.jboss.logging.Logger logger
-
-
Constructor Details
-
CrossDCLastSessionRefreshStore
protected CrossDCLastSessionRefreshStore(int maxIntervalBetweenMessagesSeconds, int maxCount, String eventKey)
-
-
Method Details
-
sendMessage
Description copied from class:AbstractLastSessionRefreshStore
Bulk update the underlying store with all the user sessions, which were refreshed by Keycloak since the last call of this method- Specified by:
sendMessage
in classAbstractLastSessionRefreshStore
refreshesToSend
- Key is userSession ID, SessionData are data about the session
-