Ejemplo n.º 1
0
        public override IEnumerable <IGenericTournamentCoupon> GetTournaments(OddsDownloadStage stage = OddsDownloadStage.Tournament)
        {
            var tournamentsReturn = new List <IGenericTournamentCoupon>();

            var webRepository = this.webRepositoryProvider.CreateWebRepository(this.valueOptions.CouponDate);

            var html = webRepository.GetHTML(new[] { this.bookmakerRepository.GetTournamentCouponUrl(this.valueOptions.Tournament, this.valueOptions.OddsSource) },
                                             s => ProgressReporterProvider.Current.ReportProgress(s, ReporterImportance.Low, ReporterAudience.Admin), string.Format("{0} OddsChecker Coupon", this.valueOptions.CouponDate.ToShortDateString()))
                       .First();

            var oddscheckerCompetitions = WebUtils.ParseWebsite <TCompetition>(html, s => ProgressReporterProvider.Current.ReportProgress(s, ReporterImportance.Low, ReporterAudience.Admin))
                                          .Cast <TCompetition>()
                                          .Where(c => c.CompetitionType == this.valueOptions.Tournament.TournamentName)
                                          .ToList();

            foreach (var t in oddscheckerCompetitions)
            {
                var competetion = new GenericTournamentCoupon()
                {
                    TournamentName = t.CompetitionName,
                    TournamentURL  = t.CompetitionURL,
                };

                if (stage != OddsDownloadStage.Tournament)
                {
                    var matchesToAdd = new List <GenericMatchCoupon>();
                    matchesToAdd.AddRange(GetMatches(t.CompetitionURL));
                    competetion.Matches = matchesToAdd;
                }
                tournamentsReturn.Add(competetion);
            }
            return(tournamentsReturn);
        }
Ejemplo n.º 2
0
        public override IEnumerable <IGenericTournamentCoupon> GetTournaments(OddsDownloadStage stage = OddsDownloadStage.Tournament)
        {
            var competitionsReturn = new List <IGenericTournamentCoupon>();

            var webRepository = this.webRepositoryProvider.CreateWebRepository(this.valueOptions.CouponDate);

            var html = webRepository.GetHTML(new[] { this.bookmakerRepository.GetTournamentCouponUrl(this.valueOptions.Tournament, this.valueOptions.OddsSource) },
                                             s => ProgressReporterProvider.Current.ReportProgress(s, ReporterImportance.Medium, ReporterAudience.Admin),
                                             string.Format("{0} BestBetting Coupon", this.valueOptions.CouponDate.ToShortDateString()))
                       .First();

            var bestbettingCompetitions = WebUtils.ParseWebsite <TCompetition>(html, s => ProgressReporterProvider.Current.ReportProgress(s, ReporterImportance.Low, ReporterAudience.Admin))
                                          .Cast <TCompetition>()
                                          .Where(c => c.CompetitionType == this.valueOptions.Tournament.TournamentName)
                                          .ToList();

            foreach (var t in bestbettingCompetitions)
            {
                if (competitionsReturn.Count(tMain => tMain.TournamentName == t.CompetitionName) != 0)
                {
                    continue; //guard against repetition on BestBetting tennis
                }
                var tournament = new GenericTournamentCoupon
                {
                    TournamentName = t.CompetitionName,
                    TournamentURL  = t.CompetitionURL,
                };

                if (stage != OddsDownloadStage.Tournament)
                {
                    var matchesToAdd = new List <GenericMatchCoupon>();
                    matchesToAdd.AddRange(GetMatches(t.CompetitionURL));
                    tournament.Matches = matchesToAdd;
                }
                competitionsReturn.Add(tournament);
            }
            return(competitionsReturn);
        }
 public IEnumerable<IGenericTournamentCoupon> GetTournaments(OddsDownloadStage stage = OddsDownloadStage.Tournament)
 {
   return this.spreadsheetData.GetTournaments(stage);
 }
        public override async Task <IEnumerable <IGenericTournamentCoupon> > GetTournaments(OddsDownloadStage stage = OddsDownloadStage.Tournament)
        {
            var tournamentsReturn = new List <IGenericTournamentCoupon>();

            var webRepository =
                this.webRepositoryProvider
                .CreateWebRepository(this.valueOptions.CouponDate);

            var html = await webRepository.GetHTML(this.bookmakerRepository.GetTournamentCouponUrl(this.valueOptions.Tournament, this.valueOptions.OddsSource));

            var oddscheckerCompetitions =
                WebUtils.ParseWebsite <TCompetition>(html, s => { })
                .Cast <TCompetition>()
                .Where(c => c.CompetitionType == this.valueOptions.Tournament.TournamentName)
                .ToList();

            foreach (var t in oddscheckerCompetitions)
            {
                var competetion = new GenericTournamentCoupon()
                {
                    TournamentName = t.CompetitionName,
                    TournamentURL  = t.CompetitionURL,
                };

                if (stage != OddsDownloadStage.Tournament)
                {
                    var matchesToAdd = new List <GenericMatchCoupon>();
                    matchesToAdd.AddRange(await GetMatches(t.CompetitionURL));
                    competetion.Matches = matchesToAdd;
                }
                tournamentsReturn.Add(competetion);
            }
            return(tournamentsReturn);
        }
Ejemplo n.º 5
0
 public abstract IEnumerable <IGenericTournamentCoupon> GetTournaments(OddsDownloadStage stage = OddsDownloadStage.Tournament);
 public abstract Task<IEnumerable<IGenericTournamentCoupon>> GetTournaments(OddsDownloadStage stage = OddsDownloadStage.Tournament);
Ejemplo n.º 7
0
 public IEnumerable <IGenericTournamentCoupon> GetTournaments(OddsDownloadStage stage = OddsDownloadStage.Tournament)
 {
     return(this.spreadsheetData.GetTournaments(stage));
 }