import telepathy
+import tp
+import util.misc as misc_utils
-_moduleLogger = logging.getLogger("handle")
+_moduleLogger = logging.getLogger(__name__)
-class TheOneRingHandle(telepathy.server.Handle):
+
+class TheOneRingHandle(tp.Handle):
"""
Instances are memoized
"""
def __init__(self, connection, id, handleType, name):
- telepathy.server.Handle.__init__(self, id, handleType, name)
+ tp.Handle.__init__(self, id, handleType, name)
self._conn = weakref.proxy(connection)
def __repr__(self):
type(self).__name__, self.id, self.name
)
- id = property(telepathy.server.Handle.get_id)
- type = property(telepathy.server.Handle.get_type)
- name = property(telepathy.server.Handle.get_name)
+ id = property(tp.Handle.get_id)
+ type = property(tp.Handle.get_type)
+ name = property(tp.Handle.get_name)
class ConnectionHandle(TheOneRingHandle):
class ContactHandle(TheOneRingHandle):
- def __init__(self, connection, id, contactId):
+ def __init__(self, connection, id, phoneNumber):
+ self._phoneNumber = misc_utils.normalize_number(phoneNumber)
+
handleType = telepathy.HANDLE_TYPE_CONTACT
- handleName = contactId
+ handleName = self._phoneNumber
TheOneRingHandle.__init__(self, connection, id, handleType, handleName)
- self._contactId = contactId
-
- @property
- def contactID(self):
- return self._contactId
-
@property
- def contactDetails(self):
- return self._conn.addressbook.get_contact_details(self._id)
+ def phoneNumber(self):
+ return self._phoneNumber
class ListHandle(TheOneRingHandle):
cache = weakref.WeakValueDictionary()
- def create_handle(connection, type, *args):
+ def _create_handle(connection, type, *args):
Handle = _HANDLE_TYPE_MAPPING[type]
key = Handle, connection.username, args
try:
cache[key] = handle
isNewHandle = True
connection._handles[handle.get_type(), handle.get_id()] = handle
- handleStatus = "Is New!" if isNewHandle else "From Cache"
- _moduleLogger.info("Created Handle: %r (%s)" % (handle, handleStatus))
+ if isNewHandle:
+ handleStatus = "Is New!" if isNewHandle else "From Cache"
+ _moduleLogger.debug("Created Handle: %r (%s)" % (handle, handleStatus))
return handle
- return create_handle
+ return _create_handle
create_handle = create_handle_factory()