Class UserSessionQueryConditionalRemover
java.lang.Object
org.keycloak.models.sessions.infinispan.changes.remote.remover.query.UserSessionQueryConditionalRemover
- All Implemented Interfaces:
ConditionalRemover<String,
RemoteUserSessionEntity>
A
ConditionalRemover
implementation to remove RemoteUserSessionEntity
based on some filters over its
state.
This implementation uses Infinispan Ickle Queries to perform the removal operation. Indexing is not required.
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
executeRemovals
(org.infinispan.client.hotrod.RemoteCache<String, RemoteUserSessionEntity> cache, org.infinispan.commons.util.concurrent.AggregateCompletionStage<Void> stage) Executes the conditional removes in theRemoteCache
.void
removeByRealmId
(String realmId) void
removeByUserId
(String realmId, String userId) boolean
willRemove
(String key, RemoteUserSessionEntity value) Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.keycloak.models.sessions.infinispan.changes.remote.remover.ConditionalRemover
willRemove
-
Constructor Details
-
UserSessionQueryConditionalRemover
public UserSessionQueryConditionalRemover()
-
-
Method Details
-
removeByRealmId
-
removeByUserId
-
willRemove
- Parameters:
key
- The entry's key to test.value
- The entry's value to test.- Returns:
true
if the entry will be removed from theRemoteCache
.
-
executeRemovals
public void executeRemovals(org.infinispan.client.hotrod.RemoteCache<String, RemoteUserSessionEntity> cache, org.infinispan.commons.util.concurrent.AggregateCompletionStage<Void> stage) Description copied from interface:ConditionalRemover
Executes the conditional removes in theRemoteCache
.- Specified by:
executeRemovals
in interfaceConditionalRemover<K,
V> - Parameters:
cache
- TheRemoteCache
to perform the remove operations.stage
- TheAggregateCompletionStage
to add any incomplete tasks.
-