[Fwd: Re: novehrady discussions]
08 Sep 2003 23:39:34 -0400
Doh, I meant to send this to the list.
Content-Description: Forwarded message - Re: novehrady discussions
Subject: Re: novehrady discussions
From: Havoc Pennington <email@example.com>
To: Joe Shaw <firstname.lastname@example.org>
Organization: Red Hat, Inc.
X-Mailer: Ximian Evolution 1.4.3 (1.4.3-3)
Date: 07 Sep 2003 16:47:15 -0400
On Sun, 2003-09-07 at 12:32, Joe Shaw wrote:
> Will there be some sort of object directory, or some other way to look
> up objects by interface? I can see wanting to call a method on a bunch
> of objects with the same interface. Getting the list of buddies from
> all of my instant messaging programs is one that pops into mind. (Of
> course, the trick would be getting everyone to use the same interface,
> but ignore that for now... :)
Keep in mind that there's no catalog of objects on the bus, objects are
only tracked within each app. The bus only tracks services provided by
whole apps. So to get all your instant messaging programs all those
programs would have to register under the same service name, then there
would probably be a conventional BuddyList object they all had.
Concretely, you might have some sort of org.freedesktop.apps.IM
service, then the convention could be that if you advertise the
IM service you have an object /org/freedesktop/IMClient/BuddyList
or something like that with particular interfaces.
> A better idea might be setting up an alternative tree that just follows
> along interfaces and then allows you to get to object instances that
> way. Ie, you have both /objects/gaim/getBuddyList() and
> /interfaces/instant-messaging/gaim/getBuddyList() and they're
> equivalent. This is kind of similar to what the kernel people are doing
> with sysfs: you have the actual device tree and then you have a device
> class tree.
Right, simple enough. It does have a cost (approximately doubles
memory usage, for two trees rather than one).