[patch] generate marshallers and metadata from dbus-glib-tool

Paul Kuliniewicz kuliniew at purdue.edu
Mon Sep 6 23:56:16 UTC 2004


On Mon, Sep 06, 2004 at 04:40:04PM +0200, Olivier Andrieu wrote:
> Hi,
> 
>  Paul Kuliniewicz [Tue, 24 Aug 2004]:
>  > With the attached patch, dbus-glib-tool can now generate the object
>  > metadata structures used by the GLib bindings from an XML
>  > description of the object's interface, along with any marshallers
>  > needed to invoke the object's methds.
> <snip>
>  > This patch does *not* implement signals at all, yet. 
> 
> I implemented basic support for signals (ie forwarding the emission of
> gobject signals to the bus). It does export _all_ the object signals,
> which is a bit extreme. The list of signals to export should come from
> xml file I guess.

I guess it depends on what kinds of objects you're "supposed" to expose
using D-BUS.  If you're supposed to create a separate object just for
D-BUS stuff, you could get away with just exporting all signals (and
methods, if GLib had a way to get that information [0]).  If you're
supposed to take existing objects and also expose them to D-BUS, there
could be lots of methods and signals that either don't make sense to
expose or don't have D-BUS-friendly interfaces.

For now, I'd think it's safer to just expose signals listed in the XML
file.

> Have you improved your patch ? If yes, could you send it to the list,
> so that I can merge my code about signals.

Unfortunately, I've been sidetracked ever since classes started.  I
haven't even made any of the cleanups Havoc had suggested for my
original patch. *sigh*  I've been meaning to do some more work on it;
maybe this is the prod I needed. <g>


[0] I had toyed with the idea of adding method metadata to GObjects in
general via a hypothetical GIntrospectable interface, but that approach
started looking messier and messier.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: Digital signature
Url : http://freedesktop.org/pipermail/dbus/attachments/20040906/8171ceeb/attachment.pgp


More information about the dbus mailing list