2003-12-01 David Zeuthen <david@fubar.dk>

* python/dbus.py: Add the actual message when calling the reciever
	of a signal such that parameters can be inspected. Add the method
	remove_signal_receiver
This commit is contained in:
David Zeuthen 2003-12-01 20:49:53 +00:00
parent 9f1a60dbba
commit 3e77824dff
2 changed files with 16 additions and 2 deletions

View file

@ -1,3 +1,9 @@
2003-12-01 David Zeuthen <david@fubar.dk>
* python/dbus.py: Add the actual message when calling the reciever
of a signal such that parameters can be inspected. Add the method
remove_signal_receiver
2003-11-26 Mikael Hallendal <micke@imendio.com>
* bus/*.[ch]:

View file

@ -75,7 +75,15 @@ class Bus:
self._match_rule_to_receivers[match_rule].append(receiver)
dbus_bindings.bus_add_match(self._connection, match_rule)
def remove_signal_receiver(self, receiver, interface=None, service=None, path=None):
match_rule = self._get_match_rule(interface, service, path)
if self._match_rule_to_receivers.has_key(match_rule):
if self._match_rule_to_receivers[match_rule].__contains__(receiver):
self._match_rule_to_receivers[match_rule].remove(receiver)
dbus_bindings.bus_remove_match(self._connection, match_rule)
def get_connection(self):
"""Get the dbus_bindings.Connection object associated with this Bus"""
return self._connection
@ -103,7 +111,7 @@ class Bus:
if (self._match_rule_to_receivers.has_key(match_rule)):
receivers = self._match_rule_to_receivers[match_rule]
args = [interface, member, service, path]
args = [interface, member, service, path, message]
for receiver in receivers:
receiver(*args)