some optimization on token id creation

This commit is contained in:
Thomas NOËL 2012-03-09 16:48:57 +00:00
parent 6ead30d72d
commit ffa6b343a2
2 changed files with 3 additions and 3 deletions

View File

@ -137,7 +137,8 @@ class StorableObject(object):
select = classmethod(select)
def has_key(cls, id):
return fix_key(id) in cls.keys()
filename = os.path.join(cls.get_objects_dir(), fix_key(id))
return os.path.exists(filename)
has_key = classmethod(has_key)
def get_new_id(cls, create=False):

View File

@ -35,11 +35,10 @@ class Token(StorableObject):
self.expiration = time.time() + expiration_delay
def get_new_id(cls, size, chars):
keys = cls.keys()
r = random.SystemRandom()
while True:
id = ''.join([r.choice(chars) for x in range(size)])
if not id in keys:
if not cls.has_key(id):
return id
def migrate(self):