public async Task <NotificationResultDto> Handle(UpdateBroadcastersCommand command, CancellationToken cancellationToken) { try { if (!command.Valid()) { return(_handlerResponse.Response(command.IsValid, command.Notifications)); } var broadcasterEntities = await _broadcastersRepository.GetByIdAsync(command.Id); if (broadcasterEntities != null) { var broadcaster = await _broadcastersRepository.GetByNameAsync(command.BrodcastersName); if (broadcaster != null) { broadcasterEntities.NameUnavailable(); } if (broadcasterEntities.IsValid) { broadcasterEntities.Update(command.BrodcastersName); if (broadcasterEntities.IsValid) { await _broadcastersRepository.UpdateAsync(broadcasterEntities); } } AddNotifications(broadcasterEntities); } else { var broadcasters = new Broadcasters(); broadcasters.NotBrodcastersForUpdate(); AddNotifications(broadcasters); } } catch (Exception ex) { AddNotification("500", ex.Message); } return(_handlerResponse.Response(IsValid, Notifications)); }
public async Task <IActionResult> Put([FromBody] UpdateBroadcastersCommand command) { var notificationResult = await _broadcastersAppService.UpdatedAsync(command); return(Response(notificationResult)); }
public async Task <NotificationResultDto> UpdatedAsync(UpdateBroadcastersCommand command) => await _mediator.Send(command);