Hi!
Balazs Ree wrote:
The root problem is that the z3 component lookup, in case site managers
are chained, is accessing the data of the chained site managers directly
and bypassing its code. Iow it does not matter whatever acquisition
wrapping you add in five.lsm. If there is any other site manager that
appears, and that is not inheriting directly from five.lsm (and why would
it?), it will access the registry data from the sitemanager of five, but
bypass the methods that would add the acquisition wrapping in five.lsm,
and will use _its own_ methods for returning that data. Which means
principles of object oriented programming are somewhat broken and
actually if I had not spent a few days debugging this problem, I would
not easily suppose or believe this even myself, but this seems to be the
case.
That code is hard to read, but AFAICS the lists and dictionaries in the
AdapterRegistry (_adapters, _subscribers, _provided) are looked up
directly. Did anybody try to use customized lists and dictionaries for
five.lsm that do the wrapping? Or can anybody tell me why that would be
a bad idea? I guess performance might be a problem.
Cheers,
Yuppie
_______________________________________________
Zope-CMF maillist - [EMAIL PROTECTED]
http://mail.zope.org/mailman/listinfo/zope-cmf
See http://collector.zope.org/CMF for bug reports and feature requests