[Chandler-dev] Re: [Dev] collections and notifications
vajda at osafoundation.org
Fri Mar 24 16:05:01 PST 2006
On Fri, 24 Mar 2006, Katie Capps Parlante wrote:
> I wanted to follow up on this to make sure all is well. If I understand
> - "Item notifications" have been implemented (watchItem), and are
> synchronous, and this will meet the detail view requirements for item
Yes, within a given view. Changes that occur in other views will be notified
after refresh, synchronously.
> - Most notifications are synchronous
> - attribute monitors (which are probably mostly used internally in the
> repository, to maintain indexes and whatnot)
> - watchItem
> - watchKind
> - watchCollection
> - "watchQueue" is asynchronous
Yes, although 'watchQueue' doesn't exist yet, it's still using the old name, I
haven't changed that one yet.
> A few questions:
> - When does one use "watchQueue" vs "watchCollection"? (Andi has documented
> this from a bottom up perspective, but how do we explain this clearly to
> people writing code at higher layers?)
> - We had talked about deliverNotifications/mapChanges as having become
> something of a "Frankenstein" in 0.6. At the collections meeting, we
> theorized that onIdle could just call view.refresh() and that
> deliverNotifications() could go away, given that all of the "below the line"
> notifications would be synchronous. Given that watchQueue remains
> asynchronous for performance reasons, where does that leave us? Are we happy
> that the current implementation of deliverNotifications() is reasonable? Are
> we happy with the options/consequences at the app level?
All of what you say above was implemented, actually, except that not all
notifs below the line are synchronous. The queued notifs are now *always*
dispatched during refresh() solving the problem of what to do with them when
no-one polls for them, as is the case when running without a UI.
> - Does Bryan have everything he needs for detail view work (wrt
> notifications)? If not, what remains?
That is my understanding, Bryan ?
I could still provide more details in some notifications. If this is needed,
please let me know.
More information about the chandler-dev