diff options
author | Guillaume Desmottes <guillaume.desmottes@collabora.co.uk> | 2008-10-22 11:11:32 (GMT) |
---|---|---|
committer | Guillaume Desmottes <guillaume.desmottes@collabora.co.uk> | 2008-10-22 11:11:32 (GMT) |
commit | ca195a27fbbe5b9ee2ce188374f99f6614273d64 (patch) | |
tree | 2ec7ef29f57dacc8b030ed783bf8efd17f1247bf /src | |
parent | 5dea27ee6919b4abbc706dedd52d8e2452a2c269 (diff) | |
parent | 8b75f5524087c41ccd8563009761e2ce3bc65946 (diff) |
Merge branch '7545'
Diffstat (limited to 'src')
-rw-r--r-- | src/jarabe/model/neighborhood.py | 34 |
1 files changed, 30 insertions, 4 deletions
diff --git a/src/jarabe/model/neighborhood.py b/src/jarabe/model/neighborhood.py index 79b2d1e..7aada26 100644 --- a/src/jarabe/model/neighborhood.py +++ b/src/jarabe/model/neighborhood.py @@ -27,10 +27,15 @@ from jarabe.model import bundleregistry from jarabe.util.telepathy import connection_watcher from dbus import PROPERTIES_IFACE -import telepathy from telepathy.interfaces import CONNECTION_INTERFACE_REQUESTS CONN_INTERFACE_GADGET = 'org.laptop.Telepathy.Gadget' +CHAN_INTERFACE_VIEW = 'org.laptop.Telepathy.Channel.Interface.View' +CHAN_INTERFACE_BUDBY_VIEW = 'org.laptop.Telepathy.Channel.Type.BuddyView' +CHAN_INTERFACE_ACTIVITY_VIEW = 'org.laptop.Telepathy.Channel.Type.ActivityView' + +NB_RANDOM_BUDDIES = 20 +NB_RANDOM_ACTIVITIES = 40 class ActivityModel: def __init__(self, act, bundle): @@ -88,12 +93,12 @@ class Neighborhood(gobject.GObject): reply_handler=self._get_activities_cb) self._conn_watcher = connection_watcher.ConnectionWatcher() - self._conn_watcher.connect('connection-added', self._conn_addded_cb) + self._conn_watcher.connect('connection-added', self.__conn_addded_cb) for conn in self._conn_watcher.get_connections(): - self._conn_addded_cb(self._conn_watcher, conn) + self.__conn_addded_cb(self._conn_watcher, conn) - def _conn_addded_cb(self, watcher, conn): + def __conn_addded_cb(self, watcher, conn): if CONN_INTERFACE_GADGET not in conn: return @@ -114,6 +119,27 @@ class Neighborhood(gobject.GObject): (conn.service_name.split('.')[-1], publish)) conn[CONN_INTERFACE_GADGET].Publish(publish) + self._request_random_buddies(conn, NB_RANDOM_BUDDIES) + self._request_random_activities(conn, NB_RANDOM_ACTIVITIES) + + def _request_random_buddies(self, conn, nb): + logging.debug("Request %d random buddies" % nb) + + conn[CONNECTION_INTERFACE_REQUESTS].CreateChannel( + { 'org.freedesktop.Telepathy.Channel.ChannelType': + 'org.laptop.Telepathy.Channel.Type.BuddyView', + 'org.laptop.Telepathy.Channel.Interface.View.MaxSize': nb + }) + + def _request_random_activities(self, conn, nb): + logging.debug("Request %d random activities" % nb) + + conn[CONNECTION_INTERFACE_REQUESTS].CreateChannel( + { 'org.freedesktop.Telepathy.Channel.ChannelType': + 'org.laptop.Telepathy.Channel.Type.ActivityView', + 'org.laptop.Telepathy.Channel.Interface.View.MaxSize': nb + }) + def _get_buddies_cb(self, buddy_list): for buddy in buddy_list: self._buddy_appeared_cb(self._pservice, buddy) |