]> git.ipfire.org Git - ipfire.org.git/blob - src/backend/memcached.py
wiki: Let search function return a list of pages instead of a generator
[ipfire.org.git] / src / backend / memcached.py
1 #!/usr/bin/python
2
3 import logging
4 import memcache
5
6 from .misc import Object
7
8 class Memcached(Object):
9 def init(self):
10 self._connection = memcache.Client(["localhost"], debug=1)
11
12 def get(self, key, *args, **kwargs):
13 logging.debug("Retrieving %s from cache..." % key)
14
15 ret = self._connection.get(key, *args, **kwargs)
16
17 if ret is None:
18 logging.debug("Found nothing for %s" % key)
19 else:
20 logging.debug("Found object of %s bytes for %s" % (len(ret), key))
21
22 return ret
23
24 def set(self, key, data, *args, **kwargs):
25 logging.debug("Putting %s bytes into cache for %s" % (len(data), key))
26
27 return self._connection.set(key, data, *args, **kwargs)
28
29 def delete(self, key, *args, **kwargs):
30 return self._connection.delete(key, *args, **kwargs)