redefinition of Status
Exception should be raised directly, not via Status , 'cause of Traceback
from decorator import decorator
import sqlalchemy
class Data:
def __init__(self):
self.pool = None
data = Data()
#a valid dbDefer decorator
def setPool(pool):
data.pool = pool
@decorator
def runInDBPool(f,*args,**kwargs):
"""Decorator to run DB queries in Twisted's thread pool"""
if isinstance(args[-1],sqlalchemy.orm.session.Session):
return f(*args,**kwargs)
else:
return data.pool.run(f, *args, **kwargs)