Exemplo n.º 1
0
        public async Task AutoComplete(Dictionary <MediaAgent, PlexMediaItemRow> agentsByPlexId)
        {
            var incompleteRequests = await _requestService.GetIncompleteRequests();

            foreach (var incompleteRequest in incompleteRequests)
            {
                var allAgents = incompleteRequest.MovieRequestAgents.Select(x => new MediaAgent(x.AgentType, x.AgentSourceId));

                foreach (var requestAgent in allAgents)
                {
                    if (!agentsByPlexId.TryGetValue(requestAgent, out var plexMediaItem))
                    {
                        continue;
                    }

                    incompleteRequest.PlexMediaItem.MediaUri = plexMediaItem.MediaUri;
                    incompleteRequest.RequestStatus          = RequestStatuses.Completed;

                    break;
                }
            }

            await _unitOfWork.CommitAsync();
        }
Exemplo n.º 2
0
        private void GivenNoMatchingRequests()
        {
            _movieRequests = new MovieRequestRowBuilder().CreateMany();

            _requestService.GetIncompleteRequests().Returns(_movieRequests);
        }