equal
deleted
inserted
replaced
312 try: |
312 try: |
313 vname = obj.__name__ |
313 vname = obj.__name__ |
314 except AttributeError: |
314 except AttributeError: |
315 vname = obj.__class__.__name__ |
315 vname = obj.__class__.__name__ |
316 self.debug('registered appobject %s in registry %s with id %s', |
316 self.debug('registered appobject %s in registry %s with id %s', |
317 vname, registryname, oid or obj.id) |
317 vname, registryname, oid or class_regid(obj)) |
318 self._loadedmods[obj.__module__]['%s.%s' % (obj.__module__, oid)] = obj |
318 self._loadedmods[obj.__module__][classid(obj)] = obj |
319 |
319 |
320 def unregister(self, obj, registryname=None): |
320 def unregister(self, obj, registryname=None): |
321 self[registryname or obj.__registry__].unregister(obj) |
321 self[registryname or obj.__registry__].unregister(obj) |
322 |
322 |
323 def register_and_replace(self, obj, replaced, registryname=None): |
323 def register_and_replace(self, obj, replaced, registryname=None): |
402 try: |
402 try: |
403 if not issubclass(obj, AppObject): |
403 if not issubclass(obj, AppObject): |
404 return |
404 return |
405 except TypeError: |
405 except TypeError: |
406 return |
406 return |
407 objname = '%s.%s' % (modname, obj.__name__) |
407 clsid = classid(obj) |
408 if objname in self._loadedmods[modname]: |
408 if clsid in self._loadedmods[modname]: |
409 return |
409 return |
410 self._loadedmods[modname][objname] = obj |
410 self._loadedmods[modname][clsid] = obj |
411 for parent in obj.__bases__: |
411 for parent in obj.__bases__: |
412 self._load_ancestors_then_object(modname, parent) |
412 self._load_ancestors_then_object(modname, parent) |
413 self.load_object(obj) |
413 self.load_object(obj) |
414 |
414 |
415 def load_object(self, obj): |
415 def load_object(self, obj): |