BaseBroker - Пишем свой брокер
Base Broker.
BaseBroker
¶
Bases: ABC
BaseBroker
- Абстрактный класс, который является фундаментом для Брокеров.
Пример¶
from qtasks import QueueTasks
from qtasks.brokers.base import BaseBroker
class MyBroker(BaseBroker):
def __init__(self, name: str = None, storage: BaseStorage = None):
super().__init__(name=name, storage=storage)
pass
__init__(name=None, storage=None, log=None, config=None)
¶
Инициализация BaseBroker.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
name
|
str
|
Имя проекта. По умолчанию: |
None
|
storage
|
BaseStorage
|
Хранилище. По умолчанию: |
None
|
log
|
Logger
|
Логгер. По умолчанию: |
None
|
config
|
QueueConfig
|
Конфиг. По умолчанию: |
None
|
add(task_name, priority=0, extra=None, args=None, kwargs=None)
abstractmethod
¶
Добавление задачи в брокер.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
task_name
|
str
|
Имя задачи. |
required |
priority
|
int
|
Приоритет задачи. По умоланию: 0. |
0
|
extra
|
dict
|
Дополнительные параметры задачи. |
None
|
args
|
tuple
|
Аргументы задачи типа args. |
None
|
kwargs
|
dict
|
Аргументы задачи типа kwargs. |
None
|
Returns:
Name | Type | Description |
---|---|---|
Task |
Task
|
|
add_plugin(plugin, trigger_names=None)
¶
Добавить плагин в класс.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
plugin
|
BasePlugin
|
Плагин |
required |
trigger_names
|
List[str]
|
Имя триггеров для плагина. По умолчанию: будет добавлен в |
None
|
flush_all()
¶
Удалить все данные.
get(uuid)
abstractmethod
¶
Получение информации о задаче.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
uuid
|
UUID | str
|
UUID задачи. |
required |
Returns:
Type | Description |
---|---|
Task | None
|
Task|None: Если есть информация о задаче, возвращает |
init_plugins()
¶
Инициализация плагинов.
start(worker=None)
abstractmethod
¶
Запуск Брокера. Эта функция задействуется основным экземпляром QueueTasks
через run_forever
.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
worker
|
BaseWorker
|
класс Воркера. По умолчанию: |
None
|
stop()
abstractmethod
¶
Останавливает брокер. Эта функция задействуется основным экземпляром QueueTasks
после завершения функции run_forever
.
update(**kwargs)
abstractmethod
¶
Обновляет информацию о задаче.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
kwargs
|
dict
|
данные задачи типа kwargs. |
{}
|
update_config(config)
¶
Обновляет конфиг брокера.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
config
|
QueueConfig
|
Конфиг. |
required |