org.freedesktop.DBus.Introspectable

Steve Kreyer steve.kreyer at web.de
Sat May 26 03:44:26 PDT 2007


Hi Thiago,

thanks for your answer!

Thiago Macieira wrote:
> Steve Kreyer wrote:
>   
>> I have a question about the org.freedesktop.DBus.Introspectable
>> interface. My object supports this interface by specifying it in the
>> iface definition, and by implementing the Introspect method,
>>     
>
> Ok.
>
>   
>> but if I 
>> request the method on the DBus- self object, via  "dbus-send
>> --print-reply --dest=org.freedesktop.DBus /org/freedesktop/DBus
>> org.freedesktop.DBus.Introspectable.Introspect", the returned string of
>> my implementation of Introspect does not appear in the reply.
>>     
>
> Well, that's because you're not talking to your program. If you send a 
> call to dbus-daemon, it's dbus-daemon that will reply.
>
> What happens if you use --dest=<your-program> ?
>   
Now Iam totally confused :-) I requested the method like you suggested:
dbus-send --print-reply --dest=my.domain.program /path/to/myobject 
org.freedesktop.DBus.Introspectable.Introspect
and the reply are the "raw interface definitions" of the interfaces 
which are supported by myobject + the spec of Introspectable.Introspect. 
But it seems that it doesn't care whether myobject  supports and 
implements the method org.freedesktop.DBus.Introspectable.Introspect 
explicitly or not. So I ask  myself if any object, which registers to 
the bus, gets an implementation of 
org.freedesktop.DBus.Introspectable.Introspect automatically in any way?
>   
>> So should I understand the interface as a standard, so that if a
>> controller wants to get information he requests
>> org.freedesktop.DBus.Introspectable.Introspect on my object and get this
>> information? Or has it some real functional meanings inside the
>> implementation of the DBus self object?
>>
>> I hope you understand my concern ...
>>     
>
> Well, no, I don't understand the questions. Please clarify.
>
> The org.freedesktop.DBus.Introspectable interface is an interface like any 
> other. So it's a "contract" between caller and callee. Caller says "I 
> will implement these methods, all of them, and each will have these 
> parameters; each method or signal shall have this meaning". 
>
> Anyone can implement an interface.
>
> But, no, libdbus-1 or the D-Bus protocol do not assign any special meaning 
> to that interface. The only interface with special meaning is 
> org.freedesktop.DBus.Local
I think this answer has satisfied my first request.

Regards,
Steve
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/x-pkcs7-signature
Size: 3245 bytes
Desc: S/MIME Cryptographic Signature
Url : http://lists.freedesktop.org/archives/dbus/attachments/20070526/5694575e/attachment-0001.bin 


More information about the dbus mailing list