source: ChapterX.Application/ReadingList/Commands/UpdateHandler.cs@ b373fea

main
Last change on this file since b373fea was 877c13c, checked in by kikisrbinoska <srbinoskakristina07@…>, 4 months ago

Added files

  • Property mode set to 100644
File size: 1.2 KB
Line 
1using ChapterX.Domain.Repositories;
2using MediatR;
3using Microsoft.Extensions.Logging;
4
5namespace ChapterX.Application.ReadingList.Commands
6{
7 public class UpdateHandler : IRequestHandler<UpdateRequest, UpdateResponse>
8 {
9 private readonly IReadingListRepository _readingListRepository;
10 private readonly ILogger<UpdateHandler> _logger;
11
12 public UpdateHandler(IReadingListRepository readingListRepository, ILogger<UpdateHandler> logger)
13 {
14 _readingListRepository = readingListRepository;
15 _logger = logger;
16 }
17
18 public async Task<UpdateResponse> Handle(UpdateRequest request, CancellationToken cancellationToken)
19 {
20 var readingList = await _readingListRepository.GetByIdAsync(request.Id, cancellationToken);
21 if (readingList is null)
22 return new UpdateResponse(false);
23
24 readingList.Name = request.Name;
25 readingList.Content = request.Content;
26 readingList.IsPublic = request.IsPublic;
27
28 await _readingListRepository.UpdateAsync(readingList, cancellationToken);
29
30 return new UpdateResponse(true);
31 }
32 }
33}
Note: See TracBrowser for help on using the repository browser.