public async Task <ActionResult <GetManyPlexServerLibraryQueryResult> > GetLibraries() { var query = new GetManyPlexServerLibraryQuery(); var result = await _mediator.Send(query); return(result.ToOkIfValidResult()); }
public async Task <ValidationContext <GetManyPlexServerLibraryQueryResult> > Handle(GetManyPlexServerLibraryQuery request, CancellationToken cancellationToken) { var result = new ValidationContext <GetManyPlexServerLibraryQueryResult>(); var server = await _plexService.GetServer(); if (server == null) { result.AddError("No admin server found", "Cannot sync libraries as no admin server has been found"); return(result); } result.Data = new GetManyPlexServerLibraryQueryResult { Libraries = _mapper.Map <List <PlexServerLibraryDetailModel> >(server.PlexLibraries) }; return(result); }