def do_GET(self): tc=cache.get_cache(slugify(self.path),expire=43200) self.send_response(200,"All fine") self.send_header("Content-type","application/json") self.send_header("Access-Control-Allow-Origin", "*") self.end_headers() articles=tc.get(key="articles",createfunc=self.process) self.wfile.write(articles)
def test_class_key_cache(): cache = make_cache_obj() class Foo(object): @cache.cache('method') def go(self, x, y): return "hi foo" @cache.cache('standalone') def go(x, y): return "hi standalone" x = Foo().go(1, 2) y = go(1, 2) ns = go._arg_namespace assert cache.get_cache(ns).get('method 1 2') == x assert cache.get_cache(ns).get('standalone 1 2') == y
def _get_cache(self, defname, type=None, **kw): if not cache: raise exceptions.RuntimeException("the Beaker package is required to use cache functionality.") if type == 'memcached': type = 'ext:memcached' if not type: (type, kw) = self.def_regions.get(defname, ('memory', {})) else: self.def_regions[defname] = (type, kw) return cache.get_cache(self.id, type=type, **kw)