Skip to content

Class peagen.plugins.queues.redis_queue.RedisQueue

peagen.plugins.queues.redis_queue.RedisQueue

RedisQueue(uri, **_)

Wrapper providing Redis-like async queue operations.

Source code in peagen/plugins/queues/redis_queue.py
10
11
def __init__(self, uri: str, **_: object) -> None:
    self.client = Redis.from_url(uri, decode_responses=True)

client instance-attribute

client = from_url(uri, decode_responses=True)

get_client

get_client()
Source code in peagen/plugins/queues/redis_queue.py
13
14
def get_client(self) -> "RedisQueue":
    return self

sadd async

sadd(key, member)
Source code in peagen/plugins/queues/redis_queue.py
16
17
async def sadd(self, key: str, member: str) -> None:
    await self.client.sadd(key, member)

smembers async

smembers(key)
Source code in peagen/plugins/queues/redis_queue.py
19
20
21
async def smembers(self, key: str) -> list[str]:
    result = await self.client.smembers(key)
    return list(result)

rpush async

rpush(key, value)
Source code in peagen/plugins/queues/redis_queue.py
23
24
async def rpush(self, key: str, value: str) -> None:
    await self.client.rpush(key, value)

lrange async

lrange(key, start, end)
Source code in peagen/plugins/queues/redis_queue.py
26
27
async def lrange(self, key: str, start: int, end: int) -> list[str]:
    return await self.client.lrange(key, start, end)

blpop async

blpop(keys, timeout)
Source code in peagen/plugins/queues/redis_queue.py
29
30
async def blpop(self, keys: list[str], timeout: float) -> tuple[str, str] | None:
    return await self.client.blpop(keys, timeout)

brpop async

brpop(keys, timeout)
Source code in peagen/plugins/queues/redis_queue.py
32
33
async def brpop(self, keys: list[str], timeout: float) -> tuple[str, str] | None:
    return await self.client.brpop(keys, timeout)

get async

get(key)
Source code in peagen/plugins/queues/redis_queue.py
35
36
async def get(self, key: str) -> dict[str, Any]:
    return self.client.get(key)

set async

set(key, mapping)
Source code in peagen/plugins/queues/redis_queue.py
38
39
async def set(self, key: str, mapping: dict[str, Any]) -> None:
    await self.client.set(key, mapping)

hset async

hset(key, mapping)
Source code in peagen/plugins/queues/redis_queue.py
41
42
async def hset(self, key: str, mapping: dict[str, Any]) -> None:
    await self.client.hset(key, mapping=mapping)

hgetall async

hgetall(key)
Source code in peagen/plugins/queues/redis_queue.py
44
45
async def hgetall(self, key: str) -> dict[str, Any]:
    return await self.client.hgetall(key)

hget async

hget(key, field)
Source code in peagen/plugins/queues/redis_queue.py
47
48
async def hget(self, key: str, field: str) -> str | None:
    return await self.client.hget(key, field)

expire async

expire(key, ttl)
Source code in peagen/plugins/queues/redis_queue.py
50
51
async def expire(self, key: str, ttl: int) -> None:
    await self.client.expire(key, ttl)

exists async

exists(key)
Source code in peagen/plugins/queues/redis_queue.py
53
54
async def exists(self, key: str) -> bool:
    return await self.client.exists(key) > 0

keys async

keys(pattern)
Source code in peagen/plugins/queues/redis_queue.py
56
57
async def keys(self, pattern: str) -> list[str]:
    return await self.client.keys(pattern)

publish async

publish(channel, message)
Source code in peagen/plugins/queues/redis_queue.py
59
60
async def publish(self, channel: str, message: str) -> None:
    await self.client.publish(channel, message)