mirror of
https://github.com/jazzband/django-constance.git
synced 2026-03-16 22:40:24 +00:00
Some checks failed
Docs / docs (push) Has been cancelled
Test / ruff-format (push) Has been cancelled
Test / ruff-lint (push) Has been cancelled
Test / build (3.10) (push) Has been cancelled
Test / build (3.11) (push) Has been cancelled
Test / build (3.12) (push) Has been cancelled
Test / build (3.13) (push) Has been cancelled
Test / build (3.14) (push) Has been cancelled
Test / build (3.8) (push) Has been cancelled
Test / build (3.9) (push) Has been cancelled
* Added async logic * Added tests and fixed async deadlock on aset * Used abstract base class for backend to simplify code coverage * Reordered try except block * Added explicit thread safety * Fixed linting error * Worked on redis init block * Fixed async test setup * Added tests for redis instantiation * Fixed linting errors
25 lines
929 B
Python
25 lines
929 B
Python
from django.core.cache.backends.base import BaseCache
|
|
from django.core.cache.backends.locmem import LocMemCache
|
|
|
|
|
|
class Cache(BaseCache):
|
|
def __init__(self, name, params):
|
|
self._cache = LocMemCache(name, params)
|
|
self.add = self._cache.add
|
|
self.delete = self._cache.delete
|
|
self.set = self._cache.set
|
|
self.get = self._cache.get
|
|
self.clear = self._cache.clear
|
|
self.set_many = self._cache.set_many
|
|
self.get_many = self._cache.get_many
|
|
self.delete_many = self._cache.delete_many
|
|
|
|
# Async methods for DatabaseBackend.aget() support
|
|
async def aget(self, key, default=None, version=None):
|
|
return self.get(key, default, version)
|
|
|
|
async def aget_many(self, keys, version=None):
|
|
return self.get_many(keys, version)
|
|
|
|
async def aadd(self, key, value, timeout=None, version=None):
|
|
return self.add(key, value, timeout, version)
|