예제 #1
0
        public async Task <IEntry <TwitterContact> > FetchAsync(ulong id)
        {
            try
            {
                var user = await _client.GetUserAsync(id);

                return(_entryFactory.Create(
                           new TwitterContact(
                               ((ulong?)user.Id).GetValueOrDefault(id),
                               user.Name,
                               user.ScreenName,
                               $"https://twitter.com/{user.ScreenName}"
                               )
                           ));
            }
            catch (TwitterException e)
            {
                if (e.Status == HttpStatusCode.NotFound)
                {
                    throw new ContactNotFoundException <TwitterContact>(e);
                }

                throw;
            }
        }