On 9/28/06, Philipp von Weitershausen <[EMAIL PROTECTED]> wrote:
Lennart Regebro wrote:
> On 9/28/06, Tom Dossis <[EMAIL PROTECTED]> wrote:
>> I've noticed the following changes in the zope 3.3 ZMI
>> Zope 3.3 - Can add utilities anywhere, e.g. to Folders (content space).
>> Zope 3.2 - Can only add utilities to a Site Mgmt Folder
> You can see it like this: The difference between a folder and a site
> has lessened.
> Folders are no more or less content space than sites. Any thing you
> can browse too is content. ;-)

No, Lennart, this is wrong. A site is still very much a site (ISite
determines "site-ness", nothing else). They're still regular folders
that contain content. The only difference between sites and folders is
that sites are a palce where you can make local component registrations.
This is still the same in Zope 3.3, only the constraint *where* these
components live has changed.

So, the concept of 'site' is part of component architecture
and not specific to application server?

Then, can we move up zope.app.component.interfaces.ISite to
zope.component.interfaces.ISite or any other place?

If we can do like this, the zope.location's dependency on
zope.app can be removed.
We are implementing 'IPhysicallyLocatable' in
And there is 'getNearestSite' site method, which actually
get the 'ISite.providedBy' object.

Here is the code snip:

   def getNearestSite(self):
       """return the nearest site, see IPhysicallyLocatable"""
       if ISite.providedBy(self.context):
           return self.context
       for parent in getParents(self.context):
           if ISite.providedBy(parent):
               return parent
       return self.getRoot()

Baiju M
Zope3-users mailing list

Reply via email to