import os import os.path import shutil import hashlib import logging logger = logging.getLogger(__name__) from object import * import base64 class User: def __init__(self, jid): self.jid = jid #self.hash = hashlib.sha1(jid).hexdigest() self.hash = base64.encodestring(jid) def register(self, registration): ObjectWriter(self.hash).create_root_object(self.jid, registration) def get_registration(self): registration, key = ObjectReader(self.hash).get_content(self.jid) return registration def registered(self): return Object(self.hash).exists() def unregister(self, jid): ObjectWriter(self.jid, self.hash).delete() shutil.rmtree(self.root + '/' + jid) class UserHandler: def __init__(self,root): self.root = root def get_user_list(self): result = [] for stem in os.listdir(self.root): for leaf in os.listdir(os.path.join(self.root, stem)): result.append(base64.decodestring(stem + leaf)) return result if __name__ == '__main__': print UserHandler('/var/lib/alias').get_user_list()