vregistry.py
branchstable
changeset 3054 8b3b243e308e
parent 2906 677fa98659a8
child 3071 6ad4e6d4df86
equal deleted inserted replaced
3053:51f196c212d9 3054:8b3b243e308e
   282         for obj in objects:
   282         for obj in objects:
   283             try:
   283             try:
   284                 if obj.__module__ != modname or obj in butclasses:
   284                 if obj.__module__ != modname or obj in butclasses:
   285                     continue
   285                     continue
   286                 oid = obj.id
   286                 oid = obj.id
       
   287                 registryname = obj.__registry__
   287             except AttributeError:
   288             except AttributeError:
   288                 continue
   289                 continue
   289             if oid and not '__abstract__' in obj.__dict__:
   290             if oid and not '__abstract__' in obj.__dict__:
   290                 self.register(obj)
   291                 self.register(obj, registryname)
   291 
   292 
   292     def register(self, obj, registryname=None, oid=None, clear=False):
   293     def register(self, obj, registryname=None, oid=None, clear=False):
   293         """base method to add an object in the registry"""
   294         """base method to add an object in the registry"""
   294         assert not '__abstract__' in obj.__dict__
   295         assert not '__abstract__' in obj.__dict__
   295         registryname = registryname or obj.__registry__
   296         registryname = registryname or obj.__registry__