Interface L1Manager

All Known Implementing Classes:
L1ManagerImpl

public interface L1Manager
Manages the L1 Cache, in particular recording anyone who is going to cache an a command that a node responds to so that a unicast invalidation can be sent later if needed.
Author:
Pete Muir
  • Method Details

    • addRequestor

      void addRequestor(Object key, Address requestor)
      Records a request that will be cached in another nodes L1
    • flushCache

      CompletableFuture<?> flushCache(Collection<Object> key, Address origin, boolean assumeOriginKeptEntryInL1)
    • registerL1WriteSynchronizer

      void registerL1WriteSynchronizer(Object key, org.infinispan.interceptors.distribution.L1WriteSynchronizer sync)
      Registers the given write synchronizer to be notified whenever a remote value is looked up for the given key. If the synchronizer is no longer needed to be signaled, the user should unregister it using unregisterL1WriteSynchronizer(Object, org.infinispan.interceptors.distribution.L1WriteSynchronizer)
      Parameters:
      key - The key that that when looked up will trigger the synchronizer
      sync - The synchronizer to run the update when the key is looked up
    • unregisterL1WriteSynchronizer

      void unregisterL1WriteSynchronizer(Object key, org.infinispan.interceptors.distribution.L1WriteSynchronizer sync)
      Unregister the given write synchronizer if present. Note the synchronizer is only unregistered if it matches using instance equality (==) due to possibly concurrent usage of write synchronizers
      Parameters:
      key - The key to unregister the given synchronizer for.
      sync - The synchronizer to be removed if it is still present.