/// <summary> /// Initialize a new instance of DirectorySearch class. /// </summary> /// <param name="folder">The start search directory.</param> /// <param name="pattern">The search pattern.</param> /// <param name="tokenSource">Instance of CancellationTokenSource for search process cancellation possibility.</param> /// <param name="handlerOption">Specifies where DirectoriesFound event handlers are executed.</param> /// <param name="suppressOperationCanceledException">Determines whether necessary suppress OperationCanceledException if it possible.</param> /// <exception cref="ArgumentException"></exception> /// <exception cref="ArgumentNullException"></exception> public DirectorySearcher(string folder, string pattern, CancellationTokenSource tokenSource, ExecuteHandlers handlerOption, bool suppressOperationCanceledException) { CheckFolder(folder); CheckPattern(pattern); CheckTokenSource(tokenSource); searcher = new DirectoryCancellationPatternSearcher(folder, pattern, tokenSource.Token, handlerOption, suppressOperationCanceledException); this.tokenSource = tokenSource; }
/// <summary> /// Initialize a new instance of DirectorySearch class. /// </summary> /// <param name="folder">The start search directory.</param> /// <param name="isValid">The delegate that determines algorithm of directory selection.</param> /// <param name="tokenSource">Instance of CancellationTokenSource for search process cancellation possibility.</param> /// <param name="handlerOption">Specifies where DirectoriesFound event handlers are executed.</param> /// <param name="suppressOperationCanceledException">Determines whether necessary suppress OperationCanceledException if it possible.</param> /// <exception cref="ArgumentException"></exception> /// <exception cref="ArgumentNullException"></exception> public DirectorySearcher(string folder, Func <DirectoryInfo, bool> isValid, CancellationTokenSource tokenSource, ExecuteHandlers handlerOption, bool suppressOperationCanceledException) { CheckFolder(folder); CheckDelegate(isValid); CheckTokenSource(tokenSource); searcher = new DirectoryCancellationDelegateSearcher(folder, isValid, tokenSource.Token, handlerOption, suppressOperationCanceledException); this.tokenSource = tokenSource; }