|
1234567891011121314151617181920212223242526 |
- # Copyright (c) 2013, Web Notes Technologies Pvt. Ltd.
- # MIT License. See license.txt
- from __future__ import unicode_literals
-
- import memcache, conf
-
- class MClient(memcache.Client):
- """memcache client that will automatically prefix conf.db_name"""
- def n(self, key):
- return (conf.db_name + ":" + key.replace(" ", "_")).encode('utf-8')
-
- def set_value(self, key, val):
- self.set(self.n(key), val)
-
- def get_value(self, key, builder=None):
- if builder and getattr(conf, "auto_cache_clear", False):
- return builder()
-
- val = self.get(self.n(key))
- if val==None and builder:
- val = builder()
- self.set_value(key, val)
- return val
-
- def delete_value(self, key):
- self.delete(self.n(key))
|