Beispiel #1
0
        private int GetDefaultOrder(IChapterProvider provider)
        {
            var hasOrder = provider as IHasOrder;

            if (hasOrder != null)
            {
                return(hasOrder.Order);
            }

            return(0);
        }
Beispiel #2
0
        private int GetConfiguredOrder(IChapterProvider provider)
        {
            // See if there's a user-defined order
            var index = Array.IndexOf(_config.Configuration.ChapterOptions.FetcherOrder, provider.Name);

            if (index != -1)
            {
                return(index);
            }

            // Not configured. Just return some high number to put it at the end.
            return(100);
        }
Beispiel #3
0
        private async Task <IEnumerable <RemoteChapterResult> > Search(ChapterSearchRequest request,
                                                                       IChapterProvider provider,
                                                                       CancellationToken cancellationToken)
        {
            var searchResults = await provider.Search(request, cancellationToken).ConfigureAwait(false);

            foreach (var result in searchResults)
            {
                result.Id           = GetProviderId(provider.Name) + "_" + result.Id;
                result.ProviderName = provider.Name;
            }

            return(searchResults);
        }
Beispiel #4
0
        private int GetDefaultOrder(IChapterProvider provider)
        {
            var hasOrder = provider as IHasOrder;

            if (hasOrder != null)
            {
                return hasOrder.Order;
            }

            return 0;
        }
Beispiel #5
0
        private int GetConfiguredOrder(IChapterProvider provider)
        {
            var options = GetConfiguration();
            
            // See if there's a user-defined order
            var index = Array.IndexOf(options.FetcherOrder, provider.Name);

            if (index != -1)
            {
                return index;
            }

            // Not configured. Just return some high number to put it at the end.
            return 100;
        }
Beispiel #6
0
        private async Task<List<RemoteChapterResult>> Search(ChapterSearchRequest request,
            IChapterProvider provider,
            CancellationToken cancellationToken)
        {
            var searchResults = await provider.Search(request, cancellationToken).ConfigureAwait(false);

            var list = searchResults.ToList();

            foreach (var result in list)
            {
                result.Id = GetProviderId(provider.Name) + "_" + result.Id;
                result.ProviderName = provider.Name;
            }

            return list;
        }