Ejemplo n.º 1
0
        protected FileSystemFinderResult MatchFile(string filePath, ProgressReporter progress = null)
        {
            FileSystemFinderResult result = FileSystemFinder.MatchFile(
                filePath,
                nameFilter: Options.NameFilter,
                extensionFilter: Options.ExtensionFilter,
                options: FinderOptions,
                progress: progress);

            if (result != null &&
                Options.FilePropertyFilter?.IsMatch(result) == false)
            {
                return(null);
            }

            return(result);
        }
Ejemplo n.º 2
0
        protected IEnumerable <FileSystemFinderResult> Find(
            string directoryPath,
            SearchContext context,
            INotifyDirectoryChanged notifyDirectoryChanged)
        {
            IEnumerable <FileSystemFinderResult> results = FileSystemFinder.Find(
                directoryPath: directoryPath,
                nameFilter: Options.NameFilter,
                extensionFilter: Options.ExtensionFilter,
                directoryFilter: Options.DirectoryFilter,
                options: FinderOptions,
                progress: context.Progress,
                notifyDirectoryChanged: notifyDirectoryChanged,
                cancellationToken: context.CancellationToken);

            if (Options.FilePropertyFilter != null)
            {
                results = results.Where(Options.FilePropertyFilter.IsMatch);
            }

            return(results);
        }