On Fri, 2015-07-17 at 00:35 +0100, Simon McVittie wrote: > On 17/07/15 00:13, Dan Williams wrote: > > eg, think of it as each contact in Telepathy being an object
<snip> > > The solution here is likely to transition the libnm implementation over > > to the ObjectManager interface's GetManagedObjects() method for the > > initial setup, to get everything in one call. A lot of data, but likely > > faster than doing it piece-by-piece. > > That's what I'd recommend; ObjectManager is precisely for situations > where clients are interested in "most" children of a parent object. That's the path I'd like to pursue, I did an initial implementation of the OM interface for NM git master (what will become 1.2) based on our gdbus conversion (which is now merged! hurrah!!!) and filed a bug to track its ongoing work: https://bugzilla.gnome.org/show_bug.cgi?id=753566 > > Any > > chance we could get dbus-glib to implement GetManagedObjects()? > > It is entirely possible to "roll your own" GetManagedObjects; indeed, > Telepathy reimplements the entire service-side Properties interface > (because dbus-glib was historically even worse than it is now). > > I'm a little reluctant to add features to dbus-glib, because it's a dead > end; but if it helps NM, I'd make an exception for reviewing > ObjectManager support. Since we've just merged our gdbus conversion, there is less need for dbus-glib changes now. Unless of course somebody tries to use kdbus with NM <= 1.0.x, since the ObjectManager work isn't trivially backportable because it depends on gdbus. But if it comes to that, we'll either say "upgrade" or we'll have to investigate solutions for dbus-glib-based 1.0.x. We will not be touching NM 0.9.10 for any of these issues though. Dan