server/hook.py
changeset 4075 e710f4052bd6
parent 4025 de69adda0781
child 4086 9b96126e0b14
equal deleted inserted replaced
4074:9cce43f52c61 4075:e710f4052bd6
    43 from logilab.common.deprecation import deprecated
    43 from logilab.common.deprecation import deprecated
    44 from logilab.common.logging_ext import set_log_methods
    44 from logilab.common.logging_ext import set_log_methods
    45 
    45 
    46 from cubicweb.cwvreg import CWRegistry, VRegistry
    46 from cubicweb.cwvreg import CWRegistry, VRegistry
    47 from cubicweb.selectors import (objectify_selector, lltrace, match_search_state,
    47 from cubicweb.selectors import (objectify_selector, lltrace, match_search_state,
    48                                 entity_implements)
    48                                 implements)
    49 from cubicweb.appobject import AppObject
    49 from cubicweb.appobject import AppObject
    50 
    50 
    51 
    51 
    52 ENTITIES_HOOKS = set(('before_add_entity',    'after_add_entity',
    52 ENTITIES_HOOKS = set(('before_add_entity',    'after_add_entity',
    53                       'before_update_entity', 'after_update_entity',
    53                       'before_update_entity', 'after_update_entity',
   184             rtypes = []
   184             rtypes = []
   185             for ertype in cls.accepts:
   185             for ertype in cls.accepts:
   186                 if ertype.islower():
   186                 if ertype.islower():
   187                     rtypes.append(ertype)
   187                     rtypes.append(ertype)
   188                 else:
   188                 else:
   189                     cls.__select__ = cls.__select__ & entity_implements(ertype)
   189                     cls.__select__ = cls.__select__ & implements(ertype)
   190             if rtypes:
   190             if rtypes:
   191                 cls.__select__ = cls.__select__ & match_rtype(*rtypes)
   191                 cls.__select__ = cls.__select__ & match_rtype(*rtypes)
   192         return cls
   192         return cls
   193 
   193 
   194     known_args = set(('entity', 'rtype', 'eidfrom', 'eidto', 'repo', 'timestamp'))
   194     known_args = set(('entity', 'rtype', 'eidfrom', 'eidto', 'repo', 'timestamp'))