summaryrefslogtreecommitdiff
path: root/dbus/service.py
diff options
context:
space:
mode:
authorSimon McVittie <simon.mcvittie@collabora.co.uk>2007-04-24 14:45:14 +0100
committerSimon McVittie <simon.mcvittie@collabora.co.uk>2007-04-25 11:30:38 +0100
commite4050f2750d2fdb5c05a7d7b9cb4030b99133f13 (patch)
treea39833647e8ca3a078c941aef324eafd669e0cee /dbus/service.py
parentae8014c72a7d304f20d9422009f42bc48fa8f298 (diff)
downloaddbus-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.py8
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)