public TalkSummary(Talk talk, string url, string thumbnail, string conferenceName) : base(talk) { Url = url; Thumbnail = thumbnail; ConferenceName = conferenceName; ConferenceUrl = NavigateableController.GetConferenceUrl(talk.ConferenceId); }
protected async Task <IEnumerable <TalkSummary> > CreateTalkSummaries(IEnumerable <Talk> talks) { return(await Task.WhenAll(talks.Select(CreateTalkSummary))); async Task <TalkSummary> CreateTalkSummary(Talk talk) { var url = NavigateableController.GetTalkUrl(talk); var thumbnail = await thumbnailService.GetThumbnailUrl(talk); var conferenceName = conferences[talk.ConferenceId].Name; return(new TalkSummary(talk, url, thumbnail, conferenceName)); } }
async Task <string> CreateThumbnailUrl(Talk talk) { var baseThumbnailUrl = NavigateableController.GetThumbnailUrl(talk); var hash = await thumbnailPersistence.GetSavedHashOfThumbnail(talk); if (hash == string.Empty) { return(baseThumbnailUrl); } var thumbNailUrl = baseThumbnailUrl + "?v=" + hash; return(thumbNailUrl); }