Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorGuillaume 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)
commitca195a27fbbe5b9ee2ce188374f99f6614273d64 (patch)
tree2ec7ef29f57dacc8b030ed783bf8efd17f1247bf /src
parent5dea27ee6919b4abbc706dedd52d8e2452a2c269 (diff)
parent8b75f5524087c41ccd8563009761e2ce3bc65946 (diff)
Merge branch '7545'
Diffstat (limited to 'src')
-rw-r--r--src/jarabe/model/neighborhood.py34
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)