[Zope3-Users] Re: Use Case for a Tree of Adapter Registries?

Martin Aspeli optilude at gmx.net
Fri Apr 14 06:13:39 EDT 2006


On Fri, 14 Apr 2006 11:07:42 +0100, Jeff Rush  
<jeff at taupro.com> wrote:

> I've read the code for adapter registries, how there is a global one and  
> any number of local ones, arranged in a tree and that each can be  
> disabled.
>
> But I can't figure out when you'd want to make use of such an  
> arrangement. The docstrings and .txt files use abstract examples, for  
> unit testing, and don't provide a motivation for this feature.
>
> Related to that, the global registry is loaded at server startup time  
> from the various .zcml directives, and I presume that the only way to  
> loaded up a local registry is thru-the-web, right?  Which means all  
> local registries are persistent in the ZODB, I think.
>
> Can anyone nudge me onto the right path?

I'm most definitely not the right person to make an authoritative  
statement on this, but something that we're struggling with in Plone's  
adoption of Zope 3 technologies is that CMF/Plone works on the principle  
that things aren't active until you've installed something in the site.  
For example, I may have two Plone sites in the same Zope instance. If I  
want to install a product that uses an adapter registration to override  
something in one site, but not the other, global adapter registrations  
don't work.

I can imagine this going further, so that for a specific content type I  
need a more specific override for that adapter that can't be tied to an  
interface only (e.g. in MyCrazyFolder the adapter for IDocument is  
different than it is for IDocument everywhere else).

Martin

-- 
(muted)



More information about the Zope3-users mailing list