All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.infinispan.affinity.ListenerRegistration Maven / Gradle / Ivy

There is a newer version: 9.1.7.Final
Show newest version
package org.infinispan.affinity;

import org.infinispan.affinity.impl.KeyAffinityServiceImpl;
import org.infinispan.notifications.Listener;
import org.infinispan.notifications.cachelistener.annotation.TopologyChanged;
import org.infinispan.notifications.cachelistener.event.TopologyChangedEvent;
import org.infinispan.notifications.cachemanagerlistener.annotation.CacheStopped;
import org.infinispan.notifications.cachemanagerlistener.event.CacheStoppedEvent;

/**
* Used for registering various cache notifications.
*
* @author [email protected]
* @since 4.1
*/
@Listener(sync = true)
public class ListenerRegistration {
   private final KeyAffinityServiceImpl keyAffinityService;

   public ListenerRegistration(KeyAffinityServiceImpl keyAffinityService) {
      this.keyAffinityService = keyAffinityService;
   }

   @TopologyChanged
   public void handleViewChange(TopologyChangedEvent tce) {
      if (!tce.isPre()) keyAffinityService.handleViewChange(tce);
   }

   @CacheStopped
   public void handleCacheStopped(CacheStoppedEvent cse) {
      keyAffinityService.handleCacheStopped(cse);
   }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy