Package io.lettuce.core.api.sync
Interface RedisListCommands<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 RedisListCommands<K,V>
Synchronous executed commands for Lists.- Since:
- 4.0
- Author:
- Mark Paluch
- Generated class:
- by io.lettuce.apigenerator.CreateSyncApi
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description V
blmove(K source, K destination, LMoveArgs args, double timeout)
Atomically returns and removes the first/last element (head/tail depending on the where from argument) of the list stored at source, and pushes the element at the first/last element (head/tail depending on the whereto argument) of the list stored at destination.V
blmove(K source, K destination, LMoveArgs args, long timeout)
Atomically returns and removes the first/last element (head/tail depending on the where from argument) of the list stored at source, and pushes the element at the first/last element (head/tail depending on the whereto argument) of the list stored at destination.KeyValue<K,List<V>>
blmpop(double timeout, LMPopArgs args, K... keys)
Remove and get the first/last elements in a list, or block until one is available.KeyValue<K,List<V>>
blmpop(long timeout, LMPopArgs args, K... keys)
Remove and get the first/last elements in a list, or block until one is available.KeyValue<K,V>
blpop(double timeout, K... keys)
Remove and get the first element in a list, or block until one is available.KeyValue<K,V>
blpop(long timeout, K... keys)
Remove and get the first element in a list, or block until one is available.KeyValue<K,V>
brpop(double timeout, K... keys)
Remove and get the last element in a list, or block until one is available.KeyValue<K,V>
brpop(long timeout, K... keys)
Remove and get the last element in a list, or block until one is available.V
brpoplpush(double timeout, K source, K destination)
Pop a value from a list, push it to another list and return it; or block until one is available.V
brpoplpush(long timeout, K source, K destination)
Pop a value from a list, push it to another list and return it; or block until one is available.V
lindex(K key, long index)
Get an element from a list by its index.Long
linsert(K key, boolean before, V pivot, V value)
Insert an element before or after another element in a list.Long
llen(K key)
Get the length of a list.V
lmove(K source, K destination, LMoveArgs args)
Atomically returns and removes the first/last element (head/tail depending on the where from argument) of the list stored at source, and pushes the element at the first/last element (head/tail depending on the whereto argument) of the list stored at destination.KeyValue<K,List<V>>
lmpop(LMPopArgs args, K... keys)
Remove and get the first/last elements in a list.V
lpop(K key)
Remove and get the first element in a list.List<V>
lpop(K key, long count)
Remove and get the firstcount
elements in a list.Long
lpos(K key, V value)
Return the index of matching elements inside a Redis list.List<Long>
lpos(K key, V value, int count)
Return the index of matching elements inside a Redis list using theCOUNT
option.List<Long>
lpos(K key, V value, int count, LPosArgs args)
Return the index of matching elements inside a Redis list using theCOUNT
option.Long
lpos(K key, V value, LPosArgs args)
Return the index of matching elements inside a Redis list.Long
lpush(K key, V... values)
Prepend one or multiple values to a list.Long
lpushx(K key, V... values)
Prepend values to a list, only if the list exists.Long
lrange(ValueStreamingChannel<V> channel, K key, long start, long stop)
Get a range of elements from a list.List<V>
lrange(K key, long start, long stop)
Get a range of elements from a list.Long
lrem(K key, long count, V value)
Remove elements from a list.String
lset(K key, long index, V value)
Set the value of an element in a list by its index.String
ltrim(K key, long start, long stop)
Trim a list to the specified range.V
rpop(K key)
Remove and get the last element in a list.List<V>
rpop(K key, long count)
Remove and get the lastcount
elements in a list.V
rpoplpush(K source, K destination)
Remove the last element in a list, append it to another list and return it.Long
rpush(K key, V... values)
Append one or multiple values to a list.Long
rpushx(K key, V... values)
Append values to a list, only if the list exists.
-
-
-
Method Detail
-
blmove
V blmove(K source, K destination, LMoveArgs args, long timeout)
Atomically returns and removes the first/last element (head/tail depending on the where from argument) of the list stored at source, and pushes the element at the first/last element (head/tail depending on the whereto argument) of the list stored at destination. When source is empty, Redis will block the connection until another client pushes to it or until timeout is reached.- Parameters:
source
- the source key.destination
- the destination type: key.args
- command arguments to configure source and destination directions.timeout
- the timeout in seconds.- Returns:
- V bulk-string-reply the element being popped and pushed.
- Since:
- 6.1
-
blmove
V blmove(K source, K destination, LMoveArgs args, double timeout)
Atomically returns and removes the first/last element (head/tail depending on the where from argument) of the list stored at source, and pushes the element at the first/last element (head/tail depending on the whereto argument) of the list stored at destination. When source is empty, Redis will block the connection until another client pushes to it or until timeout is reached.- Parameters:
source
- the source key.destination
- the destination type: key.args
- command arguments to configure source and destination directions.timeout
- the timeout in seconds.- Returns:
- V bulk-string-reply the element being popped and pushed.
- Since:
- 6.1.3
-
blmpop
KeyValue<K,List<V>> blmpop(long timeout, LMPopArgs args, K... keys)
Remove and get the first/last elements in a list, or block until one is available.- Parameters:
timeout
- the timeout in seconds.args
- the additional command arguments.keys
- the keys.- Returns:
- KeyValue<K,V> array-reply specifically.
null
whenkey
does not exist or the timeout was exceeded. - Since:
- 6.2
-
blmpop
KeyValue<K,List<V>> blmpop(double timeout, LMPopArgs args, K... keys)
Remove and get the first/last elements in a list, or block until one is available.- Parameters:
timeout
- the timeout in seconds.args
- the additional command arguments.keys
- the keys.- Returns:
- KeyValue<K,V> array-reply specifically.
null
whenkey
does not exist or the timeout was exceeded. - Since:
- 6.2
-
blpop
KeyValue<K,V> blpop(long timeout, K... keys)
Remove and get the first element in a list, or block until one is available.- Parameters:
timeout
- the timeout in seconds.keys
- the keys.- Returns:
- KeyValue<K,V> array-reply specifically:
A
null
multi-bulk when no element could be popped and the timeout expired. A two-element multi-bulk with the first element being the name of the key where an element was popped and the second element being the value of the popped element.
-
blpop
KeyValue<K,V> blpop(double timeout, K... keys)
Remove and get the first element in a list, or block until one is available.- Parameters:
timeout
- the timeout in seconds.keys
- the keys.- Returns:
- KeyValue<K,V> array-reply specifically:
A
null
multi-bulk when no element could be popped and the timeout expired. A two-element multi-bulk with the first element being the name of the key where an element was popped and the second element being the value of the popped element. - Since:
- 6.1.3
-
brpop
KeyValue<K,V> brpop(long timeout, K... keys)
Remove and get the last element in a list, or block until one is available.- Parameters:
timeout
- the timeout in seconds.keys
- the keys.- Returns:
- KeyValue<K,V> array-reply specifically:
A
null
multi-bulk when no element could be popped and the timeout expired. A two-element multi-bulk with the first element being the name of the key where an element was popped and the second element being the value of the popped element.
-
brpop
KeyValue<K,V> brpop(double timeout, K... keys)
Remove and get the last element in a list, or block until one is available.- Parameters:
timeout
- the timeout in seconds.keys
- the keys.- Returns:
- KeyValue<K,V> array-reply specifically:
A
null
multi-bulk when no element could be popped and the timeout expired. A two-element multi-bulk with the first element being the name of the key where an element was popped and the second element being the value of the popped element. - Since:
- 6.1.3
-
brpoplpush
V brpoplpush(long timeout, K source, K destination)
Pop a value from a list, push it to another list and return it; or block until one is available.- Parameters:
timeout
- the timeout in seconds.source
- the source key.destination
- the destination type: key.- Returns:
- V bulk-string-reply the element being popped from
source
and pushed todestination
. Iftimeout
is reached, a.
-
brpoplpush
V brpoplpush(double timeout, K source, K destination)
Pop a value from a list, push it to another list and return it; or block until one is available.- Parameters:
timeout
- the timeout in seconds.source
- the source key.destination
- the destination type: key.- Returns:
- V bulk-string-reply the element being popped from
source
and pushed todestination
. Iftimeout
is reached, a. - Since:
- 6.1.3
-
lindex
V lindex(K key, long index)
Get an element from a list by its index.- Parameters:
key
- the key.index
- the index type: long.- Returns:
- V bulk-string-reply the requested element, or
null
whenindex
is out of range.
-
linsert
Long linsert(K key, boolean before, V pivot, V value)
Insert an element before or after another element in a list.- Parameters:
key
- the key.before
- the before.pivot
- the pivot.value
- the value.- Returns:
- Long integer-reply the length of the list after the insert operation, or
-1
when the valuepivot
was not found.
-
llen
Long llen(K key)
Get the length of a list.- Parameters:
key
- the key.- Returns:
- Long integer-reply the length of the list at
key
.
-
lmove
V lmove(K source, K destination, LMoveArgs args)
Atomically returns and removes the first/last element (head/tail depending on the where from argument) of the list stored at source, and pushes the element at the first/last element (head/tail depending on the whereto argument) of the list stored at destination.- Parameters:
source
- the source key.destination
- the destination type: key.args
- command arguments to configure source and destination directions.- Returns:
- V bulk-string-reply the element being popped and pushed.
- Since:
- 6.1
-
lmpop
KeyValue<K,List<V>> lmpop(LMPopArgs args, K... keys)
Remove and get the first/last elements in a list.- Parameters:
args
- the additional command arguments.keys
- the keys.- Returns:
- KeyValue<K,V> array-reply specifically.
null
whenkey
does not exist. - Since:
- 6.2
-
lpop
V lpop(K key)
Remove and get the first element in a list.- Parameters:
key
- the key.- Returns:
- V bulk-string-reply the value of the first element, or
null
whenkey
does not exist.
-
lpop
List<V> lpop(K key, long count)
Remove and get the firstcount
elements in a list.- Parameters:
key
- the key.count
- the number of elements to return.- Returns:
- Since:
- 6.1
-
lpos
Long lpos(K key, V value)
Return the index of matching elements inside a Redis list. By default, when no options are given, it will scan the list from head to tail, looking for the first match of "element". If the element is found, its index (the zero-based position in the list) is returned. Otherwise, if no match is found,null
is returned. The returned elements indexes are always referring to whatlindex(java.lang.Object, long)
would return. So first element from head is0
, and so forth.- Parameters:
key
- the key.value
- the element to search for.- Returns:
- V integer-reply representing the matching element, or null if there is no match.
- Since:
- 5.3.2
-
lpos
Long lpos(K key, V value, LPosArgs args)
Return the index of matching elements inside a Redis list. By default, when no options are given, it will scan the list from head to tail, looking for the first match of "element". If the element is found, its index (the zero-based position in the list) is returned. Otherwise, if no match is found,null
is returned. The returned elements indexes are always referring to whatlindex(java.lang.Object, long)
would return. So first element from head is0
, and so forth.- Parameters:
key
- the key.value
- the element to search for.args
- command arguments to configureFIRST
andMAXLEN
options.- Returns:
- V integer-reply representing the matching element, or null if there is no match.
- Since:
- 5.3.2
-
lpos
List<Long> lpos(K key, V value, int count)
Return the index of matching elements inside a Redis list using theCOUNT
option. By default, when no options are given, it will scan the list from head to tail, looking for the first match of "element". The returned elements indexes are always referring to whatlindex(java.lang.Object, long)
would return. So first element from head is0
, and so forth.- Parameters:
key
- the key.value
- the element to search for.count
- limit the number of matches.- Returns:
- V integer-reply representing the matching elements, or empty if there is no match.
- Since:
- 5.3.2
-
lpos
List<Long> lpos(K key, V value, int count, LPosArgs args)
Return the index of matching elements inside a Redis list using theCOUNT
option. By default, when no options are given, it will scan the list from head to tail, looking for the first match of "element". The returned elements indexes are always referring to whatlindex(java.lang.Object, long)
would return. So first element from head is0
, and so forth.- Parameters:
key
- the key.value
- the element to search for.count
- limit the number of matches.args
- command arguments to configureFIRST
andMAXLEN
options.- Returns:
- V integer-reply representing the matching elements, or empty if there is no match.
- Since:
- 5.3.2
-
lpush
Long lpush(K key, V... values)
Prepend one or multiple values to a list.- Parameters:
key
- the key.values
- the value.- Returns:
- Long integer-reply the length of the list after the push operations.
-
lpushx
Long lpushx(K key, V... values)
Prepend values to a list, only if the list exists.- Parameters:
key
- the key.values
- the values.- Returns:
- Long integer-reply the length of the list after the push operation.
-
lrange
List<V> lrange(K key, long start, long stop)
Get a range of elements from a list.- Parameters:
key
- the key.start
- the start type: long.stop
- the stop type: long.- Returns:
- List<V> array-reply list of elements in the specified range.
-
lrange
Long lrange(ValueStreamingChannel<V> channel, K key, long start, long stop)
Get a range of elements from a list.- Parameters:
channel
- the channel.key
- the key.start
- the start type: long.stop
- the stop type: long.- Returns:
- Long count of elements in the specified range.
-
lrem
Long lrem(K key, long count, V value)
Remove elements from a list.- Parameters:
key
- the key.count
- the count type: long.value
- the value.- Returns:
- Long integer-reply the number of removed elements.
-
lset
String lset(K key, long index, V value)
Set the value of an element in a list by its index.- Parameters:
key
- the key.index
- the index type: long.value
- the value.- Returns:
- String simple-string-reply.
-
ltrim
String ltrim(K key, long start, long stop)
Trim a list to the specified range.- Parameters:
key
- the key.start
- the start type: long.stop
- the stop type: long.- Returns:
- String simple-string-reply.
-
rpop
V rpop(K key)
Remove and get the last element in a list.- Parameters:
key
- the key.- Returns:
- V bulk-string-reply the value of the last element, or
null
whenkey
does not exist.
-
rpop
List<V> rpop(K key, long count)
Remove and get the lastcount
elements in a list.- Parameters:
key
- the key.count
- the number of elements to return.- Returns:
- List<V> array-reply list of the last
count
elements, ornull
whenkey
does not exist. - Since:
- 6.1
-
rpoplpush
V rpoplpush(K source, K destination)
Remove the last element in a list, append it to another list and return it.- Parameters:
source
- the source key.destination
- the destination type: key.- Returns:
- V bulk-string-reply the element being popped and pushed.
-
rpush
Long rpush(K key, V... values)
Append one or multiple values to a list.- Parameters:
key
- the key.values
- the value.- Returns:
- Long integer-reply the length of the list after the push operation.
-
-