private void VisitFiles(string directoryPath) { foreach (var file in _directoryReader.EnumerateFiles(directoryPath)) { VisitFile(file); var extension = _pathReader.GetExtension(file); if (_defaultRepositoryVisitorFilter.IsSolutionFile(extension)) { VisitSolution(file); } else if (_defaultRepositoryVisitorFilter.IsProjectFile(extension)) { VisitProject(file); } else if (_defaultRepositoryVisitorFilter.IsSourceFile(extension)) { VisitSourceFile(file); } } foreach (var directory in _directoryReader.EnumerateDirectories(directoryPath)) { VisitFiles(directory); } }