DBUS introspection (Was: DCOP interface in kicker broke compatibility?)

David A. Wheeler dwheeler at dwheeler.com
Sun Feb 6 20:20:08 PST 2005


Havoc Pennington pointed out this text:
>> "When an application handles a method call message, it is expected to
>> return a reply. ...
>> If a METHOD_CALL message has the flag NO_REPLY_EXPECTED, then as an
>> optimization the application receiving the method call may choose to
>> omit the reply message (regardless of whether the reply would have been
>> METHOD_RETURN or ERROR). However, it is also acceptable to ignore the
>> NO_REPLY_EXPECTED flag and reply anyway."

Oh. When I read that, I didn't interpret that as
telling me that callers can TRUST that they'll
get a reply, merely that it's "expected".

I'd reword the text to something like this:
"When an application handles a method call message, it
MUST reply with a METHOD_RETURN or ERROR
unless the METHOD_CALL has the flag NO_REPLY_EXPECTED.
If a METHOD_CALL message has the flag NO_REPLY_EXPECTED, then as an
optimization the application receiving the method call may choose to
omit the reply message (regardless of whether the reply would have been
METHOD_RETURN or ERROR). However, it is also acceptable to ignore the
NO_REPLY_EXPECTED flag and reply anyway."


Havoc later said:
>> I kept the deprecated attribute for single interface members. What I
>> changed is that the default is the deprecation status of the interface,
>> rather than "no"

Great! That's what I'd intended anyway.
Perfect!!

--- David A. Wheeler



More information about the dbus mailing list