public FilterAggregator(
IgnoredFileNamesFilter fileNamesFilter,
IgnoredFolderNameFilter folderNamesFilter,
InvalidFolderNameFilter invalidFolderNamesFilter,
IgnoredFoldersFilter ignoredFolderFilter,
SymlinkFilter symlinkFilter = null)
{
if (fileNamesFilter == null) {
throw new ArgumentNullException("fileNamesFilter");
}
if (folderNamesFilter == null) {
throw new ArgumentNullException("folderNamesFilter");
}
if (invalidFolderNamesFilter == null) {
throw new ArgumentNullException("invalidFolderNamesFilter");
}
if (ignoredFolderFilter == null) {
throw new ArgumentNullException("ignoredFolderFilter");
}
this.FileNamesFilter = fileNamesFilter;
this.FolderNamesFilter = folderNamesFilter;
this.InvalidFolderNamesFilter = invalidFolderNamesFilter;
this.IgnoredFolderFilter = ignoredFolderFilter;
this.SymlinkFilter = symlinkFilter ?? new SymlinkFilter();
}