public void Init() { _domainEventDispatcher.Send(new OnUserStartedGame()); _reels.Suffle(new System.Random()); _domainEventDispatcher.Send(new OnUserStartedNextPlay(_reels.Get())); IsPlaying = true; }
public async Task Save(Learner aggregate) { if (aggregate.IsNew) { await _learnerDataRepository.Add(aggregate.GetModel()); } else { await _learnerDataRepository.Update(aggregate.GetModel()); } foreach (dynamic domainEvent in aggregate.FlushEvents()) { await _domainEventDispatcher.Send(domainEvent); } }
public async Task Handle(EarningsResilienceApplicationsCheckCommand command, CancellationToken cancellationToken = default) { var applications = await _applicationDomainRepository.FindIncentiveApplicationsWithoutEarningsCalculations(); var tasks = new List <Task>(); foreach (var application in applications) { application.Resubmit(); foreach (dynamic domainEvent in application.FlushEvents()) { tasks.Add(_domainEventDispatcher.Send(domainEvent, cancellationToken)); } } await Task.WhenAll(tasks); }
public async Task Save(Domain.ApprenticeshipIncentives.ApprenticeshipIncentive aggregate) { if (aggregate.IsNew) { await _apprenticeshipIncentiveDataRepository.Add(aggregate.GetModel()); } else if (aggregate.IsDeleted) { await _apprenticeshipIncentiveDataRepository.Delete(aggregate.GetModel()); } else { await _apprenticeshipIncentiveDataRepository.Update(aggregate.GetModel()); } foreach (dynamic domainEvent in aggregate.FlushEvents()) { await _domainEventDispatcher.Send(domainEvent); } }