cubicweb/server/hook.py
changeset 12508 a8c1ea390400
parent 12036 4c2c731f9190
child 12567 26744ad37953
equal deleted inserted replaced
12507:211472ab15c8 12508:a8c1ea390400
   249 
   249 
   250 from logging import getLogger
   250 from logging import getLogger
   251 from itertools import chain
   251 from itertools import chain
   252 
   252 
   253 from logilab.common.decorators import classproperty, cached
   253 from logilab.common.decorators import classproperty, cached
   254 from logilab.common.deprecation import deprecated, class_renamed
       
   255 from logilab.common.logging_ext import set_log_methods
   254 from logilab.common.logging_ext import set_log_methods
   256 from logilab.common.registry import (NotPredicate, OrPredicate,
   255 from logilab.common.registry import (NotPredicate, OrPredicate,
   257                                      objectify_predicate)
   256                                      objectify_predicate)
   258 
   257 
   259 from cubicweb import RegistryNotFound, server
   258 from cubicweb import RegistryNotFound, server
   426 
   425 
   427 @objectify_predicate
   426 @objectify_predicate
   428 def issued_from_user_query(cls, req, **kwargs):
   427 def issued_from_user_query(cls, req, **kwargs):
   429     return 0 if req.hooks_in_progress else 1
   428     return 0 if req.hooks_in_progress else 1
   430 
   429 
   431 from_dbapi_query = class_renamed('from_dbapi_query',
       
   432                                  issued_from_user_query,
       
   433                                  message='[3.21] ')
       
   434 
       
   435 
   430 
   436 class rechain(object):
   431 class rechain(object):
   437     def __init__(self, *iterators):
   432     def __init__(self, *iterators):
   438         self.iterators = iterators
   433         self.iterators = iterators
   439     def __iter__(self):
   434     def __iter__(self):
   736         self.register(cnx)
   731         self.register(cnx)
   737         # execution information
   732         # execution information
   738         self.processed = None # 'precommit', 'commit'
   733         self.processed = None # 'precommit', 'commit'
   739         self.failed = False
   734         self.failed = False
   740 
   735 
   741     @property
       
   742     @deprecated('[3.19] Operation.session is deprecated, use Operation.cnx instead')
       
   743     def session(self):
       
   744         return self.cnx
       
   745 
       
   746     def register(self, cnx):
   736     def register(self, cnx):
   747         cnx.add_operation(self, self.insert_index())
   737         cnx.add_operation(self, self.insert_index())
   748 
   738 
   749     def insert_index(self):
   739     def insert_index(self):
   750         """return the index of the latest instance which is not a
   740         """return the index of the latest instance which is not a