Пример #1
0
 public bool Equals(RemoteApiContentInfo info)
 {
     if (info == null)
     {
         return(false);
     }
     return(Uri == info.Uri);
 }
Пример #2
0
        private async Task <IList <ContentInfo> > GetContentsOfDayAsync(DateInfo date, int startFrom, int count, ContentsSet contentsSet)
        {
            DebugUtil.Log("Loading ContentsOfDay: " + date.Title + " from " + startFrom);

            var contents = await AvContentApi.GetContentListAsync(new ContentListTarget
            {
                Sorting     = SortMode.Ascending,
                Grouping    = ContentGroupingMode.Date,
                Uri         = date.Uri,
                Types       = ContentsSetToTypes(contentsSet),
                StartIndex  = startFrom,
                MaxContents = count
            }).ConfigureAwait(false);

            return(contents.Where(content => content.ImageContent != null &&
                                  content.ImageContent.OriginalContents != null &&
                                  content.ImageContent.OriginalContents.Count > 0)
                   .Select(content =>
            {
                var contentInfo = new RemoteApiContentInfo
                {
                    Name = RemoveExtension(content.ImageContent.OriginalContents[0].FileName),
                    LargeUrl = content.ImageContent.LargeImageUrl,
                    ThumbnailUrl = content.ImageContent.ThumbnailUrl,
                    MimeType = ContentKindToMimeType(content.ContentKind),
                    Uri = content.Uri,
                    CreatedTime = content.CreatedTime,
                    Protected = content.IsProtected == TextBoolean.True,
                    RemotePlaybackAvailable = (content.RemotePlayTypes != null && content.RemotePlayTypes.Contains(RemotePlayMode.SimpleStreaming)),
                    GroupName = date.Title,
                };

                if (content.ContentKind == ContentKind.StillImage)
                {
                    foreach (var original in content.ImageContent.OriginalContents)
                    {
                        if (original.Type == ImageType.Jpeg)
                        {
                            contentInfo.OriginalUrl = original.Url;
                            break;
                        }
                    }
                }
                else if (content.ContentKind == ContentKind.MovieMp4 || content.ContentKind == ContentKind.MovieXavcS)
                {
                    foreach (var original in content.ImageContent.OriginalContents)
                    {
                        contentInfo.OriginalUrl = original.Url;
                        break;
                    }
                }
                return contentInfo;
            })
                   .ToList <ContentInfo>());
        }