summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Bayer <mike_mp@zzzcomputing.com>2014-06-13 13:55:07 -0400
committerMike Bayer <mike_mp@zzzcomputing.com>2014-06-13 13:55:07 -0400
commit06bdb3c68ecde21e41a3aff09b9cbe355314c5dc (patch)
tree4bbc257277af53105dcd0bdd6c2041b884b3ffcb
parent033be90621759bf79c6d2eea139e183b4bf2c029 (diff)
parent977404b10e32e861d8517560c8a4618d26fe04c9 (diff)
downloaddogpile-cache-06bdb3c68ecde21e41a3aff09b9cbe355314c5dc.tar.gz
Merge branch 'dummy-backend' of https://bitbucket.org/wichert/dogpile.cache/branch/dummy-backend into pr/18
-rw-r--r--docs/build/api.rst2
-rw-r--r--dogpile/cache/backends/__init__.py1
-rw-r--r--dogpile/cache/backends/dummy.py46
3 files changed, 49 insertions, 0 deletions
diff --git a/docs/build/api.rst b/docs/build/api.rst
index cfb9ffc..4703f11 100644
--- a/docs/build/api.rst
+++ b/docs/build/api.rst
@@ -39,6 +39,8 @@ Backends
.. automodule:: dogpile.cache.proxy
:members:
+.. automodule:: dogpile.cache.dummy
+ :members:
Plugins
========
diff --git a/dogpile/cache/backends/__init__.py b/dogpile/cache/backends/__init__.py
index a9b9c2e..80309f5 100644
--- a/dogpile/cache/backends/__init__.py
+++ b/dogpile/cache/backends/__init__.py
@@ -1,5 +1,6 @@
from dogpile.cache.region import register_backend
+register_backend("dogpile.cache.dummy", "dogpile.cache.backends.dummy", "DummyBackend")
register_backend("dogpile.cache.dbm", "dogpile.cache.backends.file", "DBMBackend")
register_backend("dogpile.cache.pylibmc", "dogpile.cache.backends.memcached", "PylibmcBackend")
register_backend("dogpile.cache.bmemcached", "dogpile.cache.backends.memcached", "BMemcachedBackend")
diff --git a/dogpile/cache/backends/dummy.py b/dogpile/cache/backends/dummy.py
new file mode 100644
index 0000000..4e1cf8e
--- /dev/null
+++ b/dogpile/cache/backends/dummy.py
@@ -0,0 +1,46 @@
+"""
+Dummy Backend
+-------------
+
+The dummy backend does not do any cachingn at all. It is inteded to be used
+to test behaviour without caching.
+"""
+
+from dogpile.cache.api import CacheBackend, NO_VALUE
+
+
+__all__ = ['DummyBackend']
+
+
+class DummyLock(object): # pragma NO COVERAGE
+ def acquire(self):
+ pass
+
+ def release(self):
+ pass
+
+
+class DummyBackend(CacheBackend): # pragma NO COVERAGE
+ def __init__(self, arguments):
+ pass
+
+ def get_mutex(self, key):
+ return DummyLock()
+
+ def get(self, key):
+ return NO_VALUE
+
+ def get_multiple(self, keys):
+ return [NO_VALUE for k in keys]
+
+ def set(self, key, value):
+ pass
+
+ def set_multiple(self, mapping):
+ pass
+
+ def delete(self, key):
+ pass
+
+ def delete_multiple(self, keys):
+ pass