Module lettuce.core

Interface RedisStreamCommands<K,​V>

Type Parameters:
K - Key type.
V - Value type.
All Known Subinterfaces:
RedisAdvancedClusterCommands<K,​V>, RedisClusterCommands<K,​V>, RedisClusterPubSubCommands<K,​V>, RedisCommands<K,​V>, RedisPubSubCommands<K,​V>

public interface RedisStreamCommands<K,​V>
Synchronous executed commands for Streams.
Since:
5.1
Author:
Mark Paluch
Generated class:
by io.lettuce.apigenerator.CreateSyncApi
  • Method Details

    • 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.
    • xread

      List<StreamMessage<K,​V>> xread​(XReadArgs.StreamOffset<K>... streams)
      Read messages from one or more XReadArgs.StreamOffsets.
      Parameters:
      streams - the streams to read from.
      Returns:
      List<StreamMessage> array-reply list with members of the resulting stream.
    • xread

      List<StreamMessage<K,​V>> xread​(XReadArgs args, XReadArgs.StreamOffset<K>... streams)
      Read messages from one or more XReadArgs.StreamOffsets.
      Parameters:
      args - read arguments.
      streams - the streams to read from.
      Returns:
      List<StreamMessage> array-reply list with members of the resulting stream.
    • xreadgroup

      List<StreamMessage<K,​V>> xreadgroup​(Consumer<K> consumer, XReadArgs.StreamOffset<K>... streams)
      Read messages from one or more XReadArgs.StreamOffsets using a consumer group.
      Parameters:
      consumer - consumer/group.
      streams - the streams to read from.
      Returns:
      List<StreamMessage> array-reply list with members of the resulting stream.
    • xreadgroup

      List<StreamMessage<K,​V>> xreadgroup​(Consumer<K> consumer, XReadArgs args, XReadArgs.StreamOffset<K>... streams)
      Read messages from one or more XReadArgs.StreamOffsets using a consumer group.
      Parameters:
      consumer - consumer/group.
      args - read arguments.
      streams - the streams to read from.
      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