Beispiel #1
0
 def __call__(self, *key):
     mk = self.mc_key % '_'.join(map(str, key))
     num = mc.get(mk)
     if num is None:
         #print "self.get_num", key, self.get_num(*key)
         num = self.get_num(*key) or 0
         mc.set(mk, num, self.timeout)
     return num
Beispiel #2
0
 def get_dict(self, keys):
     mc_key = self.mc_key
     mc_key_list = dict([(key, mc_key%key) for key in keys])
     result = mc.get_dict(mc_key_list.itervalues())
     r = {}
     for k, mck in mc_key_list.iteritems():
         v = result.get(mck)
         if v is None:
             v = self.get_num(k) or 0
             mc.set(mck, v)
         r[k] = v
     return r
Beispiel #3
0
 def set(self, key, value, expire=0):
     key = self.key_pattern%key
     if type(value) is not array:
         value = pack(self.type*len(value), *value)
     else:
         value = value.tostring()
     return mc.set(key, value, expire)
Beispiel #4
0
 def set(self, key, value):
     mk = self.mc_key % key
     mc.set(mk, value)
Beispiel #5
0
 def set(self, key, value, expire=0):
     return mc.set(self.key_pattern%key, value, expire)