Interface RTopicAsync

All Known Subinterfaces:
RShardedTopic, RShardedTopicAsync, RTopic
All Known Implementing Classes:
RedissonShardedTopic, RedissonTopic

public interface RTopicAsync
Distributed topic. Messages are delivered to all message listeners across Redis cluster.
Author:
Nikita Koksharov
  • Method Details

    • publishAsync

      RFuture<Long> publishAsync(Object message)
      Publish the message to all subscribers of this topic asynchronously
      Parameters:
      message - to send
      Returns:
      number of clients that received the message
    • addListenerAsync

      RFuture<Integer> addListenerAsync(StatusListener listener)
      Subscribes to status changes of this topic
      Parameters:
      listener - for messages
      Returns:
      listener id
      See Also:
    • addListenerAsync

      <M> RFuture<Integer> addListenerAsync(Class<M> type, MessageListener<? extends M> listener)
      Subscribes to this topic. MessageListener.onMessage is called when any message is published on this topic.
      Type Parameters:
      M - type of message
      Parameters:
      type - - type of message
      listener - for messages
      Returns:
      locally unique listener id
      See Also:
    • removeListenerAsync

      RFuture<Void> removeListenerAsync(Integer... listenerIds)
      Removes the listener by id for listening this topic
      Parameters:
      listenerIds - - listener ids
      Returns:
      void
    • removeListenerAsync

      RFuture<Void> removeListenerAsync(MessageListener<?> listener)
      Removes the listener by its instance
      Parameters:
      listener - - listener instance
      Returns:
      void
    • countSubscribersAsync

      RFuture<Long> countSubscribersAsync()
      Returns amount of subscribers to this topic across all Redisson instances. Each subscriber may have multiple listeners.
      Returns:
      amount of subscribers
    • removeAllListenersAsync

      RFuture<Void> removeAllListenersAsync()
      Removes all listeners from this topic
      Returns:
      void