[Zope3-checkins] SVN: Zope3/trunk/ implement IPersistent to LocalUtilityService

Jim Fulton jim at zope.com
Wed Dec 1 10:30:33 EST 2004


Dominik Huber wrote:
>>The test shouldn't be in the intid package. It doesn't test 
>>intid. It should be in zope.app.utility.  Even there, it seems 
>>wrong to provide that sort of coupling.
> 
> 
> I put me the same question and found no satisfactory reply.
> The only 'good' solution is to remove the test, what would be ok with
> me ;)

:)


>>I wonder if it would be better to change the initid add 
>>subscriber to ignore objects that can't be adapted to IKeyReference.
> 
> 
> IMO the most excplicit way would be to register both subcribers to
> IPersistent instead
> of ILocation:
> 
>   <subscriber
>       factory=".removeIntIdSubscriber"
>       for="persitent.interfaces.IPersistent
>            zope.app.container.interfaces.IObjectRemovedEvent"
>       />

That doesn't work because there can be key-reference adapters for
other kinds of objects.

> Another problem is when people do not provide a correct ISublocations
> adapter. In those
> cases the object deleted events are not properly channeled. That
> causes orphans within the
> intid utility. -> orphans brake the intid view. Therefore I would
> suggest an save 'getPath'
> lookup (like my undid checkins a few weeks ago).

I don't remember what that did. Can you remind me what the change was?
(Or just remind me of the revision number?)

Jim

-- 
Jim Fulton           mailto:jim at zope.com       Python Powered!
CTO                  (540) 361-1714            http://www.python.org
Zope Corporation     http://www.zope.com       http://www.zope.org


More information about the Zope3-Checkins mailing list