in Twitter/SDK/JobProcessorTwitter.cs [150:188]
private async Task<Tweet> EnrichTweetWithAttachments(Tweet tweet)
{
if (tweet == null)
return null;
if (tweet.Entities != null && tweet.Entities.MediaObjects != null)
{
List<DefaultMediaTwitter> entitiesMediaObject = null;
foreach (var media in tweet.Entities.MediaObjects)
{
if (entitiesMediaObject == null)
{
entitiesMediaObject = new List<DefaultMediaTwitter>();
}
media.Content = await downloader.DownloadFileAsBase64EncodedString(media.MediaUrlHttps);
entitiesMediaObject.Add(media);
}
tweet.Entities.MediaObjects = entitiesMediaObject;
}
if (tweet.ExtendedEntities != null && tweet.ExtendedEntities.ExtendedMediaObjects != null)
{
List<ExtendedMediaTwitter> extEntitiesMediaObject = null;
foreach (var media in tweet.ExtendedEntities.ExtendedMediaObjects)
{
if (extEntitiesMediaObject == null)
{
extEntitiesMediaObject = new List<ExtendedMediaTwitter>();
}
media.Content = await downloader.DownloadFileAsBase64EncodedString(media.MediaUrlHttps);
extEntitiesMediaObject.Add(media);
}
tweet.ExtendedEntities.ExtendedMediaObjects = extEntitiesMediaObject;
}
tweet.RetweetedStatus = await EnrichTweetWithAttachments(tweet.RetweetedStatus);
tweet.QuotedStatus = await EnrichTweetWithAttachments(tweet.QuotedStatus);
return tweet;
}