server/hooksmanager.py
branchstable
changeset 2350 209a816a5fb4
parent 1977 606923dff11b
child 2452 868e0c75a57d
equal deleted inserted replaced
2349:b9e2c1b7b873 2350:209a816a5fb4
   214     def register_to(cls):
   214     def register_to(cls):
   215         if not cls.enabled:
   215         if not cls.enabled:
   216             cls.warning('%s hook has been disabled', cls)
   216             cls.warning('%s hook has been disabled', cls)
   217             return
   217             return
   218         done = set()
   218         done = set()
       
   219         assert isinstance(cls.events, (tuple, list)), \
       
   220                '%s: events is expected to be a tuple, not %s' % (
       
   221             cls, type(cls.events))
   219         for event in cls.events:
   222         for event in cls.events:
       
   223             if event == 'server_startup':
       
   224                 assert not cls.accepts or cls.accepts == ('Any',), \
       
   225                        '%s doesnt make sense on server_startup' % cls.accepts
       
   226                 cls.accepts = ('Any',)
   220             for ertype in cls.accepts:
   227             for ertype in cls.accepts:
   221                 if (event, ertype) in done:
   228                 if (event, ertype) in done:
   222                     continue
   229                     continue
   223                 yield event, ertype
   230                 yield event, ertype
   224                 done.add((event, ertype))
   231                 done.add((event, ertype))