Перейти к содержанию

Хранилище сессий

Хранилище сессий и игроков.

Менеджер сессий использует хранилище чтобы сохранять состояние игр и игроков. Модуль предоставляет базовое хранилище в оперативной памяти.

BaseStorage

Bases: ABC, Generic[_V]

Базовое хранилище для сессий/игроков.

Определяет интерфейс для работы с базовым хранилищем типа ключ-значение. Позволяет сохранять, удалять и получать состояние. Используется два раздельных хранилища для игр и игроков.

add abstractmethod

Python
add(key: str, value: _V) -> None

Добавляет новый элемент по ключу.

get abstractmethod

Python
get(key: str) -> _V | None

Возвращает элемент по ключу.

Если такого элемента нет в хранилище - вернёт None.

remove abstractmethod

Python
remove(key: str) -> _V

Удаляет элемент по ключу.

Возвращает удалённый элемент. Если такого элемента не найден - вернёт исключение.

MemoryStorage

Python
MemoryStorage()

Bases: BaseStorage, Generic[_V]

Хранилище в оперативной памяти.

Базовое реализация хранилище. Содержит методы для создания/получения/удаления состояний. После завершения работы программы состояния сбрасываются.

__slots__ class-attribute instance-attribute

Python
__slots__ = ('_storage',)

add

Python
add(key: str, value: _V) -> None

Добавляет новый элемент в хранилище по ключу.

get

Python
get(key: str) -> _V | None

Возвращает элемент по ключу.

remove

Python
remove(key: str) -> _V

Удаляет элемент по ключу.

Возвращает удалённый элемент. Если такого элемента не существует - вернёт исключение.