/*
        private ListCollectionView GetView()
        {
            return (ListCollectionView)CollectionViewSource.GetDefaultView(DisplaySearchResults);
        }
        */
        private void Window_Loaded(object sender, RoutedEventArgs e)
        {
            var task = new DescriptiveTask(delegate
            {
                SearchResults = ThreadSafeObservableCollection<SearchResult>.DeserializeFromList(Paths.CombineBaseDirectory(JournalCacheName), _uiSynchronizationContext);
            },
            _tokenSource.Token,
            "Loading cache");

            if (File.Exists(Paths.CombineBaseDirectory(JournalCacheName)))
            {
                AddTask(task);

                AddTask(delegate
                {
                    task.Wait();

                    if (SearchResults.Count == 0)
                    {
                        RefreshUsnJournal();
                    }
                }, "Refreshing USN journal");
            }
            else
            {
                AddTask(RefreshUsnJournal, "Refreshing USN journal");
            }
        }
 // TODO: Move to class
 private void AddTask(DescriptiveTask task)
 {
     _tasks.Add(task);
 }