Class BlockingListCommandsImpl<K,V>
java.lang.Object
io.quarkus.redis.runtime.datasource.AbstractRedisCommandGroup
io.quarkus.redis.runtime.datasource.BlockingListCommandsImpl<K,V>
- All Implemented Interfaces:
ListCommands<K,
,V> RedisCommands
public class BlockingListCommandsImpl<K,V>
extends AbstractRedisCommandGroup
implements ListCommands<K,V>
-
Field Summary
Fields inherited from class io.quarkus.redis.runtime.datasource.AbstractRedisCommandGroup
ds, timeout
-
Constructor Summary
ConstructorDescriptionBlockingListCommandsImpl
(RedisDataSource ds, ReactiveListCommands<K, V> reactive, Duration timeout) -
Method Summary
Modifier and TypeMethodDescriptionblmove
(K source, K destination, Position positionInSource, Position positionInDest, Duration timeout) Execute the command BLMOVE.Execute the command BLMPOP.Execute the command BLMPOP.Execute the command BLPOP.Execute the command BRPOP.brpoplpush
(Duration timeout, K source, K destination) Execute the command BRPOPLPUSH.Execute the command LINDEX.long
linsertAfterPivot
(K key, V pivot, V element) Execute the command LINSERT.long
linsertBeforePivot
(K key, V pivot, V element) Execute the command LINSERT.long
Execute the command LLEN.Execute the command LMOVE.Execute the command LMPOP.Execute the command LMPOP.Execute the command LPOP.Execute the command LPOP.Execute the command LPOS.Execute the command LPOS.Execute the command LPOS.Execute the command LPOS.long
Execute the command LPUSH.long
Execute the command LPUSHX.Execute the command LRANGE.long
Execute the command LREM.void
Execute the command LSET.void
Execute the command LTRIM.Execute the command RPOP.Execute the command RPOP.Execute the command RPOPLPUSH.long
Execute the command RPUSH.long
Execute the command RPUSHX.Execute the command SORT.Execute the command SORT.long
sortAndStore
(K key, K destination) Execute the command SORT with theSTORE
option.long
sortAndStore
(K key, K destination, SortArgs sortArguments) Execute the command SORT with theSTORE
option.Methods inherited from class io.quarkus.redis.runtime.datasource.AbstractRedisCommandGroup
getDataSource
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface io.quarkus.redis.datasource.RedisCommands
getDataSource
-
Constructor Details
-
BlockingListCommandsImpl
public BlockingListCommandsImpl(RedisDataSource ds, ReactiveListCommands<K, V> reactive, Duration timeout)
-
-
Method Details
-
blmove
public V blmove(K source, K destination, Position positionInSource, Position positionInDest, Duration timeout) Description copied from interface:ListCommands
Execute the command BLMOVE. Summary: Pop an element from a list, push it to another list and return it; or block until one is available Group: list Requires Redis 6.2.0- Specified by:
blmove
in interfaceListCommands<K,
V> - Parameters:
source
- the keydestination
- the keypositionInSource
- the position of the element in the source,LEFT
means the first element,RIGHT
means the last element.positionInDest
- the position of the element in the destination,LEFT
means the first element,RIGHT
means the last element.timeout
- the operation timeout (in seconds)- Returns:
- the element being popped from source and pushed to destination. If timeout is reached, a Null reply is returned.
-
blmpop
Description copied from interface:ListCommands
Execute the command BLMPOP. Summary: Pop elements from a list, or block until one is available Group: list Requires Redis 7.0.0- Specified by:
blmpop
in interfaceListCommands<K,
V> - Parameters:
timeout
- the operation timeout (in seconds)position
- whether if the element must be popped from the beginning of the list (LEFT
) or from the end (RIGHT
)keys
- the keys from which the element must be popped- Returns:
null
when no element could be popped, and timeout is reached, otherwise the key/value structure
-
blmpop
Description copied from interface:ListCommands
Execute the command BLMPOP. Summary: Pop elements from a list, or block until one is available Group: list Requires Redis 7.0.0- Specified by:
blmpop
in interfaceListCommands<K,
V> - Parameters:
timeout
- the operation timeout (in seconds)position
- whether if the element must be popped from the beginning of the list (LEFT
) or from the end (RIGHT
)count
- the number of element to popkeys
- the keys from which the element must be popped- Returns:
null
when no element could be popped, and timeout is reached, otherwise the list of key/value structures
-
blpop
Description copied from interface:ListCommands
Execute the command BLPOP. Summary: Remove and get the first element in a list, or block until one is available Group: list Requires Redis 2.0.0- Specified by:
blpop
in interfaceListCommands<K,
V> - Parameters:
timeout
- the operation timeout (in seconds)keys
- the keys from which the element must be popped- Returns:
- A
null
multi-bulk when no element could be popped and the timeout expired, otherwise the key/value structure.
-
brpop
Description copied from interface:ListCommands
Execute the command BRPOP. Summary: Remove and get the last element in a list, or block until one is available Group: list Requires Redis 2.0.0- Specified by:
brpop
in interfaceListCommands<K,
V> - Parameters:
timeout
- the operation timeout (in seconds)keys
- the keys from which the element must be popped- Returns:
- A
null
multi-bulk when no element could be popped and the timeout expired, otherwise the key/value structure.
-
brpoplpush
Description copied from interface:ListCommands
Execute the command BRPOPLPUSH. Summary: Pop an element from a list, push it to another list and return it; or block until one is available Group: list Requires Redis 2.2.0- Specified by:
brpoplpush
in interfaceListCommands<K,
V> - Parameters:
timeout
- the timeout, in secondssource
- the source keydestination
- the detination key- Returns:
- the element being popped from source and pushed to destination. If timeout is reached, a Null reply is returned.
-
lindex
Description copied from interface:ListCommands
Execute the command LINDEX. Summary: Get an element from a list by its index Group: list Requires Redis 1.0.0- Specified by:
lindex
in interfaceListCommands<K,
V> - Parameters:
key
- the keyindex
- the index- Returns:
- the requested element, or
null
when index is out of range.
-
linsertBeforePivot
Description copied from interface:ListCommands
Execute the command LINSERT. Summary: Insert an element before another element in a list Group: list Requires Redis 2.2.0- Specified by:
linsertBeforePivot
in interfaceListCommands<K,
V> - Parameters:
key
- the keypivot
- the pivot, i.e. the position referenceelement
- the element to insert- Returns:
- the length of the list after the insert operation, or -1 when the value
pivot
was not found.
-
linsertAfterPivot
Description copied from interface:ListCommands
Execute the command LINSERT. Summary: Insert an element after another element in a list Group: list Requires Redis 2.2.0- Specified by:
linsertAfterPivot
in interfaceListCommands<K,
V> - Parameters:
key
- the keypivot
- the pivot, i.e. the position referenceelement
- the element to insert- Returns:
- the length of the list after the insert operation, or -1 when the value
pivot
was not found.
-
llen
Description copied from interface:ListCommands
Execute the command LLEN. Summary: Get the length of a list Group: list Requires Redis 1.0.0- Specified by:
llen
in interfaceListCommands<K,
V> - Parameters:
key
- the key- Returns:
- the length of the list at key, if the list is empty, 0 is returned.
-
lmove
Description copied from interface:ListCommands
Execute the command LMOVE. Summary: Pop an element from a list, push it to another list and return it Group: list Requires Redis 6.2.0- Specified by:
lmove
in interfaceListCommands<K,
V> - Parameters:
source
- the keydestination
- the keypositionInSource
- the position of the element to pop in the source (LEFT: first element, RIGHT: last element)positionInDestination
- the position of the element to insert in the destination (LEFT: first element, RIGHT: last element)- Returns:
- the element being popped and pushed.
-
lmpop
Description copied from interface:ListCommands
Execute the command LMPOP. Summary: Pop one element from the first non-empty list Group: list Requires Redis 7.0.0- Specified by:
lmpop
in interfaceListCommands<K,
V> - Parameters:
position
- the position of the item to pop (LEFT: beginning ot the list, RIGHT: end of the list)keys
- the keys from which the item will be popped, must not be empty- Returns:
- A
null
when no element could be popped. AKeyValue
with the key and popped value.
-
lmpop
Description copied from interface:ListCommands
Execute the command LMPOP. Summary: Popcount
elements from the first non-empty list Group: list Requires Redis 7.0.0- Specified by:
lmpop
in interfaceListCommands<K,
V> - Parameters:
position
- the position of the item to pop (LEFT: beginning ot the list, RIGHT: end of the list)count
- the number of items to popkeys
- the keys from which the item will be popped, must not be empty- Returns:
empty
when no element could be popped. A list ofKeyValue
with at most count items.
-
lpop
Description copied from interface:ListCommands
Execute the command LPOP. Summary: Remove and get the first elements in a list Group: list Requires Redis 1.0.0- Specified by:
lpop
in interfaceListCommands<K,
V> - Parameters:
key
- the key- Returns:
- the value of the first element, or
null
when key does not exist.
-
lpop
Description copied from interface:ListCommands
Execute the command LPOP. Summary: Remove and get the first elements in a list Group: list Requires Redis 1.0.0- Specified by:
lpop
in interfaceListCommands<K,
V> - Parameters:
key
- the keycount
- the number of element to pop- Returns:
- the popped elements (at most
count
), orempty
when key does not exist.
-
lpos
Description copied from interface:ListCommands
Execute the command LPOS. Summary: Return the index of matching elements on a list Group: list Requires Redis 6.0.6- Specified by:
lpos
in interfaceListCommands<K,
V> - Parameters:
key
- the keyelement
- the element to find- Returns:
- The command returns the integer representing the matching element, or
empty
if there is no match.
-
lpos
Description copied from interface:ListCommands
Execute the command LPOS. Summary: Return the index of matching elements on a list Group: list Requires Redis 6.0.6- Specified by:
lpos
in interfaceListCommands<K,
V> - Parameters:
key
- the keyelement
- the element to findargs
- the extra command parameter- Returns:
- The command returns the integer representing the matching element, or
empty
if there is no match.
-
lpos
Description copied from interface:ListCommands
Execute the command LPOS. Summary: Return the index of matching elements on a list Group: list Requires Redis 6.0.6- Specified by:
lpos
in interfaceListCommands<K,
V> - Parameters:
key
- the keyelement
- the element to findcount
- the number of occurrence to find- Returns:
- the list of positions (empty if there are no matches).
-
lpos
Description copied from interface:ListCommands
Execute the command LPOS. Summary: Return the index of matching elements on a list Group: list Requires Redis 6.0.6- Specified by:
lpos
in interfaceListCommands<K,
V> - Parameters:
key
- the keyelement
- the element to findcount
- the number of occurrence to find- Returns:
- the list of positions (empty if there are no matches).
-
lpush
Description copied from interface:ListCommands
Execute the command LPUSH. Summary: Prepend one or multiple elements to a list Group: list Requires Redis 1.0.0- Specified by:
lpush
in interfaceListCommands<K,
V> - Parameters:
key
- the keyelements
- the elements to add- Returns:
- the length of the list after the push operations.
-
lpushx
Description copied from interface:ListCommands
Execute the command LPUSHX. Summary: Prepend an element to a list, only if the list exists Group: list Requires Redis 2.2.0- Specified by:
lpushx
in interfaceListCommands<K,
V> - Parameters:
key
- the keyelements
- the elements to add- Returns:
- the length of the list after the push operation.
-
lrange
Description copied from interface:ListCommands
Execute the command LRANGE. Summary: Get a range of elements from a list Group: list Requires Redis 1.0.0- Specified by:
lrange
in interfaceListCommands<K,
V> - Parameters:
key
- the keystart
- the starting positionstop
- the last position- Returns:
- list of elements in the specified range.
-
lrem
Description copied from interface:ListCommands
Execute the command LREM. Summary: Remove elements from a list Group: list Requires Redis 1.0.0- Specified by:
lrem
in interfaceListCommands<K,
V> - Parameters:
key
- the keycount
- the number of occurence to remove, following the given rules: if count > 0: Remove elements equal to element moving from head to tail. if count < 0: Remove elements equal to element moving from tail to head. if count = 0: Remove all elements equal to element.element
- the element to remove- Returns:
- the number of removed elements.
-
lset
Description copied from interface:ListCommands
Execute the command LSET. Summary: Set the value of an element in a list by its index Group: list Requires Redis 1.0.0- Specified by:
lset
in interfaceListCommands<K,
V> - Parameters:
key
- the keyindex
- the indexelement
- the element to insert
-
ltrim
Description copied from interface:ListCommands
Execute the command LTRIM. Summary: Trim a list to the specified range Group: list Requires Redis 1.0.0- Specified by:
ltrim
in interfaceListCommands<K,
V> - Parameters:
key
- the keystart
- the starting indexstop
- the last index
-
rpop
Description copied from interface:ListCommands
Execute the command RPOP. Summary: Remove and get the last elements in a list Group: list Requires Redis 1.0.0- Specified by:
rpop
in interfaceListCommands<K,
V> - Parameters:
key
- the key- Returns:
- the value of the last element, or
null
when key does not exist.
-
rpop
Description copied from interface:ListCommands
Execute the command RPOP. Summary: Remove and get the last elements in a list Group: list Requires Redis 1.0.0- Specified by:
rpop
in interfaceListCommands<K,
V> - Parameters:
key
- the keycount
- the number of element to pop- Returns:
- the list of popped elements, or
null
when key does not exist.
-
rpoplpush
Description copied from interface:ListCommands
Execute the command RPOPLPUSH. Summary: Remove the last element in a list, prepend it to another list and return it Group: list Requires Redis 1.2.0- Specified by:
rpoplpush
in interfaceListCommands<K,
V> - Parameters:
source
- the keydestination
- the key- Returns:
- the element being popped and pushed, or
null
if the source does not exist
-
rpush
Description copied from interface:ListCommands
Execute the command RPUSH. Summary: Append one or multiple elements to a list Group: list Requires Redis 1.0.0- Specified by:
rpush
in interfaceListCommands<K,
V> - Parameters:
key
- the keyvalues
- the values to add to the list- Returns:
- the length of the list after the push operation.
-
rpushx
Description copied from interface:ListCommands
Execute the command RPUSHX. Summary: Append an element to a list, only if the list exists Group: list Requires Redis 2.2.0- Specified by:
rpushx
in interfaceListCommands<K,
V> - Parameters:
key
- the keyvalues
- the values to add to the list- Returns:
- the length of the list after the push operation.
-
sort
Description copied from interface:ListCommands
Execute the command SORT. Summary: Sort the elements in a list, set or sorted set Group: generic Requires Redis 1.0.0- Specified by:
sort
in interfaceListCommands<K,
V> - Returns:
- the list of sorted elements.
-
sort
Description copied from interface:ListCommands
Execute the command SORT. Summary: Sort the elements in a list, set or sorted set Group: generic Requires Redis 1.0.0- Specified by:
sort
in interfaceListCommands<K,
V> - Parameters:
key
- the keysortArguments
- theSORT
command extra-arguments- Returns:
- the list of sorted elements.
-
sortAndStore
Description copied from interface:ListCommands
Execute the command SORT with theSTORE
option. Summary: Sort the elements in a list, set or sorted set Group: generic Requires Redis 1.0.0- Specified by:
sortAndStore
in interfaceListCommands<K,
V> sortArguments
- the SORT command extra-arguments- Returns:
- the number of sorted elements in the destination list.
-
sortAndStore
Description copied from interface:ListCommands
Execute the command SORT with theSTORE
option. Summary: Sort the elements in a list, set or sorted set Group: generic Requires Redis 1.0.0- Specified by:
sortAndStore
in interfaceListCommands<K,
V> - Returns:
- the number of sorted elements in the destination list.
-