コード例 #1
0
        private async Task GetSeasonAndEpisodeInformation(Guid idShow, ShowInformation serieLocal)
        {
            // Si la saison est connu.
            if (_serieCollection.HaveSeason(idShow, serieLocal.Saison))
            {
                // Si Episode est non connu.
                if (!_serieCollection.HaveEpisode(idShow, serieLocal.Saison, serieLocal.Episode))
                {
                    int       idSerie = _serieCollection.GetIdSerieTmDb(idShow);
                    TvEpisode episode = await ClientTmDb.GetTvEpisodeAsync(idSerie, serieLocal.Saison, serieLocal.Episode);

                    lock (_objetToLock)
                    {
                        _serieCollection.AddEpisode(idShow, episode, serieLocal);
                    }
                }
            }
            else
            {
                // Cas ou il ne connait pas la saison.
                int      idSerie = _serieCollection.GetIdSerieTmDb(idShow);
                TvSeason saison  = await ClientTmDb.GetTvSeasonAsync(idSerie, serieLocal.Saison);

                await Task.Delay(500);

                TvEpisode episode = await ClientTmDb.GetTvEpisodeAsync(idSerie, serieLocal.Saison, serieLocal.Episode);

                lock (_objetToLock)
                {
                    _serieCollection.AddSaison(idShow, saison, episode, serieLocal);
                }
            }
        }
コード例 #2
0
        /// <summary>
        /// Permet de créer un nouveau ShowModel.
        /// </summary>
        /// <param name="serie"></param>
        /// <returns></returns>
        private async Task <ShowModel> CreateNewShowModel(ShowInformation serie)
        {
            ShowModel showModel = new ShowModel();

            var temp = await ClientTmDb.SearchTvShowAsync(serie.Titre);

            await Task.Delay(500);

            if (temp.Results.Count > 0)
            {
                var tempSerieTrouve = temp.Results[0];

                // Récupération des informations de TmDb.
                TvShow tvShow = await ClientTmDb.GetTvShowAsync(tempSerieTrouve.Id);

                await Task.Delay(500);

                TvSeason saison = await ClientTmDb.GetTvSeasonAsync(tempSerieTrouve.Id, serie.Saison);

                await Task.Delay(500);

                TvEpisode episode = await ClientTmDb.GetTvEpisodeAsync(tempSerieTrouve.Id, serie.Saison, serie.Episode);

                showModel.TvShow = tvShow;
                showModel.TvSeasons.Add(saison);
                showModel.TvEpisodes.Add(episode);
                showModel.ShowInformation.Add(serie);
            }

            return(showModel);
        }