diff options
author | Tomeu Vizoso <tomeu.vizoso@collabora.co.uk> | 2010-07-15 08:50:05 (GMT) |
---|---|---|
committer | Tomeu Vizoso <tomeu.vizoso@collabora.co.uk> | 2010-08-20 13:33:53 (GMT) |
commit | 363f82820557e3b15e6c36334bceeae1f863ed31 (patch) | |
tree | e1a4433cf5a5197a443d3f92359007bee6b96f34 /src/sugar/activity/activityhandle.py | |
parent | af6e3aa5ef284ed9184f149b119707496747f3a5 (diff) |
Handle invitations using Mission Control 5.
src/sugar/activity/activity.py: If the activity is being invoked to
handle an invite, create a Client.Handler instance and share the
activity when HandleChannels is invoked.
src/sugar/activity/activityfactory.py,
src/sugar/activity/activityhandle.py,
src/sugar/activity/main.py: Add a -i switch that indicates to the
activity that it should handle the channel from an invitation.
src/sugar/presence/activity.py: Expose Activity.room_handle.
src/sugar/presence/presenceservice.py: Add get_activity_by_handle().
src/sugar/presence/util.py: Add get_account_for_connection().
Diffstat (limited to 'src/sugar/activity/activityhandle.py')
-rw-r--r-- | src/sugar/activity/activityhandle.py | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/src/sugar/activity/activityhandle.py b/src/sugar/activity/activityhandle.py index 4ceadb0..3297c10 100644 --- a/src/sugar/activity/activityhandle.py +++ b/src/sugar/activity/activityhandle.py @@ -23,7 +23,8 @@ STABLE. class ActivityHandle(object): """Data structure storing simple activity metadata""" - def __init__(self, activity_id=None, object_id=None, uri=None): + def __init__(self, activity_id=None, object_id=None, uri=None, + handle_invite=False): """Initialise the handle from activity_id activity_id -- unique id for the activity to be @@ -45,14 +46,18 @@ class ActivityHandle(object): activity, rather than a journal object (downloads stored on the file system for example or web pages) + handle_invite -- the activity is being launched for handling an invite + from the network """ self.activity_id = activity_id self.object_id = object_id self.uri = uri + self.handle_invite = handle_invite def get_dict(self): """Retrieve our settings as a dictionary""" - result = {'activity_id': self.activity_id} + result = {'activity_id': self.activity_id, + 'handle_invite': self.handle_invite} if self.object_id: result['object_id'] = self.object_id if self.uri: @@ -65,5 +70,6 @@ def create_from_dict(handle_dict): """Create a handle from a dictionary of parameters""" result = ActivityHandle(handle_dict['activity_id'], object_id = handle_dict.get('object_id'), - uri = handle_dict.get('uri')) + uri = handle_dict.get('uri'), + handle_invite = handle_dict.get('handle_invite')) return result |