matter-persistence
Table of Contents
Installation
pip install matter-persistence
Usage
CacheManager and DatabaseManager are the two central objects in matter_persistence.
CacheManager encapsulates a connection pool to Redis, and exposes methods to save, retrieve, and delete values from Redis.
Check usage example for redis CacheManager in examples/redis.
DatabaseManager encapsulates a Sqlalchemy connection pool to a relational database (e.g. Postgresql),
and exposes methods to obtain
a Connection or
a Session.
Furthermore, there is a CustomBase in matter_persistence/sql/base.py, which is a convenient Base class for Sqlalchemy
ORM classes. It has an "id" primary key field, which is of type UUID, a "created", "updated" field that is inherited
from sqlalchemy_utils' Timestamp, and a "deleted" field, which is of type nullable timezone aware DateTime.
The get and find functions in matter_persistence/sql/utils.py
assume a deleted field!
Check usage example for DatabaseManager and some of the utility functions in examples/sql.
Contributing
for contributions, check the CONTRIBUTING.md file