/// <summary> /// Gets detailed information about a series. /// </summary> /// <param name="id">ID of series to get details for.</param> /// <param name="request">API request object to use.</param> /// <returns>Detailed series object.</returns> public static TvdbDetailedSeries GetDetailedSeries(uint id, TvdbApiRequest request) { Debug.WriteLine("-> TvdbDetailedSeries::GetDetailedSeries id=\"" + id + "\" request=\"" + request + "\" Called"); var cacheKey = id + "~series"; return(request.PerformApiRequestAndDeserialize <TvdbDetailedSeries>(GetExtendedSeriesUrl(id, request.ApiKey), cacheKey)); }
/// <summary> /// Searches the TVDB for a series. /// </summary> /// <param name="series">Series to search for.</param> /// <param name="request">API request object to use.</param> /// <returns>An array of possible series.</returns> public static TvdbSeries[] GetTvdbSeriesSearch(string series, TvdbApiRequest request) { Debug.WriteLine("-> TvdbSeries::GetTvdbSeriesSearch series=\"" + series + "\" request=\"" + request + "\" Called"); series = series.ToLower().Trim(); var cacheKey = series + "~search"; var seriesSearch = request.PerformApiRequestAndDeserialize <SeriesSearch>(GetSeriesUrl(series), cacheKey, false, true); return(seriesSearch.Series); }
/// <summary> /// Gets the current TVDB epoch time. /// </summary> /// <param name="request">Request to use.</param> /// <param name="previousTime">Previous time.</param> /// <returns>A TvdbApiTime representation.</returns> public static TvdbApiTime TvdbServerTime(TvdbApiRequest request, uint previousTime) { Debug.WriteLine("-> TvdbApiTime::TvdbServerTime request=\"" + request + "\" previousTime=\"" + previousTime + " Called"); var ut = request.CacheProvider.CacheType == TvdbCacheType.None || previousTime == 0 ? UpdateType.Time : UpdateType.All; var st = request.PerformApiRequestAndDeserialize <TvdbApiTime>(GetUpdateUrl(ut, previousTime), string.Empty, true, true); if (st.Series != null) { st.Series.Sort(); } if (st.Episodes != null) { st.Episodes.Sort(); } return(st); }