X-Git-Url: http://dolda2000.com/gitweb/?a=blobdiff_plain;f=wrw%2Fsession.py;h=cf2d7929930f07f143218c7522b7b4ac321c78c7;hb=001ec99e577b56479149fbe39de1d9291a134527;hp=76324494a9c19858b56070b66498909013378e4f;hpb=f84a3f10e332cd8e67230551e3146dd900a97c0a;p=wrw.git diff --git a/wrw/session.py b/wrw/session.py index 7632449..cf2d792 100644 --- a/wrw/session.py +++ b/wrw/session.py @@ -1,5 +1,5 @@ import threading, time, pickle, random, os -import cookie +import cookie, env __all__ = ["db", "get"] @@ -19,7 +19,7 @@ class session(object): def __init__(self, expire = 86400 * 7): self.id = hexencode(gennonce(16)) self.dict = {} - self.lock = threading.Lock() + self.lock = threading.RLock() self.ctime = self.atime = self.mtime = int(time.time()) self.expire = expire self.dctl = set() @@ -180,7 +180,7 @@ class dirback(object): with open(os.path.join(self.path, key), "w") as out: out.write(value) -default = db(backdb = dirback(os.path.join("/tmp", "wrwsess-" + str(os.getuid())))) +default = env.var(db(backdb = dirback(os.path.join("/tmp", "wrwsess-" + str(os.getuid()))))) def get(req): - return default.get(req) + return default.val.get(req)