public void Init() { _statisticGenerator = InitializeStatisticGeneratorWithTwoCalculators(); _events = InitializeEvents(); _eventRepository.AddRangeOfEvents(_events); _trackerRepository.SaveTracker(_tracker); }
public IBasicStatistics AnaliseRolls(IRouletteRolls rouletteRolls) { var statistic = new StatisticGenerator().Analise(rouletteRolls); return(statistic); }
/// <summary> /// Asynchronously generates a component from a report definition and filter /// </summary> /// <param name="definition">The component definition</param> /// <param name="sectionType">The report section type</param> /// <param name="filter">The report filter</param> /// <returns>The report component generated</returns> public override async Task <IReportComponent> GenerateAsync ( IReportComponentDefinition definition, ReportSectionType sectionType, ReportFilter filter ) { Validate.IsNotNull(definition); Validate.IsNotNull(filter); var graphicDefinition = definition.As <GraphicDefinition>(); var graphic = new Graphic ( graphicDefinition ); if (graphicDefinition.OverlayStatistics.Any()) { var statisticGenerator = new StatisticGenerator(); var statisticDefinitions = graphicDefinition.OverlayStatistics.SelectMany ( pair => pair.Value.Select ( item => item ) ); var statisticTasks = new List <Task <IReportComponent> >(); foreach (var item in statisticDefinitions) { statisticTasks.Add ( statisticGenerator.GenerateAsync ( item, sectionType, filter ) ); } await Task.WhenAll(statisticTasks).ConfigureAwait ( false ); var taskIndex = 0; foreach (var item in graphicDefinition.OverlayStatistics) { var statisticList = new List <Statistic>(); foreach (var statisticDefinition in item.Value) { var task = statisticTasks.ElementAt ( taskIndex ); var statistic = await task.ConfigureAwait(false) as Statistic; statisticList.Add(statistic); taskIndex++; } graphic.OverlayStatistics.Add ( item.Key, statisticList ); } } return(graphic); }
public static StatisticGenerator GetStatisticGenerator() { return(statisticGenerator ?? (statisticGenerator = GameObject.FindWithTag(Tags.MAIN_CONTROLLER).GetComponent <StatisticGenerator>())); }