Eric Redis queues documentation#

A Redis implementation of persistence layer of eric-sse:

Reference#

class RedisConnection#

Bases: object

RedisConnection(host: str = ‘127.0.0.1’, port: int = 6379, db: int = 0)

__init__(host='127.0.0.1', port=6379, db=0)#
Parameters:
Return type:

None

class AbstractRedisQueue#

Bases: Queue, ABC

__init__(redis_connection, queue_id=None)#
Parameters:
class RedisQueue#

Bases: AbstractRedisQueue

pop()#

Next message from the queue.

Raises a NoMessagesException if the queue is empty.

Return type:

Any | None

class BlockingRedisQueue#

Bases: AbstractRedisQueue

Implements a blocking queue. See pop() documentation

pop()#

Behaviour relies on https://redis.io/docs/latest/commands/blpop/ , so calls to it with block program execution until a new message is pushed.

Return type:

Any | None

class RedisStorage#

Bases: KvStorage

__init__(prefix, redis_connection)#
Parameters:
fetch_by_prefix(prefix)#
Parameters:

prefix (str)

Return type:

Iterable[any]

fetch_all()#
Return type:

Iterable[any]

upsert(key, value)#
Parameters:
  • key (str)

  • value (any)

fetch_one(key)#
Parameters:

key (str)

Return type:

any

delete(key)#
Parameters:

key (str)

class RedisListenerRepository#

Bases: ListenerRepositoryInterface

__init__(redis_connection)#
Parameters:

redis_connection (RedisConnection)

load(connection_id)#

Loads a listener given the connection id it belongs to.

Parameters:

connection_id (str)

Return type:

MessageQueueListener

persist(connection_id, listener)#

Persists listener and assign to connection.

Parameters:
delete(connection_id)#

Deleted a listener given the connection id it belongs to.

Parameters:

connection_id (str)

class AbstractRedisConnectionFactory#

Bases: ConnectionsFactory, ABC

__init__(redis_connection)#
Parameters:

redis_connection (RedisConnection)

class RedisConnectionFactory#

Bases: AbstractRedisConnectionFactory

create(listener=None)#

Creates a connection

Parameters:

listener (MessageQueueListener) – If provided, assigns a concrete listener

Return type:

Connection

class RedisBlockingQueuesConnectionFactory#

Bases: AbstractRedisConnectionFactory

create(listener=None)#

Creates a connection

Parameters:

listener (MessageQueueListener) – If provided, assigns a concrete listener

Return type:

Connection

class RedisQueuesRepository#

Bases: QueueRepositoryInterface

__init__(redis_connection)#
Parameters:

redis_connection (RedisConnection)

load(connection_id)#

Loads a queue given the connection id it belongs to.

Parameters:

connection_id (str)

Return type:

AbstractRedisQueue

persist(connection_id, queue)#

Persists queue and assign to connection.

Parameters:
delete(connection_id)#

Deletes a queue given the connection id it belongs to.

Parameters:

connection_id (str)

class RedisConnectionRepository#

Bases: ConnectionRepository

__init__(redis_connection)#
Parameters:

redis_connection (RedisConnection)

class RedisSSEChannelRepository#

Bases: SSEChannelRepository

__init__(redis_connection)#
Parameters:

redis_connection (RedisConnection)

class RedisSSEChannelBlockingQueuesRepository#

Bases: SSEChannelRepository

__init__(redis_connection)#
Parameters:

redis_connection (RedisConnection)