nn::nex::MatchMakingClient::MigrateGatheringOwnership Member Function

Syntax

qBool MigrateGatheringOwnership(
     ProtocolCallContext * pContext,
     GatheringID id,
     const qList< PrincipalID > & lstPotentialOwnersID
);

Parameters

Name Description
in pContext Call information.
in id The gathering ID whose owner is to be changed.
in lstPotentialOwnersID Candidate list for owner transfer. If the list is empty, the new owner is automatically selected from participants in the gathering.

Return Values



Value Description
true Call initialization succeeded.
false Failure.

Description

Changes the owner of a gathering to another participant.

Changes the owner of the specified gathering to another participant. Only the owner of a gathering can do this. If the owner is changed successfully, NotificationEvents::OwnershipChangeEvent will be notified to all participants in the gathering.

The following results may be returned as a result of asynchronous operation. Use the application to handle these results.

QERROR(RendezVous, SessionVoid): The gathering does not exist.
QERROR(RendezVous, PermissionDenied): The caller is not the owner.
QERROR(RendezVous, NotParticipatedGathering): The lstPotentialOwnersID parameter was set to an empty list, but there were no participants. None of the users specified in lstPotentialOwnersID are participants in the gathering.
QERROR(RendezVous, UserIsOffline): The user specified in lstPotentialOwnersID either does not exist or is offline.

Revision History

2014/03/28
The function used to return QERROR(RendezVous, SessionVoid) when called on a gathering where the local station is not the owner, but now returns QERROR(RendezVous, PermissionDenied).
Previously, the function returned QERROR(RendezVous, SessionVoid) when an empty list was specified in lstPotentialOwnersID and the gathering had no participants, or when none of the users specified in lstPotentialOwnersID were participants in the gathering. The function now returns QERROR(RendezVous, NotParticipatedGathering). Previously, the function returned QERROR(RendezVous, SessionVoid) when the user specified in lstPotentialOwnersID did not exist or was offline, but it now returns QERROR(RendezVous, UserIsOffline). Previously, ownership could be migrated to a user who was not a participant in the matchmaking session, but now ownership can only be migrated to participants.
2011/01/27
Initial version.

CONFIDENTIAL