Interface RedisMessageManager

  • All Known Subinterfaces:
    RedisManager

    public interface RedisMessageManager
    发布与订阅(Pub/Sub)管理器。
    Since:
    1.1.0
    • Method Summary

      All Methods Static Methods Instance Methods Abstract Methods Default Methods 
      Modifier and Type Method Description
      RedisRequestBuilder callback​(@NotNull java.lang.String channel, @NotNull com.google.common.io.ByteArrayDataOutput byteOutput)  
      default RedisRequestBuilder callback​(@NotNull java.lang.String channel, @NotNull java.lang.Object... values)  
      RedisRequestBuilder callback​(@NotNull java.lang.String channel, @NotNull java.util.function.Consumer<com.google.common.io.ByteArrayDataOutput> byteOutput)  
      long publish​(@NotNull java.lang.String channel, @NotNull com.google.common.io.ByteArrayDataOutput byteOutput)  
      default long publish​(@NotNull java.lang.String channel, @NotNull java.lang.Object... values)  
      long publish​(@NotNull java.lang.String channel, @NotNull java.util.function.Consumer<com.google.common.io.ByteArrayDataOutput> byteOutput)  
      io.lettuce.core.RedisFuture<java.lang.Long> publishAsync​(@NotNull java.lang.String channel, @NotNull com.google.common.io.ByteArrayDataOutput byteOutput)  
      default io.lettuce.core.RedisFuture<java.lang.Long> publishAsync​(@NotNull java.lang.String channel, @NotNull java.lang.Object... values)  
      io.lettuce.core.RedisFuture<java.lang.Long> publishAsync​(@NotNull java.lang.String channel, @NotNull java.util.function.Consumer<com.google.common.io.ByteArrayDataOutput> byteOutput)  
      default void registerChannel​(@NotNull RedisChannel channel)  
      void registerChannelListener​(@NotNull RedisMessageListener listener, @NotNull java.lang.String channel, @NotNull java.lang.String... moreChannels)  
      void registerChannels​(@NotNull java.lang.Class<?> channelClazz)  
      void registerGlobalListener​(@NotNull RedisMessageListener listener, @NotNull RedisMessageListener... moreListeners)  
      void registerPatternListener​(@NotNull RedisMessageListener listener, @NotNull java.lang.String channelPattern, @NotNull java.lang.String... morePatterns)  
      void subscribe​(@NotNull java.lang.String channel, @NotNull java.lang.String... moreChannels)
      订阅某些指定频道。
      void subscribePattern​(@NotNull java.lang.String channelPattern, @NotNull java.lang.String... morePatterns)
      以模式匹配的方式订阅频道,支持使用“*”“?”
      void unregisterChannels​(@NotNull java.lang.Class<?> channelClazz)  
      void unregisterListener​(@NotNull RedisMessageListener listener)  
      void unsubscribe​(@NotNull java.lang.String channel, @NotNull java.lang.String... moreChannels)
      取消订阅某些指定频道。
      void unsubscribePattern​(@NotNull java.lang.String channelPattern, @NotNull java.lang.String... morePatterns)
      取消以模式匹配的方式订阅频道,支持使用“*”“?”
      static void writeParam​(com.google.common.io.ByteArrayDataOutput data, java.lang.Object value)  
      static void writeParams​(com.google.common.io.ByteArrayDataOutput data, java.util.List<java.lang.Object> params)  
    • Method Detail

      • subscribe

        void subscribe​(@NotNull
                       @NotNull java.lang.String channel,
                       @NotNull
                       @NotNull java.lang.String... moreChannels)
        订阅某些指定频道。
        订阅后,本端将接收该频道中的消息,并触发对应的Handler。
        Parameters:
        channel - 频道名
        moreChannels - 频道名
      • unsubscribe

        void unsubscribe​(@NotNull
                         @NotNull java.lang.String channel,
                         @NotNull
                         @NotNull java.lang.String... moreChannels)
        取消订阅某些指定频道。
        取消订阅后,本端将不再接收该频道中的消息。
        Parameters:
        channel - 频道名
        moreChannels - 频道名
      • subscribePattern

        void subscribePattern​(@NotNull
                              @NotNull java.lang.String channelPattern,
                              @NotNull
                              @NotNull java.lang.String... morePatterns)
        以模式匹配的方式订阅频道,支持使用“*”“?”等符号。
        订阅后,本端将接收相关频道中的消息,并触发对应的Handler。
        Parameters:
        channelPattern - 频道条件
        morePatterns - 频道条件
      • unsubscribePattern

        void unsubscribePattern​(@NotNull
                                @NotNull java.lang.String channelPattern,
                                @NotNull
                                @NotNull java.lang.String... morePatterns)
        取消以模式匹配的方式订阅频道,支持使用“*”“?”等符号。
        取消订阅后,本端将不再接收相关频道中的消息。
        Parameters:
        channelPattern - 频道条件
        morePatterns - 频道条件
      • publish

        long publish​(@NotNull
                     @NotNull java.lang.String channel,
                     @NotNull
                     @NotNull com.google.common.io.ByteArrayDataOutput byteOutput)
      • publish

        long publish​(@NotNull
                     @NotNull java.lang.String channel,
                     @NotNull
                     @NotNull java.util.function.Consumer<com.google.common.io.ByteArrayDataOutput> byteOutput)
      • publish

        default long publish​(@NotNull
                             @NotNull java.lang.String channel,
                             @NotNull
                             @NotNull java.lang.Object... values)
      • publishAsync

        io.lettuce.core.RedisFuture<java.lang.Long> publishAsync​(@NotNull
                                                                 @NotNull java.lang.String channel,
                                                                 @NotNull
                                                                 @NotNull com.google.common.io.ByteArrayDataOutput byteOutput)
      • publishAsync

        io.lettuce.core.RedisFuture<java.lang.Long> publishAsync​(@NotNull
                                                                 @NotNull java.lang.String channel,
                                                                 @NotNull
                                                                 @NotNull java.util.function.Consumer<com.google.common.io.ByteArrayDataOutput> byteOutput)
      • publishAsync

        default io.lettuce.core.RedisFuture<java.lang.Long> publishAsync​(@NotNull
                                                                         @NotNull java.lang.String channel,
                                                                         @NotNull
                                                                         @NotNull java.lang.Object... values)
      • callback

        RedisRequestBuilder callback​(@NotNull
                                     @NotNull java.lang.String channel,
                                     @NotNull
                                     @NotNull com.google.common.io.ByteArrayDataOutput byteOutput)
      • callback

        RedisRequestBuilder callback​(@NotNull
                                     @NotNull java.lang.String channel,
                                     @NotNull
                                     @NotNull java.util.function.Consumer<com.google.common.io.ByteArrayDataOutput> byteOutput)
      • callback

        default RedisRequestBuilder callback​(@NotNull
                                             @NotNull java.lang.String channel,
                                             @NotNull
                                             @NotNull java.lang.Object... values)
      • registerChannelListener

        void registerChannelListener​(@NotNull
                                     @NotNull RedisMessageListener listener,
                                     @NotNull
                                     @NotNull java.lang.String channel,
                                     @NotNull
                                     @NotNull java.lang.String... moreChannels)
      • registerPatternListener

        void registerPatternListener​(@NotNull
                                     @NotNull RedisMessageListener listener,
                                     @NotNull
                                     @NotNull java.lang.String channelPattern,
                                     @NotNull
                                     @NotNull java.lang.String... morePatterns)
      • registerChannels

        void registerChannels​(@NotNull
                              @NotNull java.lang.Class<?> channelClazz)
      • unregisterChannels

        void unregisterChannels​(@NotNull
                                @NotNull java.lang.Class<?> channelClazz)
      • registerChannel

        default void registerChannel​(@NotNull
                                     @NotNull RedisChannel channel)
      • writeParams

        static void writeParams​(com.google.common.io.ByteArrayDataOutput data,
                                java.util.List<java.lang.Object> params)
      • writeParam

        static void writeParam​(com.google.common.io.ByteArrayDataOutput data,
                               java.lang.Object value)