Using corba IDL to describe DBus services ?

Matthew Johnson dbus at matthew.ath.cx
Wed Mar 28 15:27:46 PDT 2007


On Wed Mar 28 20:21, Thiago Macieira wrote:
 
> If you are talking about the org.freedesktop.DBus.* XML files, I am not 
> sure we have to. Most bindings already have a static class for the D-Bus 
> bus's interfaces.

Java does.

In Java:
 
> [optional] 1) programmer writes a .h header containing a C++ class that 
> derives from QObject

1. Programmer writes a .java interface file containing an interface
definition which derives from DBusInterface

> [optional] 2) the buildsystem parses that .h with qdbuscpp2xml and 
> produces a .xml file

2. At runtime the bindings reflect on the class file produced from the
interface file to generate XML in response to Introspect

> 3) from the .xml file, with qdbusxml2cpp, we produce either a 
> classname_adaptor.{h,cpp} or a classname_iface.{h,cpp}. Adaptors are 
> server-side and interfaces client-side (proxies). The original .h file is 
> not used.

3. If you have a XML file as your starting point you run CreateInterface
which creates a .java interface file as in 1.

> If you use the adaptor header generated in step #3 as input in #1, it'll 
> be an idempotent process. So this can be used to hand-write a D-Bus 
> server-side interface in C++ and then generate the client-side code.

1. and the output of 3. are the same modulo naming and can both be used
directly by both clients and servers.

Matt
--
www.matthew.ath.cx
D-Bus Java
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: Digital signature
Url : http://lists.freedesktop.org/archives/dbus/attachments/20070328/80d4708b/attachment.pgp


More information about the dbus mailing list