Imitiating buttfly in being explicitly typed
[theonering] / src / contacts.py
index 8a7d16b..d57d1e1 100644 (file)
@@ -3,8 +3,10 @@ import logging
 import dbus
 import telepathy
 
+import util.misc as misc_utils
 
-_moduleLogger = logging.getLogger('contacts')
+
+_moduleLogger = logging.getLogger(__name__)
 
 
 class ContactsMixin(telepathy.server.ConnectionInterfaceContacts):
@@ -32,6 +34,7 @@ class ContactsMixin(telepathy.server.ConnectionInterfaceContacts):
                raise NotImplementedError("Abstract function called")
 
        # Overwrite the dbus attribute to get the sender argument
+       @misc_utils.log_exception(_moduleLogger)
        @dbus.service.method(telepathy.CONNECTION_INTERFACE_CONTACTS, in_signature='auasb',
                                                        out_signature='a{ua{sv}}', sender_keyword='sender')
        def GetContactAttributes(self, handles, interfaces, hold, sender):
@@ -43,9 +46,9 @@ class ContactsMixin(telepathy.server.ConnectionInterfaceContacts):
                                )
 
                handle_type = telepathy.HANDLE_TYPE_CONTACT
-               ret = {}
+               ret = dbus.Dictionary(signature='ua{sv}')
                for handle in handles:
-                       ret[handle] = {}
+                       ret[handle] = dbus.Dictionary(signature='sv')
 
                functions = {
                        telepathy.CONNECTION: