Interface RedisStreamCommands<K,​V>

    • Method Detail

      • xack

        Long xack​(K key,
                  K group,
                  String... messageIds)
        Acknowledge one or more messages as processed.
        Parameters:
        key - the stream key.
        group - name of the consumer group.
        messageIds - message Id's to acknowledge.
        Returns:
        simple-reply the lenght of acknowledged messages.
      • xadd

        String xadd​(K key,
                    Map<K,​V> body)
        Append a message to the stream key.
        Parameters:
        key - the stream key.
        body - message body.
        Returns:
        simple-reply the message Id.
      • xadd

        String xadd​(K key,
                    XAddArgs args,
                    Map<K,​V> body)
        Append a message to the stream key.
        Parameters:
        key - the stream key.
        args -
        body - message body.
        Returns:
        simple-reply the message Id.
      • xadd

        String xadd​(K key,
                    Object... keysAndValues)
        Append a message to the stream key.
        Parameters:
        key - the stream key.
        keysAndValues - message body.
        Returns:
        simple-reply the message Id.
      • xadd

        String xadd​(K key,
                    XAddArgs args,
                    Object... keysAndValues)
        Append a message to the stream key.
        Parameters:
        key - the stream key.
        args -
        keysAndValues - message body.
        Returns:
        simple-reply the message Id.
      • xautoclaim

        ClaimedMessages<K,​V> xautoclaim​(K key,
                                              XAutoClaimArgs<K> args)
        Gets ownership of one or multiple messages in the Pending Entries List of a given stream consumer group.
        Parameters:
        key - the stream key.
        args -
        Returns:
        simple-reply the claimed stream messages.
        Since:
        6.1
      • xclaim

        List<StreamMessage<K,​V>> xclaim​(K key,
                                              Consumer<K> consumer,
                                              long minIdleTime,
                                              String... messageIds)
        Gets ownership of one or multiple messages in the Pending Entries List of a given stream consumer group.
        Parameters:
        key - the stream key.
        consumer - consumer identified by group name and consumer key.
        minIdleTime -
        messageIds - message Id's to claim.
        Returns:
        simple-reply the StreamMessage.
      • xclaim

        List<StreamMessage<K,​V>> xclaim​(K key,
                                              Consumer<K> consumer,
                                              XClaimArgs args,
                                              String... messageIds)
        Gets ownership of one or multiple messages in the Pending Entries List of a given stream consumer group.

        Note that setting the JUSTID flag (calling this method with XClaimArgs.justid()) suppresses the message bode and StreamMessage.getBody() is null.

        Parameters:
        key - the stream key.
        consumer - consumer identified by group name and consumer key.
        args -
        messageIds - message Id's to claim.
        Returns:
        simple-reply the StreamMessage.
      • xdel

        Long xdel​(K key,
                  String... messageIds)
        Removes the specified entries from the stream. Returns the number of items deleted, that may be different from the number of IDs passed in case certain IDs do not exist.
        Parameters:
        key - the stream key.
        messageIds - stream message Id's.
        Returns:
        simple-reply number of removed entries.
      • xgroupCreate

        String xgroupCreate​(XReadArgs.StreamOffset<K> streamOffset,
                            K group)
        Create a consumer group.
        Parameters:
        streamOffset - name of the stream containing the offset to set.
        group - name of the consumer group.
        Returns:
        simple-reply true if successful.
      • xgroupCreate

        String xgroupCreate​(XReadArgs.StreamOffset<K> streamOffset,
                            K group,
                            XGroupCreateArgs args)
        Create a consumer group.
        Parameters:
        streamOffset - name of the stream containing the offset to set.
        group - name of the consumer group.
        args -
        Returns:
        simple-reply true if successful.
        Since:
        5.2
      • xgroupCreateconsumer

        Boolean xgroupCreateconsumer​(K key,
                                     Consumer<K> consumer)
        Create a consumer from a consumer group.
        Parameters:
        key - the stream key.
        consumer - consumer identified by group name and consumer key.
        Returns:
        simple-reply true if successful.
        Since:
        6.1
      • xgroupDelconsumer

        Long xgroupDelconsumer​(K key,
                               Consumer<K> consumer)
        Delete a consumer from a consumer group.
        Parameters:
        key - the stream key.
        consumer - consumer identified by group name and consumer key.
        Returns:
        Long integer-reply number of pending messages.
      • xgroupDestroy

        Boolean xgroupDestroy​(K key,
                              K group)
        Destroy a consumer group.
        Parameters:
        key - the stream key.
        group - name of the consumer group.
        Returns:
        simple-reply true if successful.
      • xgroupSetid

        String xgroupSetid​(XReadArgs.StreamOffset<K> streamOffset,
                           K group)
        Set the current group id.
        Parameters:
        streamOffset - name of the stream containing the offset to set.
        group - name of the consumer group.
        Returns:
        simple-reply OK.
      • xinfoStream

        List<Object> xinfoStream​(K key)
        Retrieve information about the stream at key.
        Parameters:
        key - the stream key.
        Returns:
        List<Object> array-reply.
        Since:
        5.2
      • xinfoGroups

        List<Object> xinfoGroups​(K key)
        Retrieve information about the stream consumer groups at key.
        Parameters:
        key - the stream key.
        Returns:
        List<Object> array-reply.
        Since:
        5.2
      • xinfoConsumers

        List<Object> xinfoConsumers​(K key,
                                    K group)
        Retrieve information about consumer groups of group group and stream at key.
        Parameters:
        key - the stream key.
        group - name of the consumer group.
        Returns:
        List<Object> array-reply.
        Since:
        5.2
      • xlen

        Long xlen​(K key)
        Get the length of a steam.
        Parameters:
        key - the stream key.
        Returns:
        simple-reply the lenght of the stream.
      • xpending

        PendingMessages xpending​(K key,
                                 K group)
        Read pending messages from a stream for a group.
        Parameters:
        key - the stream key.
        group - name of the consumer group.
        Returns:
        List<Object> array-reply list pending entries.
      • xpending

        List<PendingMessage> xpending​(K key,
                                      K group,
                                      Range<String> range,
                                      Limit limit)
        Read pending messages from a stream within a specific Range.
        Parameters:
        key - the stream key.
        group - name of the consumer group.
        range - must not be null.
        limit - must not be null.
        Returns:
        List<Object> array-reply list with members of the resulting stream.
      • xpending

        List<PendingMessage> xpending​(K key,
                                      Consumer<K> consumer,
                                      Range<String> range,
                                      Limit limit)
        Read pending messages from a stream within a specific Range.
        Parameters:
        key - the stream key.
        consumer - consumer identified by group name and consumer key.
        range - must not be null.
        limit - must not be null.
        Returns:
        List<Object> array-reply list with members of the resulting stream.
      • xpending

        List<PendingMessage> xpending​(K key,
                                      XPendingArgs<K> args)
        Read pending messages from a stream within a specific XPendingArgs.
        Parameters:
        key - the stream key.
        args -
        Returns:
        List<Object> array-reply list with members of the resulting stream.
        Since:
        6.1
      • xrange

        List<StreamMessage<K,​V>> xrange​(K key,
                                              Range<String> range)
        Read messages from a stream within a specific Range.
        Parameters:
        key - the stream key.
        range - must not be null.
        Returns:
        List<StreamMessage> array-reply list with members of the resulting stream.
      • xrange

        List<StreamMessage<K,​V>> xrange​(K key,
                                              Range<String> range,
                                              Limit limit)
        Read messages from a stream within a specific Range applying a Limit.
        Parameters:
        key - the stream key.
        range - must not be null.
        limit - must not be null.
        Returns:
        List<StreamMessage> array-reply list with members of the resulting stream.
      • xrevrange

        List<StreamMessage<K,​V>> xrevrange​(K key,
                                                 Range<String> range)
        Read messages from a stream within a specific Range in reverse order.
        Parameters:
        key - the stream key.
        range - must not be null.
        Returns:
        List<StreamMessage> array-reply list with members of the resulting stream.
      • xrevrange

        List<StreamMessage<K,​V>> xrevrange​(K key,
                                                 Range<String> range,
                                                 Limit limit)
        Read messages from a stream within a specific Range applying a Limit in reverse order.
        Parameters:
        key - the stream key.
        range - must not be null.
        limit - must not be null.
        Returns:
        List<StreamMessage> array-reply list with members of the resulting stream.
      • xtrim

        Long xtrim​(K key,
                   long count)
        Trims the stream to count elements.
        Parameters:
        key - the stream key.
        count - length of the stream.
        Returns:
        simple-reply number of removed entries.
      • xtrim

        Long xtrim​(K key,
                   boolean approximateTrimming,
                   long count)
        Trims the stream to count elements.
        Parameters:
        key - the stream key.
        approximateTrimming - true to trim approximately using the ~ flag.
        count - length of the stream.
        Returns:
        simple-reply number of removed entries.
      • xtrim

        Long xtrim​(K key,
                   XTrimArgs args)
        Trims the stream within a specific XTrimArgs.
        Parameters:
        key - the stream key.
        args -
        Returns:
        simple-reply number of removed entries.
        Since:
        6.1