self._connection = memcache.Client(["localhost"], debug=1)
def get(self, key, *args, **kwargs):
+ key = self._sanitize_key(key)
+
logging.debug("Retrieving %s from cache..." % key)
ret = self._connection.get(key, *args, **kwargs)
return ret
def get_multi(self, keys, *args, **kwargs):
+ keys = (self._sanitize_key(key) for key in keys)
+
logging.debug("Retrieving keys from cache: %s" % keys)
ret = self._connection.get_multi(keys, *args, **kwargs)
return ret
def add(self, key, data, *args, **kwargs):
+ key = self._sanitize_key(key)
+
if data is None:
logging.debug("Putting nothing into cache for %s" % key)
else:
return self._connection.add(key, data, *args, **kwargs)
def set(self, key, data, *args, **kwargs):
+ key = self._sanitize_key(key)
+
if data is None:
logging.debug("Putting nothing into cache for %s" % key)
else:
return self._connection.set(key, data, *args, **kwargs)
def delete(self, key, *args, **kwargs):
+ key = self._sanitize_key(key)
+
return self._connection.delete(key, *args, **kwargs)
def incr(self, key):
+ key = self._sanitize_key(key)
+
logging.debug("Incrementing key %s" % key)
return self._connection.incr(key)
+
+ @staticmethod
+ def _sanitize_key(key):
+ # Memcache does not seem to like any spaces
+ return key.replace(" ", "-")