iro/model/user.py
branchdevel
changeset 118 e16c0250c974
parent 117 351a02310dd8
child 125 19b3f383c9ce
--- a/iro/model/user.py	Fri Jan 27 21:21:41 2012 +0100
+++ b/iro/model/user.py	Sat Jan 28 04:00:47 2012 +0100
@@ -1,3 +1,4 @@
+from twisted.internet import defer
 from inspect import getcallargs
 from decorator import decorator
 
@@ -8,8 +9,8 @@
 from ..error import UserNotFound, InterfaceException
 
 
+@validate(kwd="apikey", func=vHash, minlength=15, maxlength=15)
 @dbdefer
-@validate(kwd="apikey", func=vHash, minlength=15, maxlength=15)
 def getuser(apikey, session):
     user = session.query(User).filter_by(apikey=apikey).first()
     if user is None:
@@ -27,9 +28,9 @@
     
     def _gotResult(_user):
         kp["user"]=_user
-        return f(**kp)
-
-    d=getuser(apikey=apikey)
+        e =  defer.maybeDeferred(f,**kp)
+        return e
+    d = defer.maybeDeferred(getuser, apikey=apikey)
     return d.addCallback(_gotResult)