server/repository.py
changeset 10577 935d577b2227
parent 10540 d2449691fd48
child 10579 9af9d59a1972
equal deleted inserted replaced
10570:c0501d4f67f1 10577:935d577b2227
   184         # the hooks manager
   184         # the hooks manager
   185         self.hm = hook.HooksManager(self.vreg)
   185         self.hm = hook.HooksManager(self.vreg)
   186         # registry hook to fix user class on registry reload
   186         # registry hook to fix user class on registry reload
   187         @onevent('after-registry-reload', self)
   187         @onevent('after-registry-reload', self)
   188         def fix_user_classes(self):
   188         def fix_user_classes(self):
   189             # After registery reload the 'CWUser' class used for CWEtype
   189             # After registry reload the 'CWUser' class used for CWEtype
   190             # changed.  To any existing user object have a different class than
   190             # changed.  So any existing user object have a different class than
   191             # the new loaded one. We are hot fixing this.
   191             # the new loaded one. We are hot fixing this.
   192             usercls = self.vreg['etypes'].etype_class('CWUser')
   192             usercls = self.vreg['etypes'].etype_class('CWUser')
   193             for session in self._sessions.itervalues():
   193             for session in self._sessions.itervalues():
   194                 if not isinstance(session.user, InternalManager):
   194                 if not isinstance(session.user, InternalManager):
   195                     session.user.__class__ = usercls
   195                     session.user.__class__ = usercls