//--------------------------------------------------------------------- public Task SetPlayerMoreInfo(PlayerMoreInfo playerMoreInfo) { PlayerMoreInfo = playerMoreInfo; IMContext.Instance.Mongo.UpsertAsync<PlayerMoreInfo>( e => e.Id == playerMoreInfo.Id, DbCollectPlayerMoreInfo, playerMoreInfo); return TaskDone.Done; }
//--------------------------------------------------------------------- // App->Cell Task IGrainIMTestAppPlayer.UpdateMoreInfo(PlayerMoreInfo info) { Logger.Info("UpdateMoreInfo() GrainId={0}", GrainKey); return TaskDone.Done; }
//--------------------------------------------------------------------- // 响应获取好友详细信息(响应) public override void onGetFriendMoreInfo(PlayerMoreInfo friend_moreinfo) { }
//--------------------------------------------------------------------- Task IGrainAppProxyService.UpdatePlayerMoreInfo(PlayerMoreInfo playerMoreInfo) { string grain_key = string.Format("{0}_{1}", AppId, playerMoreInfo.Id); var grain_playerapp = GrainFactory.GetGrain<IGrainPlayer>(grain_key); return grain_playerapp.UpdateMoreInfo(playerMoreInfo); }
//--------------------------------------------------------------------- // App->Cell Task IGrainPlayer.UpdateMoreInfo(PlayerMoreInfo info) { Logger.Info("UpdateMoreInfo() GrainId={0}", GrainKey); // 更新缓存 PlayerCache.SetPlayerMoreInfo(info); // 通知Client if (!GrainClientKey.Equals(Guid.Empty)) { // 推送给Client PlayerNotify player_notify; player_notify.id = PlayerNotifyId.UpdatePlayerMoreInfoNotify; player_notify.data = EbTool.protobufSerialize<PlayerMoreInfo>(MemoryStream, info); ((IGrainPlayer)this).ClientNotify(player_notify); } return TaskDone.Done; }
//--------------------------------------------------------------------- // 响应获取好友详细信息(响应) public abstract void onGetFriendMoreInfo(PlayerMoreInfo friend_moreinfo);