public void Setup(NicoLive liveData)
        {
            CommunityName      = liveData.BroadcasterName;
            CommunityThumbnail = liveData.PictureUrl;

            CommunityGlobalId = liveData.BroadcasterId;
            CommunityType     = liveData.ProviderType;

            LiveTitle             = liveData.Title;
            ShortDescription      = liveData.Description;
            ViewCounter           = liveData.ViewCount;
            CommentCount          = liveData.CommentCount;
            StartTime             = liveData.StartTime.LocalDateTime;
            EndTime               = liveData.EndTime.LocalDateTime;
            IsTimeshiftEnabled    = liveData.TimeshiftEnabled;
            IsCommunityMemberOnly = liveData.IsMemberOnly;

            ThumbnailUrl = liveData.ThumbnailUrl;

            if (StartTime > DateTimeOffset.Now)
            {
                LiveStatus = LiveStatus.Reserved;
            }
            else if (EndTime > DateTimeOffset.Now)
            {
                LiveStatus = LiveStatus.Onair;
                Duration   = DateTimeOffset.Now - StartTime;
            }
            else
            {
                LiveStatus = LiveStatus.Past;
                Duration   = EndTime.Value - StartTime;
            }
        }
        public void Setup(NicoLive liveData)
        {
            CommunityName = liveData.BroadcasterName;
            if (liveData.ThumbnailUrl != null)
            {
                CommunityThumbnail = liveData.ThumbnailUrl;
            }
            else
            {
                CommunityThumbnail = liveData.PictureUrl;
            }

            CommunityGlobalId = liveData.BroadcasterId;
            CommunityType     = liveData.ProviderType;

            LiveTitle             = liveData.Title;
            ViewCounter           = liveData.ViewCount;
            CommentCount          = liveData.CommentCount;
            OpenTime              = liveData.OpenTime;
            StartTime             = liveData.StartTime;
            EndTime               = liveData.EndTime;
            IsTimeshiftEnabled    = liveData.TimeshiftEnabled;
            IsCommunityMemberOnly = liveData.IsMemberOnly;

            Label = LiveTitle;
            AddImageUrl(CommunityThumbnail);

            Description = $"来場者:{ViewCounter} コメ:{CommentCount}";

            if (StartTime > DateTimeOffset.Now)
            {
                // 予約
                DurationText = $" 開始予定: {StartTime.LocalDateTime.ToString("g")}";
            }
            else if (EndTime > DateTimeOffset.Now)
            {
                var duration = DateTimeOffset.Now - StartTime;
                // 放送中
                if (duration.Hours > 0)
                {
                    DurationText = $"{duration.Hours}時間 {duration.Minutes}分 経過";
                }
                else
                {
                    DurationText = $"{duration.Minutes}分 経過";
                }
            }
            else
            {
                var duration = EndTime - StartTime;
                // 終了
                if (duration.Hours > 0)
                {
                    DurationText = $"{EndTime.LocalDateTime.ToString("g")} 終了({duration.Hours}時間 {duration.Minutes}分)";
                }
                else
                {
                    DurationText = $"{EndTime.LocalDateTime.ToString("g")} 終了({duration.Minutes}分)";
                }
            }

            OptionText = DurationText;
        }