Saros
Distributed Collaborative Editing and Distributed Party Programming
de.fu_berlin.inf.dpp.project.internal.UserInformationHandler Class Reference

Inherits Startable.

List of all members.

Public Member Functions

 UserInformationHandler (ISarosSession session, ITransmitter transmitter, IReceiver receiver)
void start ()
void stop ()
synchronized List< UsersynchronizeUserList (Collection< User > usersAdded, Collection< User > usersRemoved, Collection< User > remoteUsers)
void sendUserFinishedProjectNegotiation (Collection< User > remoteUsers, JID jid)

Detailed Description

Business Logic for receiving and sending updates of the invitation state of users. Also handles sending and responding to userLists after when a user joined the session


Constructor & Destructor Documentation

de.fu_berlin.inf.dpp.project.internal.UserInformationHandler.UserInformationHandler ( ISarosSession  session,
ITransmitter  transmitter,
IReceiver  receiver 
)

Member Function Documentation

void de.fu_berlin.inf.dpp.project.internal.UserInformationHandler.sendUserFinishedProjectNegotiation ( Collection< User remoteUsers,
JID  jid 
)

Informs all clients about the fact that a user now has projects and is able to process IResourceActivitys.

Parameters:
remoteUsersThe users to be informed
jidThe JID of the user this message is about
void de.fu_berlin.inf.dpp.project.internal.UserInformationHandler.start ( )
void de.fu_berlin.inf.dpp.project.internal.UserInformationHandler.stop ( )
synchronized List<User> de.fu_berlin.inf.dpp.project.internal.UserInformationHandler.synchronizeUserList ( Collection< User usersAdded,
Collection< User usersRemoved,
Collection< User remoteUsers 
)

Synchronizes a user list with the given remote users.

Parameters:
usersAddedcollection containing the users that are added to the current session or null
usersRemovedcollection containing the users that are removed from the current session or null
remoteUserscollection containing the users that will receive the user list
Returns:
a list of users that did not reply when synchronizing the user list
Exceptions:
IllegalStateExceptionif the local user of the session is not the host
IllegalArgumentExceptionif remoteUsers collection is empty
if usersAdded and usersRemoved are either both empty or null
 All Classes Namespaces Files Functions Variables Enumerations