iro/model/pool.py
branchdevel
changeset 151 ff8448fb07e7
parent 132 80a334e2aae7
child 258 0a5eb5aac0be
equal deleted inserted replaced
150:c6896c3374c4 151:ff8448fb07e7
     1 from decorator import decorator
     1 from decorator import decorator
     2 
     2 import sqlalchemy
     3 class Data:
     3 class Data:
     4     def __init__(self):
     4     def __init__(self):
     5         self.pool =  None
     5         self.pool =  None
     6 
     6 
     7 data = Data()
     7 data = Data()
    11     data.pool = pool
    11     data.pool = pool
    12 
    12 
    13 @decorator
    13 @decorator
    14 def runInDBPool(f,*args,**kwargs):
    14 def runInDBPool(f,*args,**kwargs):
    15     """Decorator to run DB queries in Twisted's thread pool"""
    15     """Decorator to run DB queries in Twisted's thread pool"""
    16     return data.pool.run(f, *args, **kwargs)
    16     if isinstance(args[-1],sqlalchemy.orm.session.Session):
       
    17         return f(*args,**kwargs)
       
    18     else:
       
    19         return data.pool.run(f, *args, **kwargs)
    17 
    20 
    18 
    21