Non puoi selezionare più di 25 argomenti Gli argomenti devono iniziare con una lettera o un numero, possono includere trattini ('-') e possono essere lunghi fino a 35 caratteri.
 
 
 
 
 
 

26 righe
706 B

  1. # Copyright (c) 2013, Web Notes Technologies Pvt. Ltd.
  2. # MIT License. See license.txt
  3. from __future__ import unicode_literals
  4. import memcache, conf
  5. class MClient(memcache.Client):
  6. """memcache client that will automatically prefix conf.db_name"""
  7. def n(self, key):
  8. return (conf.db_name + ":" + key.replace(" ", "_")).encode('utf-8')
  9. def set_value(self, key, val):
  10. self.set(self.n(key), val)
  11. def get_value(self, key, builder=None):
  12. if builder and getattr(conf, "auto_cache_clear", False):
  13. return builder()
  14. val = self.get(self.n(key))
  15. if val==None and builder:
  16. val = builder()
  17. self.set_value(key, val)
  18. return val
  19. def delete_value(self, key):
  20. self.delete(self.n(key))