/// <summary> /// Download a subtitle to a path /// </summary> /// <param name="path">Path to download</param> /// <param name="subtitle">Subtitle to download</param> /// <returns>Downloaded subtitle path</returns> public async Task <string> DownloadSubtitleToPath(string path, Subtitle subtitle) { using (var osdb = new Osdb().Login("OSTestUserAgentTemp")) { return(await osdb.DownloadSubtitleToPath(path, subtitle)); } }
/// <summary> /// Download a subtitle to a path /// </summary> /// <param name="path">Path to download</param> /// <param name="subtitle">Subtitle to download</param> /// <returns>Downloaded subtitle path</returns> public async Task <string> DownloadSubtitleToPath(string path, Subtitle subtitle) { var retryDownloadSubtitleToPathPolicy = Policy .Handle <XmlRpcServerException>() .WaitAndRetryAsync(5, retryAttempt => TimeSpan.FromSeconds(Math.Pow(2, retryAttempt)) ); return(await retryDownloadSubtitleToPathPolicy.ExecuteAsync(async() => { using (var osdb = new Osdb().Login("OSTestUserAgentTemp")) { return await osdb.DownloadSubtitleToPath(path, subtitle); } })); }