Skip to main content

Matter persistance library.

Project description

matter-persistence

PyPI - Version PyPI - Python Version

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

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

matter_persistence-1.1.0-py3-none-any.whl (15.1 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page