示例#1
0
        /// <inheritdoc />
        public Task <Show> GetShowByTvRageIdAsync(int tvRageId)
        {
            if (tvRageId <= 0)
            {
                throw new ArgumentException(nameof(tvRageId));
            }

            return(_httpClient.GetAsync <Show>($"lookup/shows?tvrage={tvRageId}"));
        }
示例#2
0
        /// <inheritdoc />
        public Task <IEnumerable <ShowSearchResult> > ShowSearchAsync(string query)
        {
            if (string.IsNullOrWhiteSpace(query))
            {
                throw new ArgumentNullException(nameof(query));
            }

            return(_httpClient.GetAsync <IEnumerable <ShowSearchResult> >($"search/shows?q={query}"));
        }
示例#3
0
        /// <inheritdoc />
        public Task <Show> GetShowMainInformationAsync(int showId, ShowEmbeddingFlags embeddings = ShowEmbeddingFlags.None)
        {
            if (showId <= 0)
            {
                throw new ArgumentException(nameof(showId));
            }

            return(_httpClient.GetAsync <Show>(ShowEmbeddings.AddQueryStringToUrl($"shows/{showId}", embeddings)));
        }
示例#4
0
        /// <inheritdoc />
        public Task <Episode> GetEpisodeMainInformationAsync(int episodeId, EpisodeEmbeddingFlags embeddings)
        {
            if (episodeId <= 0)
            {
                throw new ArgumentException(nameof(episodeId));
            }

            return(_httpClient.GetAsync <Episode>(EpisodeEmbeddings.AddQueryStringToUrl($"episodes/{episodeId}", embeddings)));
        }
示例#5
0
        /// <inheritdoc />
        public async Task <IEnumerable <ShowLastUpdated> > GetShowUpdatesAsync()
        {
            var result = await _httpClient.GetAsync <Dictionary <int, double> >("updates/shows");

            return(result.Select(x => new ShowLastUpdated
            {
                Id = x.Key,
                Timestamp = x.Value
            }));
        }