public IObservable <IEnumerable <IFileReference> > SearchFileReferences(string searchTerm, CancellationToken token)
        {
            return(Observable.Defer <IEnumerable <IFileReference> >(async() =>
            {
                var searchResult = await _searchResultCollection.AddOrUpdate
                                   (
                    searchTerm,
                    () => _graphQLService.GetFileReferencesAsync(searchTerm, token)
                                   );

                var fileReferences = FileReferencesFactory.Create(searchResult.JsonResult);

                return Observable.Return <IEnumerable <IFileReference> >(fileReferences);
            }));
        }