Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMorgan Collett <morgan.collett@gmail.com>2007-10-01 20:04:24 (GMT)
committer Morgan Collett <morgan.collett@gmail.com>2007-10-01 20:04:24 (GMT)
commit61552d94b92da7f84fd7ed01ecf907df25286f14 (patch)
treeef128b38958b16e932ba0ccca6270466d690c487
parent5f03e1192f66641a148c8856a25954562c70835c (diff)
Simplification of join/share code
-rw-r--r--activity.py37
1 files changed, 12 insertions, 25 deletions
diff --git a/activity.py b/activity.py
index efb0ab2..e6c776e 100644
--- a/activity.py
+++ b/activity.py
@@ -77,43 +77,34 @@ class HelloMeshActivity(Activity):
self.initiating = None
self.connect('shared', self._shared_cb)
+ self.connect('joined', self._joined_cb)
# Buddy object for you
owner = self.pservice.get_owner()
self.owner = owner
- if self._shared_activity:
- # we are joining the activity
- self.connect('joined', self._joined_cb)
- self._shared_activity.connect('buddy-joined',
- self._buddy_joined_cb)
- self._shared_activity.connect('buddy-left',
- self._buddy_left_cb)
- if self.get_shared():
- # we've already joined
- self._joined_cb()
-
def _shared_cb(self, activity):
self._logger.debug('My activity was shared')
self.initiating = True
- self._setup()
-
- for buddy in self._shared_activity.get_joined_buddies():
- self._logger.debug('Buddy %s is already in the activity' %
- buddy.props.nick)
-
- self._shared_activity.connect('buddy-joined', self._buddy_joined_cb)
- self._shared_activity.connect('buddy-left', self._buddy_left_cb)
+ self._sharing_setup()
self._logger.debug('This is my activity: making a tube...')
id = self.tubes_chan[telepathy.CHANNEL_TYPE_TUBES].OfferDBusTube(
SERVICE, {})
- def _setup(self):
+ def _sharing_setup(self):
if self._shared_activity is None:
self._logger.error('Failed to share or join activity')
return
+ self._shared_activity.connect('buddy-joined', self._buddy_joined_cb)
+ self._shared_activity.connect('buddy-left', self._buddy_left_cb)
+
+ # Find out who's already in the shared activity:
+ for buddy in self._shared_activity.get_joined_buddies():
+ self._logger.debug('Buddy %s is already in the activity' %
+ buddy.props.nick)
+
bus_name, conn_path, channel_paths =\
self._shared_activity.get_channels()
@@ -166,13 +157,9 @@ class HelloMeshActivity(Activity):
if not self._shared_activity:
return
- # Find out who's already in the shared activity:
- for buddy in self._shared_activity.get_joined_buddies():
- self._logger.debug('Buddy %s is already in the activity' % buddy.props.nick)
-
self._logger.debug('Joined an existing shared activity')
self.initiating = False
- self._setup()
+ self._sharing_setup()
self._logger.debug('This is not my activity: waiting for a tube...')
self.tubes_chan[telepathy.CHANNEL_TYPE_TUBES].ListTubes(