diff options
author | Simon McVittie <simon.mcvittie@collabora.co.uk> | 2007-04-24 14:45:14 +0100 |
---|---|---|
committer | Simon McVittie <simon.mcvittie@collabora.co.uk> | 2007-04-25 11:30:38 +0100 |
commit | e4050f2750d2fdb5c05a7d7b9cb4030b99133f13 (patch) | |
tree | a39833647e8ca3a078c941aef324eafd669e0cee /dbus/service.py | |
parent | ae8014c72a7d304f20d9422009f42bc48fa8f298 (diff) | |
download | dbus-python-e4050f2750d2fdb5c05a7d7b9cb4030b99133f13.tar.gz |
Preparation for fallback-object support:
* Let exported methods receive the path, destination and raw message via
kwargs, as well as the sender
* Let exported signals be emitted from a variable object-path
Diffstat (limited to 'dbus/service.py')
-rw-r--r-- | dbus/service.py | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/dbus/service.py b/dbus/service.py index 2557de0..dbef7e3 100644 --- a/dbus/service.py +++ b/dbus/service.py @@ -449,9 +449,15 @@ class Object(Interface): keywords[return_callback] = lambda *retval: _method_reply_return(connection, message, method_name, signature, *retval) keywords[error_callback] = lambda exception: _method_reply_error(connection, message, exception) - # include the sender if desired + # include the sender etc. if desired if parent_method._dbus_sender_keyword: keywords[parent_method._dbus_sender_keyword] = message.get_sender() + if parent_method._dbus_path_keyword: + keywords[parent_method._dbus_path_keyword] = message.get_path() + if parent_method._dbus_destination_keyword: + keywords[parent_method._dbus_destination_keyword] = message.get_destination() + if parent_method._dbus_message_keyword: + keywords[parent_method._dbus_message_keyword] = message # call method retval = candidate_method(self, *args, **keywords) |