Esempio n. 1
0
        private void DownloadUncachedImplementations(IEnumerable <ImplementationSelection> selectedImplementations)
        {
            var selections = new Selections(selectedImplementations);
            var uncachedImplementations = SelectionsManager.GetUncachedSelections(selections).ToList();

            // Do not waste time on Fetcher subsystem if nothing is missing from cache
            if (uncachedImplementations.Count == 0)
            {
                return;
            }

            // Only show implementations in the UI that need to be downloaded
            Handler.ShowSelections(new Selections(uncachedImplementations), FeedManager);

            try
            {
                var toDownload = SelectionsManager.GetImplementations(uncachedImplementations);
                Fetcher.Fetch(toDownload);
            }
            #region Error handling
            catch
            {
                // Suppress any left-over errors if the user canceled anyway
                Handler.CancellationToken.ThrowIfCancellationRequested();
                throw;
            }
            #endregion
        }
Esempio n. 2
0
    private void DownloadUncachedImplementations(IEnumerable <ImplementationSelection> implementations)
    {
        var uncachedImplementations = SelectionsManager.GetUncachedSelections(new Selections(implementations)).ToList();

        if (uncachedImplementations.Count == 0)
        {
            return;
        }

        Handler.ShowSelections(new Selections(uncachedImplementations), FeedManager);
        FetchAll(SelectionsManager.GetImplementations(uncachedImplementations));
    }