Class KeyExpirationEventMessageListener

java.lang.Object
org.springframework.data.redis.listener.KeyspaceEventMessageListener
org.springframework.data.redis.listener.KeyExpirationEventMessageListener
All Implemented Interfaces:
org.springframework.beans.factory.Aware, org.springframework.beans.factory.DisposableBean, org.springframework.beans.factory.InitializingBean, org.springframework.context.ApplicationEventPublisherAware, MessageListener

public class KeyExpirationEventMessageListener extends KeyspaceEventMessageListener implements org.springframework.context.ApplicationEventPublisherAware
MessageListener publishing RedisKeyExpiredEvents via ApplicationEventPublisher by listening to Redis keyspace notifications for key expirations.
Since:
1.7
Author:
Christoph Strobl
  • Constructor Details

    • KeyExpirationEventMessageListener

      public KeyExpirationEventMessageListener(RedisMessageListenerContainer listenerContainer)
      Creates new MessageListener for __keyevent@*__:expired messages.
      Parameters:
      listenerContainer - must not be null.
  • Method Details

    • doRegister

      protected void doRegister(RedisMessageListenerContainer listenerContainer)
      Description copied from class: KeyspaceEventMessageListener
      Register instance within the container.
      Overrides:
      doRegister in class KeyspaceEventMessageListener
      Parameters:
      listenerContainer - never null.
    • doHandleMessage

      protected void doHandleMessage(Message message)
      Description copied from class: KeyspaceEventMessageListener
      Handle the actual message
      Specified by:
      doHandleMessage in class KeyspaceEventMessageListener
      Parameters:
      message - never null.
    • publishEvent

      protected void publishEvent(RedisKeyExpiredEvent event)
      Publish the event in case an ApplicationEventPublisher is set.
      Parameters:
      event - can be null.
    • setApplicationEventPublisher

      public void setApplicationEventPublisher(org.springframework.context.ApplicationEventPublisher applicationEventPublisher)
      Specified by:
      setApplicationEventPublisher in interface org.springframework.context.ApplicationEventPublisherAware