minos.networks.brokers.publishers.queued.queues.database

Classes

BrokerPublisherQueueDatabaseOperationFactory

Broker Publisher Queue Database Operation Factory class.

DatabaseBrokerPublisherQueue

Database Broker Publisher Queue class.

class BrokerPublisherQueueDatabaseOperationFactory[source]

Bases: BrokerQueueDatabaseOperationFactory, ABC

Broker Publisher Queue Database Operation Factory class.

abstract build_count(retry, *args, **kwargs)

Build the “count not processed” query.

Returns

Parameters

retry (int) –

Return type

DatabaseOperation

abstract build_create()

Build the “create table” query.

Returns

A SQL instance.

Return type

DatabaseOperation

abstract build_delete(id_)

Build the “delete processed” query.

Returns

A SQL instance.

Parameters

id_ (int) –

Return type

DatabaseOperation

abstract build_mark_processed(id_)

Build the “update not processed” query.

Returns

A SQL instance.

Parameters

id_ (int) –

Return type

DatabaseOperation

abstract build_mark_processing(ids)
Returns

A SQL instance.

Parameters

ids (Iterable[int]) –

Return type

DatabaseOperation

abstract build_query(retry, records, *args, **kwargs)

Build the “select not processed” query.

Returns

A SQL instance.

Parameters
  • retry (int) –

  • records (int) –

Return type

DatabaseOperation

abstract build_submit(topic, data)

Build the “insert” query.

Returns

A SQL instance.

Parameters
Return type

DatabaseOperation

class DatabaseBrokerPublisherQueue[source]

Bases: DatabaseBrokerQueue[BrokerPublisherQueueDatabaseOperationFactory], BrokerPublisherQueue

Database Broker Publisher Queue class.

__init__(*args, retry=None, records=None, database_key=None, **kwargs)
Parameters
property already_destroyed: bool

Already Destroy getter.

Returns

A boolean value.

property already_setup: bool

Already Setup getter.

Returns

A boolean value.

property database_client_cls: type[minos.common.database.clients.abc.DatabaseClient]

Get the client’s class.

Returns

A type instance that is subclass of DatabaseClient.

property database_operation_factory: Optional[minos.common.database.mixins.GenericDatabaseOperationFactory]

Get the operation factory if any.

Returns

A OperationFactory if it has been set or None otherwise.

property database_pool: minos.common.database.pools.DatabaseClientPool

Get the database pool.

Returns

A DatabaseClientPool object.

async dequeue()

Dequeue method.

Return type

BrokerMessage

async destroy()

Destroy miscellaneous repository things.

Returns

This method does not return anything.

Return type

None

async enqueue(message)

Enqueue method.

Parameters

message (BrokerMessage) –

Return type

None

async execute_on_database(operation)

Submit an Operation.

Parameters

operation (DatabaseOperation) – The operation to be executed.

Returns

This method does not return anything.

Return type

None

async execute_on_database_and_fetch_all(operation, streaming_mode=None)

Submit an Operation and return an asynchronous iterator.

Parameters
  • operation (DatabaseOperation) – The operation to be executed.

  • streaming_mode (Optional[bool]) – If True return the values in streaming directly from the database (keep an open database connection), otherwise preloads the full set of values on memory and then retrieves them.

Returns

This method does not return anything.

Return type

AsyncIterator[tuple]

async execute_on_database_and_fetch_one(operation)

Submit an Operation and get the first response.

Parameters

operation (DatabaseOperation) – The operation to be executed.

Returns

This method does not return anything.

Return type

Any

classmethod from_config(config=None, **kwargs)

Build a new instance from config.

Parameters
  • config (Optional[Union[Config, Path]]) – Config instance. If None is provided, default config is chosen.

  • kwargs – Additional named arguments.

Returns

A instance of the called class.

Return type

S

classmethod get_builder()

Get the builder class.

Returns

A Builder instance.

Return type

Builder[Ins]

property records: int

Get the records value.

Returns

A int value.

property retry: int

Get the retry value.

Returns

A int value.

classmethod set_builder(builder)

Set a builder class.

Parameters

builder (Union[Builder[Ins], type[minos.common.builders.Builder[~Ins]]]) – The builder class to be set.

Returns

This method does not return anything.

Return type

None

async setup()

Setup miscellaneous repository things.

Returns

This method does not return anything.

Return type

None