Interface PubSubCommands<V>

Type Parameters:
V - the class of the exchanged messages.
All Superinterfaces:
RedisCommands
All Known Implementing Classes:
BlockingPubSubCommandsImpl

public interface PubSubCommands<V> extends RedisCommands
Allows executing Pub/Sub commands. See the pub/sub documentation.
  • Method Details

    • publish

      void publish(String channel, V message)
      Publishes a message to a given channel
      Parameters:
      channel - the channel
      message - the message
    • subscribe

      PubSubCommands.RedisSubscriber subscribe(String channel, Consumer<V> onMessage)
      Subscribes to a given channel.
      Parameters:
      channel - the channel
      onMessage - the message consumer. Be aware that this callback is invoked for each message sent to the given channel, and is invoked on the I/O thread. So, you must not block. Offload to a separate thread if needed.
      Returns:
      the subscriber object that lets you unsubscribe
    • subscribeToPattern

      PubSubCommands.RedisSubscriber subscribeToPattern(String pattern, Consumer<V> onMessage)
      Subscribes to a given pattern like chan*l.
      Parameters:
      pattern - the pattern
      onMessage - the message consumer. Be aware that this callback is invoked for each message sent to the channels matching the pattern, and is invoked on the I/O thread. So, you must not block. Offload to a separate thread if needed.
      Returns:
      the subscriber object that lets you unsubscribe
    • subscribeToPattern

      PubSubCommands.RedisSubscriber subscribeToPattern(String pattern, BiConsumer<String,V> onMessage)
      Same as subscribeToPattern(String, Consumer), but instead of receiving only the message payload, it also receives the name of the channel.
      Parameters:
      pattern - the pattern
      onMessage - the message consumer. Be aware that this callback is invoked for each message sent to the channels matching the pattern, and is invoked on the I/O thread. So, you must not block. Offload to a separate thread if needed. The first parameter is the name of the channel. The second parameter is the payload.
      Returns:
      the subscriber object that lets you unsubscribe
    • subscribeToPatterns

      PubSubCommands.RedisSubscriber subscribeToPatterns(List<String> patterns, Consumer<V> onMessage)
      Subscribes to the given patterns like chan*l.
      Parameters:
      patterns - the patterns
      onMessage - the message consumer. Be aware that this callback is invoked for each message sent to the channels matching the pattern, and is invoked on the I/O thread. So, you must not block. Offload to a separate thread if needed.
      Returns:
      the subscriber object that lets you unsubscribe
    • subscribeToPatterns

      PubSubCommands.RedisSubscriber subscribeToPatterns(List<String> patterns, BiConsumer<String,V> onMessage)
      Same as subscribeToPatterns(List, Consumer), but instead of only receiving the payload, it also receives the channel name.
      Parameters:
      patterns - the patterns
      onMessage - the message consumer. Be aware that this callback is invoked for each message sent to the channels matching the pattern, and is invoked on the I/O thread. So, you must not block. Offload to a separate thread if needed. The first parameter is the channel name. The second one if the payload.
      Returns:
      the subscriber object that lets you unsubscribe
    • subscribe

      PubSubCommands.RedisSubscriber subscribe(List<String> channels, Consumer<V> onMessage)
      Subscribes to the given channels.
      Parameters:
      channels - the channels
      onMessage - the message consumer. Be aware that this callback is invoked for each message sent to the given channels, and is invoked on the I/O thread. So, you must not block. Offload to a separate thread if needed.
      Returns:
      the subscriber object that lets you unsubscribe
    • subscribe

      PubSubCommands.RedisSubscriber subscribe(String channel, Consumer<V> onMessage, Runnable onEnd, Consumer<Throwable> onException)
      Subscribes to a given channel.
      Parameters:
      channel - the channel
      onMessage - the message consumer. Be aware that this callback is invoked for each message sent to the given channel, and is invoked on the I/O thread. So, you must not block. Offload to a separate thread if needed.
      onEnd - the end handler. Be aware that this callback is invoked on the I/O thread. So, you must not block. Offload to a separate thread if needed.
      onException - the exception handler. Be aware that this callback is invoked on the I/O thread. So, you must not block. Offload to a separate thread if needed.
      Returns:
      the subscriber object that lets you unsubscribe
    • subscribeToPattern

      PubSubCommands.RedisSubscriber subscribeToPattern(String pattern, Consumer<V> onMessage, Runnable onEnd, Consumer<Throwable> onException)
      Subscribes to a given pattern like chan*l.
      Parameters:
      pattern - the pattern
      onMessage - the message consumer. Be aware that this callback is invoked for each message sent to the channels matching the pattern, and is invoked on the I/O thread. So, you must not block. Offload to a separate thread if needed.
      onEnd - the end handler. Be aware that this callback is invoked on the I/O thread. So, you must not block. Offload to a separate thread if needed.
      onException - the exception handler. Be aware that this callback is invoked on the I/O thread. So, you must not block. Offload to a separate thread if needed.
      Returns:
      the subscriber object that lets you unsubscribe
    • subscribeToPattern

      PubSubCommands.RedisSubscriber subscribeToPattern(String pattern, BiConsumer<String,V> onMessage, Runnable onEnd, Consumer<Throwable> onException)
      Same as subscribeToPatterns(List, Consumer, Runnable, Consumer), but also receives the channel name.
      Parameters:
      pattern - the pattern
      onMessage - the message consumer. Be aware that this callback is invoked for each message sent to the channels matching the pattern, and is invoked on the I/O thread. So, you must not block. Offload to a separate thread if needed. The first parameter is the name of the channel. The second parameter is the payload.
      onEnd - the end handler. Be aware that this callback is invoked on the I/O thread. So, you must not block. Offload to a separate thread if needed.
      onException - the exception handler. Be aware that this callback is invoked on the I/O thread. So, you must not block. Offload to a separate thread if needed.
      Returns:
      the subscriber object that lets you unsubscribe
    • subscribeToPatterns

      PubSubCommands.RedisSubscriber subscribeToPatterns(List<String> patterns, Consumer<V> onMessage, Runnable onEnd, Consumer<Throwable> onException)
      Subscribes to the given patterns like chan*l.
      Parameters:
      patterns - the patterns
      onMessage - the message consumer. Be aware that this callback is invoked for each message sent to the channels matching the pattern, and is invoked on the I/O thread. So, you must not block. Offload to a separate thread if needed.
      onEnd - the end handler. Be aware that this callback is invoked on the I/O thread. So, you must not block. Offload to a separate thread if needed.
      onException - the exception handler. Be aware that this callback is invoked on the I/O thread. So, you must not block. Offload to a separate thread if needed.
      Returns:
      the subscriber object that lets you unsubscribe
    • subscribeToPatterns

      PubSubCommands.RedisSubscriber subscribeToPatterns(List<String> patterns, BiConsumer<String,V> onMessage, Runnable onEnd, Consumer<Throwable> onException)
      Same as subscribeToPatterns(List, Consumer, Runnable, Consumer), but also receive the channel name.
      Parameters:
      patterns - the patterns
      onMessage - the message consumer. Be aware that this callback is invoked for each message sent to the channels matching the pattern, and is invoked on the I/O thread. So, you must not block. Offload to a separate thread if needed. The first parameter is the name of the channel. The second parameter is the payload.
      onEnd - the end handler. Be aware that this callback is invoked on the I/O thread. So, you must not block. Offload to a separate thread if needed.
      onException - the exception handler. Be aware that this callback is invoked on the I/O thread. So, you must not block. Offload to a separate thread if needed.
      Returns:
      the subscriber object that lets you unsubscribe
    • subscribe

      PubSubCommands.RedisSubscriber subscribe(List<String> channels, Consumer<V> onMessage, Runnable onEnd, Consumer<Throwable> onException)
      Subscribes to the given channels.
      Parameters:
      channels - the channels
      onMessage - the message consumer. Be aware that this callback is invoked for each message sent to the given channels, and is invoked on the I/O thread. So, you must not block. Offload to a separate thread if needed.
      onEnd - the end handler. Be aware that this callback is invoked on the I/O thread. So, you must not block. Offload to a separate thread if needed.
      onException - the exception handler. Be aware that this callback is invoked on the I/O thread. So, you must not block. Offload to a separate thread if needed.
      Returns:
      the subscriber object that lets you unsubscribe
    • subscribe

      PubSubCommands.RedisSubscriber subscribe(List<String> channels, BiConsumer<String,V> onMessage, Runnable onEnd, Consumer<Throwable> onException)
      Same as subscribe(List, Consumer, Runnable, Consumer) but also receives the channel name.
      Parameters:
      channels - the channels
      onMessage - the message consumer. Be aware that this callback is invoked for each message sent to the given channels, and is invoked on the I/O thread. So, you must not block. Offload to a separate thread if needed. The first parameter is the name of the channel. The second parameter is the payload.
      onEnd - the end handler. Be aware that this callback is invoked on the I/O thread. So, you must not block. Offload to a separate thread if needed.
      onException - the exception handler. Be aware that this callback is invoked on the I/O thread. So, you must not block. Offload to a separate thread if needed.
      Returns:
      the subscriber object that lets you unsubscribe