diff --git a/mining/Cache.py b/mining/Cache.py new file mode 100644 index 0000000..5f5219e --- /dev/null +++ b/mining/Cache.py @@ -0,0 +1,24 @@ +''' A simple wrapper for pylibmc. It can be overwritten with simple hashing if necessary ''' +import lib.settings as settings +import lib.logger +log = lib.logger.get_logger('Cache') + +import pylibmc + +class Cache(): + def __init__(self): + # Open a new connection + self.mc = pylibmc.Client([settings.MEMCACHE_HOST + ":" + str(settings.MEMCACHE_PORT)], binary=True) + log.info("Caching initialized") + + def set(self, key, value, time=settings.MEMCACHE_TIMEOUT): + return self.mc.set(settings.MEMCACHE_PREFIX + str(key), value, time) + + def get(self, key): + return self.mc.get(settings.MEMCACHE_PREFIX + str(key)) + + def delete(self, key): + return self.mc.delete(settings.MEMCACHE_PREFIX + str(key)) + + def exists(self, key): + return str(key) in self.mc.get(settings.MEMCACHE_PREFIX + str(key))