Exemplo n.º 1
0
        /// <summary>
        /// Get subtitles languages
        /// </summary>
        /// <returns>Languages</returns>
        public async Task <IEnumerable <OSDB.Models.Language> > GetSubLanguages()
        {
            var retryGetSubLanguagesPolicy = Policy
                                             .Handle <Exception>()
                                             .WaitAndRetryAsync(2, retryAttempt =>
                                                                TimeSpan.FromSeconds(Math.Pow(2, retryAttempt))
                                                                );

            try
            {
                return(await retryGetSubLanguagesPolicy.ExecuteAsync(async() =>
                {
                    var osdb = new OsdbClient();
                    return await osdb.GetSubLanguages();
                }));
            }
            catch (Exception)
            {
                Messenger.Default.Send(new ManageExceptionMessage(new PopcornException(LocalizationProviderHelper.GetLocalizedValue <string>("OpenSubtitlesNotAvailable"))));
                return(new List <OSDB.Models.Language>());
            }
        }
Exemplo n.º 2
0
        public static IOsdbClient Create(string userAgent)
        {
            var client = new OsdbClient(userAgent);

            return(client);
        }