示例#1
0
        public async Task <Unit> Handle(CloseConferenceRequest request, CancellationToken cancellationToken)
        {
            var conferenceId = request.ConferenceId;

            _logger.LogDebug("Attempt to close conference {conferenceId}", conferenceId);
            if (await _openConferenceRepository.Delete(conferenceId))
            {
                await _mediator.Publish(new ConferenceClosedNotification(conferenceId));

                await _mediator.Publish(new FinalizeConferenceCleanupNotification(conferenceId));

                _logger.LogDebug("Conference was closed successfully");
            }
            else
            {
                _logger.LogDebug("Conference was already closed");
            }

            return(Unit.Value);
        }