private void OnProfile(IGraphResult response) { mAwaitingProfilesCount--; if (AssertResult(response)) { SocialUserProfile rec = PrepareProfile(response.RawResult); mProfiles.Add(rec); // если дождались ответов для всех запрошенных пользователей if (mAwaitingProfilesCount <= 0) { if (mRequestProfilesCallback != null) { mRequestProfilesCallback.Invoke(mProfiles); mRequestProfilesCallback = null; } else { OnProfiles(mProfiles); } } } // если в очереди ожидают еще запросы, выполним их if (mRequestProfilesQueue.Count > 0) { RequestProfilesQueueItem req = mRequestProfilesQueue.Dequeue(); DoRequestProfiles(req.userids, req.callback); } }
private void OnProfile(IGraphResult response) { mAwaitingProfilesCount--; if (AssertResult(response)) { SocialUserProfile rec = PrepareProfile(response.RawResult); mProfiles.Add(rec); // if all requested profiles are gotten if (mAwaitingProfilesCount <= 0) { if (mRequestProfilesCallback != null) { mRequestProfilesCallback.Invoke(mProfiles); mRequestProfilesCallback = null; } else { OnProfiles(mProfiles); } } } if (mRequestProfilesQueue.Count > 0) { RequestProfilesQueueItem req = mRequestProfilesQueue.Dequeue(); DoRequestProfiles(req.userids, req.callback); } }