Package io.lettuce.core.api.sync
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 Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description Long
xack(K key, K group, String... messageIds)
Acknowledge one or more messages as processed.String
xadd(K key, XAddArgs args, Object... keysAndValues)
Append a message to the streamkey
.String
xadd(K key, XAddArgs args, Map<K,V> body)
Append a message to the streamkey
.String
xadd(K key, Object... keysAndValues)
Append a message to the streamkey
.String
xadd(K key, Map<K,V> body)
Append a message to the streamkey
.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.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.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.Long
xdel(K key, String... messageIds)
Removes the specified entries from the stream.String
xgroupCreate(XReadArgs.StreamOffset<K> streamOffset, K group)
Create a consumer group.String
xgroupCreate(XReadArgs.StreamOffset<K> streamOffset, K group, XGroupCreateArgs args)
Create a consumer group.Boolean
xgroupCreateconsumer(K key, Consumer<K> consumer)
Create a consumer from a consumer group.Long
xgroupDelconsumer(K key, Consumer<K> consumer)
Delete a consumer from a consumer group.Boolean
xgroupDestroy(K key, K group)
Destroy a consumer group.String
xgroupSetid(XReadArgs.StreamOffset<K> streamOffset, K group)
Set the currentgroup
id.List<Object>
xinfoConsumers(K key, K group)
Retrieve information about consumer groups of groupgroup
and stream atkey
.List<Object>
xinfoGroups(K key)
Retrieve information about the stream consumer groups atkey
.List<Object>
xinfoStream(K key)
Retrieve information about the stream atkey
.Long
xlen(K key)
Get the length of a steam.List<PendingMessage>
xpending(K key, Consumer<K> consumer, Range<String> range, Limit limit)
Read pending messages from a stream within a specificRange
.List<PendingMessage>
xpending(K key, XPendingArgs<K> args)
Read pending messages from a stream within a specificXPendingArgs
.PendingMessages
xpending(K key, K group)
Read pending messages from a stream for agroup
.List<PendingMessage>
xpending(K key, K group, Range<String> range, Limit limit)
Read pending messages from a stream within a specificRange
.List<StreamMessage<K,V>>
xrange(K key, Range<String> range)
Read messages from a stream within a specificRange
.List<StreamMessage<K,V>>
xrange(K key, Range<String> range, Limit limit)
List<StreamMessage<K,V>>
xread(XReadArgs.StreamOffset<K>... streams)
Read messages from one or moreXReadArgs.StreamOffset
s.List<StreamMessage<K,V>>
xread(XReadArgs args, XReadArgs.StreamOffset<K>... streams)
Read messages from one or moreXReadArgs.StreamOffset
s.List<StreamMessage<K,V>>
xreadgroup(Consumer<K> consumer, XReadArgs.StreamOffset<K>... streams)
Read messages from one or moreXReadArgs.StreamOffset
s using a consumer group.List<StreamMessage<K,V>>
xreadgroup(Consumer<K> consumer, XReadArgs args, XReadArgs.StreamOffset<K>... streams)
Read messages from one or moreXReadArgs.StreamOffset
s using a consumer group.List<StreamMessage<K,V>>
xrevrange(K key, Range<String> range)
Read messages from a stream within a specificRange
in reverse order.List<StreamMessage<K,V>>
xrevrange(K key, Range<String> range, Limit limit)
Long
xtrim(K key, boolean approximateTrimming, long count)
Trims the stream tocount
elements.Long
xtrim(K key, long count)
Trims the stream tocount
elements.Long
xtrim(K key, XTrimArgs args)
Trims the stream within a specificXTrimArgs
.
-
-
-
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 streamkey
.- 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 streamkey
.- 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 streamkey
.- 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 streamkey
.- 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 withXClaimArgs.justid()
) suppresses the message bode andStreamMessage.getBody()
isnull
.- 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 currentgroup
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 atkey
.- 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 atkey
.- 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 groupgroup
and stream atkey
.- 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 agroup
.- 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 specificRange
.- Parameters:
key
- the stream key.group
- name of the consumer group.range
- must not benull
.limit
- must not benull
.- 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 specificRange
.- Parameters:
key
- the stream key.consumer
- consumer identified by group name and consumer key.range
- must not benull
.limit
- must not benull
.- 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 specificXPendingArgs
.- 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 specificRange
.- Parameters:
key
- the stream key.range
- must not benull
.- 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)
- Parameters:
key
- the stream key.range
- must not benull
.limit
- must not benull
.- 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 moreXReadArgs.StreamOffset
s.- 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 moreXReadArgs.StreamOffset
s.- 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 moreXReadArgs.StreamOffset
s 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 moreXReadArgs.StreamOffset
s 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 specificRange
in reverse order.- Parameters:
key
- the stream key.range
- must not benull
.- 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)
- Parameters:
key
- the stream key.range
- must not benull
.limit
- must not benull
.- Returns:
- List<StreamMessage> array-reply list with members of the resulting stream.
-
xtrim
Long xtrim(K key, long count)
Trims the stream tocount
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 tocount
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.
-
-