# HG changeset patch # User sylvain.thenault@logilab.fr # Date 1234903343 -3600 # Node ID 356da23c57f15b59c86f51b669cdcdb5afea0c0d # Parent 520661be60e485fc6ac9a24baf864e7643a86f97 try a register_all method diff -r 520661be60e4 -r 356da23c57f1 vregistry.py --- a/vregistry.py Tue Feb 17 21:42:06 2009 +0100 +++ b/vregistry.py Tue Feb 17 21:42:23 2009 +0100 @@ -243,7 +243,17 @@ # def clear(self, key): # regname, oid = key.split('.') # self[regname].pop(oid, None) - + def register_all(self, objects, modname, butclasses=()): + for obj in objects: + try: + if obj.__module__ != modname or obj in butclasses: + continue + oid = obj.id + except AttributeError: + continue + if oid: + self.register(obj) + def register(self, obj, registryname=None, oid=None, clear=False): """base method to add an object in the registry""" registryname = registryname or obj.__registry__