public async Task <ParticipationId> SetAsync(ParticipationSessionAggregate aggregate) { var isCached = await _cache.SetCache(ToModel(aggregate), aggregate.Id.Value, _settings.ParticipationSecondDuration); return(aggregate.Id); }
private async Task PrepareParticipation(ParticipationSessionAggregate participation) { var language = await _readParticipationRepository.GetLanguageByParticipation(participation.Id.Value); if (language is null) { throw new NotFoundException(participation.Id.Value.ToString(), "Participation Language"); } _prepareParticipationExecutionService.Dispatch( new PrepareParticipationExecutionDto(participation.Id.Value, language.Name)); }
private static ParticipationSessionAggregate ToAggregate(ParticipationAggregate participation, IList <TestNavigation> tests) => ParticipationSessionAggregate.Restore( participation.Id, ToTeamSessionEntity(participation.Team), participation.TournamentEntity, ToStepSessionEntity(participation.StepEntity, tests), participation.StartDate, participation.EndDate, participation.CalculatedScore, false, participation.Functions.ToList() );
private ParticipationSession ToModel(ParticipationSessionAggregate aggregate) => new()