summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRobert McQueen <robot101@debian.org>2005-11-03 16:13:53 +0000
committerRobert McQueen <robot101@debian.org>2005-11-03 16:13:53 +0000
commit9d0ab378067cd59e12a1ba2671c353e4a8bce356 (patch)
treea4d0c8a99135ed21f13053862d83d88e9cdd4407
parenta4b1aa364258be053d195650de9062b090f125c6 (diff)
2005-11-03 Robert McQueen <robot101@debian.org>
* python/_dbus.py, python/proxies.py, python/service.py: Add __repr__ functions to dbus.Bus, dbus.service.BusName and dbus.service.Object, tweak others to be consistent. * test/python/test-client.py: Tweak output of testInheritance.
-rw-r--r--ChangeLog8
-rw-r--r--python/_dbus.py16
-rw-r--r--python/proxies.py2
-rw-r--r--python/service.py7
-rwxr-xr-xtest/python/test-client.py2
5 files changed, 32 insertions, 3 deletions
diff --git a/ChangeLog b/ChangeLog
index e629546f..07db9afe 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+2005-11-03 Robert McQueen <robot101@debian.org>
+
+ * python/_dbus.py, python/proxies.py, python/service.py: Add __repr__
+ functions to dbus.Bus, dbus.service.BusName and dbus.service.Object,
+ tweak others to be consistent.
+
+ * test/python/test-client.py: Tweak output of testInheritance.
+
2005-10-29 Robert McQueen <robot101@debian.org>
* python/service.py: Major changes to allow multiple inheritance
diff --git a/python/_dbus.py b/python/_dbus.py
index 2e7e671b..bb4c0428 100644
--- a/python/_dbus.py
+++ b/python/_dbus.py
@@ -68,6 +68,7 @@ class Bus:
START_REPLY_ALREADY_RUNNING = dbus_bindings.DBUS_START_REPLY_ALREADY_RUNNING
def __init__(self, bus_type=TYPE_SESSION, use_default_mainloop=True, private=False):
+ self._bus_type = bus_type
self._connection = dbus_bindings.bus_get(bus_type, private)
self._connection.add_filter(self._signal_func)
@@ -196,6 +197,19 @@ class Bus:
def start_service_by_name(self, named_service):
return dbus_bindings.bus_start_service_by_name(self._connection, named_service)
+ def __repr__(self):
+ if self._bus_type == self.TYPE_SESSION:
+ name = 'SESSION'
+ elif self._bus_type == self.TYPE_SYSTEM:
+ name = 'SYSTEM'
+ elif self._bus_type == self.TYPE_STARTER:
+ name = 'STARTER'
+ else:
+ assert False, 'Unable to represent unknown bus type.'
+
+ return '<dbus.Bus on %s at %#x>' % (name, id(self))
+ __str__ = __repr__
+
class SystemBus(Bus):
"""The system-wide message bus
"""
@@ -246,6 +260,6 @@ class Interface:
return ret
def __repr__(self):
- return '<Interface %r implementing %r at %x>'%(
+ return '<Interface %r implementing %r at %#x>'%(
self._obj, self._dbus_interface, id(self))
__str__ = __repr__
diff --git a/python/proxies.py b/python/proxies.py
index f1f33941..d13b72b1 100644
--- a/python/proxies.py
+++ b/python/proxies.py
@@ -222,7 +222,7 @@ class ProxyObject:
return ret
def __repr__(self):
- return '<ProxyObject wrapping %s %s %s at %x>'%(
+ return '<ProxyObject wrapping %s %s %s at %#x>'%(
self._bus, self._named_service, self._object_path , id(self))
__str__ = __repr__
diff --git a/python/service.py b/python/service.py
index 3809ca59..de68b614 100644
--- a/python/service.py
+++ b/python/service.py
@@ -28,6 +28,10 @@ class BusName:
"""Get the name of this service"""
return self._named_service
+ def __repr__(self):
+ return '<dbus.service.BusName %s on %r at %#x>' % (self._named_service, self._bus, id(self))
+ __str__ = __repr__
+
def _dispatch_dbus_method_call(self, argument_list, message):
"""Calls method_to_call using argument_list, but handles
exceptions, etc, and generates a reply to the DBus Message message
@@ -280,3 +284,6 @@ class Object(Interface):
return reflection_data
+ def __repr__(self):
+ return '<dbus.service.Object %s on %r at %#x>' % (self._object_path, self._name, id(self))
+ __str__ = __repr__
diff --git a/test/python/test-client.py b/test/python/test-client.py
index e84afcdf..cb753fb8 100755
--- a/test/python/test-client.py
+++ b/test/python/test-client.py
@@ -147,7 +147,7 @@ class TestDBusBindings(unittest.TestCase):
def testInheritance(self):
print "\n********* Testing inheritance from dbus.method.Interface ***********"
ret = self.iface.CheckInheritance()
- print "CheckInheritance returned %s\n", str(ret)
+ print "CheckInheritance returned %s" % ret
self.assert_(ret, "overriding CheckInheritance from TestInterface failed")
class TestDBusPythonToGLibBindings(unittest.TestCase):