This commit is contained in:
2025-11-02 00:17:28 +03:00
parent acddb1fbc6
commit df7313912c
26 changed files with 501 additions and 566 deletions
+23 -21
View File
@@ -3,9 +3,9 @@
Response
========
Объект ``Response`` представляет собой сущность ответа пользовательского ввода, передаваемого в обработчик команды. Он создаётся автоматически при парсинге пользовательского ввода и содержит информацию о статусе валидации флагов, введённые флаги, а также предоставляет механизм для передачи данных между обработчиками команд через глобальное хранилище данных.
`Response` — это объект, который передаётся в обработчик команды. Он создаётся автоматически при обработке пользовательского ввода и содержит статус валидации, введённые флаги, а также предоставляет механизм для обмена данными между обработчиками.
``Response`` наследуется от ``DataBridge``, который предоставляет методы для работы с глобальным хранилищем данных, позволяющим обмениваться данными между различными обработчиками команд в контексте приложения.
`Response` наследует от `DataBridge` методы для работы с глобальным хранилищем, что позволяет обмениваться данными между обработчиками в рамках одной сессии.
.. seealso::
@@ -29,23 +29,25 @@ Response
input_flags: InputFlags = EMPTY_INPUT_FLAGS,
)
Создаёт новый объект ответа на пользовательский ввод.
Создаёт новый объект ответа.
* ``status`` : Статус валидации флагов команды из перечисления ``ResponseStatus``
* ``input_flags`` : Коллекция введённых флагов команды. По умолчанию используется пустая коллекция ``EMPTY_INPUT_FLAGS``
* ``status``: Общий статус валидации флагов из перечисления `ResponseStatus`.
* ``input_flags``: Коллекция введённых флагов (`InputFlags`). По умолчанию — пустая.
.. warning ::
Экземпляры класса не предназначены для их прямого создания. Они автоматически создаются системой при обработке пользовательского ввода и передаются в обработчики команд в качестве обязательного первого аргумента.
Экземпляры этого класса не предназначены для прямого создания. Они автоматически формируются системой и передаются в обработчик команды в качестве первого обязательного аргумента.
**Атрибуты:**
.. py:attribute:: status
:no-index:
Статус валидации всех флагов команды типа ``ResponseStatus``. Указывает, были ли среди введённых флагов невалидные или незарегистрированные.
Общий статус валидации всех флагов команды (`ResponseStatus`). Указывает, были ли среди введённых флагов некорректные или незарегистрированные.
.. py:attribute:: input_flags
:no-index:
Коллекция всех флагов, переданных с командой, типа ``InputFlags``. Содержит все распарсенные флаги команды с их значениями и статусами валидации.
Коллекция всех флагов, переданных с командой (`InputFlags`). Содержит все обработанные флаги с их значениями и статусами валидации.
**Пример использования:**
@@ -57,7 +59,7 @@ Response
Методы DataBridge
``Response`` наследует от ``DataBridge`` методы для работы с глобальным хранилищем данных, которое позволяет передавать информацию между различными обработчиками команд в рамках одного сеанса работы приложения.
`Response` наследует от `DataBridge` методы для работы с глобальным хранилищем, которое позволяет обмениваться данными между обработчиками в рамках одной сессии.
update_data
~~~~~~~~~~~
@@ -68,12 +70,12 @@ update_data
@classmethod
update_data(cls, data: dict[str, Any]) -> None
Обновляет глобальное хранилище данных, добавляя или обновляя значения из переданного словаря.
Обновляет глобальное хранилище, добавляя или изменяя значения из переданного словаря.
:param data: Словарь с данными для обновления хранилища
:return: None
Метод объединяет переданные данные с существующими данными в хранилище. Если ключ уже существует, его значение будет обновлено.
Метод объединяет переданный словарь с данными в хранилище. Если ключ уже существует, его значение обновляется.
**Пример использования:**
@@ -92,7 +94,7 @@ get_data
@classmethod
get_data(cls) -> dict[str, Any]
Получает все данные из глобального хранилища.
Возвращает все данные из глобального хранилища.
:return: Словарь со всеми данными из хранилища
@@ -113,7 +115,7 @@ clear_data
@classmethod
clear_data(cls) -> None
Очищает все данные из глобального хранилища.
Очищает глобальное хранилище.
:return: None
@@ -134,11 +136,11 @@ delete_from_data
@classmethod
delete_from_data(cls, key: str) -> None
Удаляет конкретный ключ и его значение из глобального хранилища данных.
Удаляет ключ и его значение из глобального хранилища.
:param key: Ключ, который необходимо удалить из хранилища
:return: None
:raises KeyError: Если указанный ключ не существует в хранилище
:raises KeyError: Если ключ не найден в хранилище.
**Пример использования:**
@@ -151,7 +153,7 @@ delete_from_data
Работа с флагами
----------------
``Response`` предоставляет доступ к введённым флагам команды через атрибут ``input_flags``. Вы можете проверять наличие флагов, получать их значения и статусы валидации.
`Response` предоставляет доступ к введённым флагам через атрибут `input_flags`. Вы можете проверять их наличие, получать значения и статусы валидации.
**Пример работы с флагами:**
@@ -166,7 +168,7 @@ delete_from_data
ResponseStatus
--------------
Enum ``ResponseStatus`` представляет собой перечисление, определяющее общий статус валидации всех флагов команды. Используется в атрибуте ``status`` объекта ``Response`` для информирования о результате проверки всех введённых флагов.
`ResponseStatus` — это перечисление (`Enum`), которое определяет общий статус валидации всех флагов команды. Используется в атрибуте `status` объекта `Response`.
Значения enum
~~~~~~~~~~~~~
@@ -179,7 +181,7 @@ ALL_FLAGS_VALID
ResponseStatus.ALL_FLAGS_VALID = 'ALL_FLAGS_VALID'
Указывает, что все введённые флаги команды прошли валидацию успешно. Нет ни невалидных, ни незарегистрированных флагов.
Все введённые флаги прошли валидацию. Нет ни некорректных, ни незарегистрированных флагов.
UNDEFINED_FLAGS
~~~~~~~~~~~~~~~
@@ -189,7 +191,7 @@ UNDEFINED_FLAGS
ResponseStatus.UNDEFINED_FLAGS = 'UNDEFINED_FLAGS'
Указывает, что среди введённых флагов присутствуют незарегистрированные флаги, но нет флагов с невалидными значениями.
Среди введённых флагов есть незарегистрированные, но нет флагов с некорректными значениями.
INVALID_VALUE_FLAGS
~~~~~~~~~~~~~~~~~~~
@@ -199,7 +201,7 @@ INVALID_VALUE_FLAGS
ResponseStatus.INVALID_VALUE_FLAGS = 'INVALID_VALUE_FLAGS'
Указывает, что среди введённых флагов присутствуют флаги с невалидными значениями, но нет незарегистрированных флагов.
Среди введённых флагов есть флаги с некорректными значениями, но нет незарегистрированных.
UNDEFINED_AND_INVALID_FLAGS
~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -209,4 +211,4 @@ UNDEFINED_AND_INVALID_FLAGS
ResponseStatus.UNDEFINED_AND_INVALID_FLAGS = 'UNDEFINED_AND_INVALID_FLAGS'
Указывает, что среди введённых флагов одновременно присутствуют и незарегистрированные флаги, и флаги с невалидными значениями.
Среди введённых флагов есть как незарегистрированные, так и флаги с некорректными значениями.