Class HotRodGlobalLockProvider

java.lang.Object
org.keycloak.models.map.storage.hotRod.locking.HotRodGlobalLockProvider
All Implemented Interfaces:
org.keycloak.models.locking.GlobalLockProvider, org.keycloak.provider.Provider

public class HotRodGlobalLockProvider extends Object implements org.keycloak.models.locking.GlobalLockProvider
  • Nested Class Summary

    Nested classes/interfaces inherited from interface org.keycloak.models.locking.GlobalLockProvider

    org.keycloak.models.locking.GlobalLockProvider.Constants
  • Constructor Summary

    Constructors
    Constructor
    Description
    HotRodGlobalLockProvider(org.keycloak.models.KeycloakSession session, org.infinispan.client.hotrod.RemoteCache<String,String> locksCache, long defaultTimeoutMilliseconds)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    void
     
    void
     
    <V> V
    withLock(String lockName, Duration timeToWaitForLock, org.keycloak.models.KeycloakSessionTaskWithResult<V> task)
     

    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.locking.GlobalLockProvider

    withLock
  • Constructor Details

    • HotRodGlobalLockProvider

      public HotRodGlobalLockProvider(org.keycloak.models.KeycloakSession session, org.infinispan.client.hotrod.RemoteCache<String,String> locksCache, long defaultTimeoutMilliseconds)
  • Method Details

    • withLock

      public <V> V withLock(String lockName, Duration timeToWaitForLock, org.keycloak.models.KeycloakSessionTaskWithResult<V> task) throws org.keycloak.models.locking.LockAcquiringTimeoutException
      Specified by:
      withLock in interface org.keycloak.models.locking.GlobalLockProvider
      Throws:
      org.keycloak.models.locking.LockAcquiringTimeoutException
    • forceReleaseAllLocks

      public void forceReleaseAllLocks()
      Specified by:
      forceReleaseAllLocks in interface org.keycloak.models.locking.GlobalLockProvider
    • close

      public void close()
      Specified by:
      close in interface org.keycloak.provider.Provider