Beispiel #1
0
 public static void Visit(IFileSystemVisitor visitor, string path, bool recurse)
 {
     if (Directory.Exists(path))
         Visit(visitor, new DirectoryInfo(path), recurse);
     else if (File.Exists(path))
         Visit(visitor, new FileInfo(path));
 }
Beispiel #2
0
        public static void Visit(IFileSystemVisitor visitor, DirectoryInfo folder, bool recurse)
        {
            if (Visit(visitor, folder))
            {
                FileInfo[]      fileitems;
                DirectoryInfo[] diritems;
                //try
                //{
                fileitems = folder.EnumerateFiles().ToArray();
                diritems  = (recurse) ? folder.EnumerateDirectories().ToArray() : null;
                //}
                //catch (Exception ex)
                //{
                //    visitor.OnException(folder, ex);
                //    fileitems = new FileInfo[0];
                //    diritems = new DirectoryInfo[0];
                //}

                foreach (var file in fileitems)
                {
                    Visit(visitor, file);
                }

                Visited(visitor, folder);

                if (recurse)
                {
                    foreach (var subfolder in diritems)
                    {
                        Visit(visitor, subfolder, recurse);
                    }
                }
            }
        }
Beispiel #3
0
        public static void Visit(IFileSystemVisitor visitor, DirectoryInfo folder, bool recurse)
        {
            if (Visit(visitor, folder))
            {
                FileInfo[] fileitems;
                DirectoryInfo[] diritems;
                //try
                //{
                    fileitems = folder.EnumerateFiles().ToArray();
                    diritems = (recurse) ? folder.EnumerateDirectories().ToArray() : null;
                //}
                //catch (Exception ex)
                //{
                //    visitor.OnException(folder, ex);
                //    fileitems = new FileInfo[0];
                //    diritems = new DirectoryInfo[0];
                //}

                foreach (var file in fileitems)
                {
                    Visit(visitor, file);
                }

                Visited(visitor, folder);

                if (recurse)
                {
                    foreach (var subfolder in diritems)
                    {
                        Visit(visitor, subfolder, recurse);
                    }
                }
            }
        }
 public void Init()
 {
     _fileSystemVisitor                          = new FileSystemVisitor("D:\\", new FileSearcherMock());
     _fileSystemVisitor.FileFinded              += _fileSystemVisitor_FileFinded;
     _fileSystemVisitor.DirectoryFinded         += _fileSystemVisitor_DirectoryFinded;
     _fileSystemVisitor.FilteredFileFinded      += _fileSystemVisitor_FilteredFileFinded;
     _fileSystemVisitor.FilteredDirectoryFinded += _fileSystemVisitor_FilteredDirectoryFinded;
 }
Beispiel #5
0
 public static void Visit(IFileSystemVisitor visitor, string path, bool recurse)
 {
     if (Directory.Exists(path))
     {
         Visit(visitor, new DirectoryInfo(path), recurse);
     }
     else if (File.Exists(path))
     {
         Visit(visitor, new FileInfo(path));
     }
 }
Beispiel #6
0
 public Subscriber(IFileSystemVisitor fileSystemVisitor, ILogger logger)
 {
     fileSystemVisitor.VisitingStarted          += OnVisitorEvent;
     fileSystemVisitor.FileFounded              += OnVisitorEvent;
     fileSystemVisitor.ErrorOccurred            += OnVisitorEvent;
     fileSystemVisitor.DirectoryFounded         += OnVisitorEvent;
     fileSystemVisitor.FilteredDirectoryFounded += OnVisitorEvent;
     fileSystemVisitor.FilteredFileFounded      += OnVisitorEvent;
     fileSystemVisitor.VisitingFinished         += OnVisitorEvent;
     _logger = logger;
 }
        public void Setup()
        {
            Directory.CreateDirectory(testFolderPath);

            string[] testDirs =
            {
                MakePath(testFolderPath, "Test"),
                MakePath(testFolderPath, "Test", "dir1"),
                MakePath(testFolderPath, "Test", "dir1",
                         "dir2"),
                MakePath(testFolderPath, "Test", "dir1",
                         "dir2",         "dir3")
            };

            foreach (string dir in testDirs)
            {
                Directory.CreateDirectory(dir);
            }

            string[] testFiles =
            {
                MakePath(testFolderPath,       "Test", "dir1",
                         "file1.txt"),
                MakePath(testFolderPath,       "Test", "dir1",
                         "file2.txt"),
                MakePath(testFolderPath,       "Test", "dir1",
                         "dir2",               "file3.txt"),
                MakePath(testFolderPath,       "Test", "dir1",
                         "dir2",               "file4.txt")
            };
            foreach (string file in testFiles)
            {
                FileStream str = File.Create(file);
                str.Close();
            }
            //
            IRepository moqRepository = new RepositoryMock();

            fsVisitor = new FileSystemVisitor(moqRepository, Path.Combine(
                                                  testFolderPath, "Test"));
        }
Beispiel #8
0
 public static void Visit(IFileSystemVisitor visitor, FileInfo file)
 {
     visitor.Visit(file);
 }
Beispiel #9
0
 public static bool Visit(IFileSystemVisitor visitor, DirectoryInfo folder)
 {
     return visitor.Visit(folder);
 }
Beispiel #10
0
 public static void Visited(IFileSystemVisitor visitor, DirectoryInfo folder)
 {
     visitor.Visited(folder);
 }
Beispiel #11
0
 public static bool Visit(IFileSystemVisitor visitor, DirectoryInfo folder)
 {
     return(visitor.Visit(folder));
 }
Beispiel #12
0
 public Application(IFileSystemVisitor fileSystemVisitor)
 {
     _fileSystemVisitor = fileSystemVisitor;
 }
Beispiel #13
0
 public void Accept(IFileSystemVisitor visitor)
 {
     visitor.Visit((IDirectory)this);
 }
Beispiel #14
0
 public void Accept(IFileSystemVisitor visitor)
 {
     return;
 }
Beispiel #15
0
 public ApplicationUT(IFileSystemVisitor fileSystemVisitor) : base(fileSystemVisitor)
 {
 }
Beispiel #16
0
 public static void Visited(IFileSystemVisitor visitor, DirectoryInfo folder)
 {
     visitor.Visited(folder);
 }
Beispiel #17
0
 public static void Visit(IFileSystemVisitor visitor, FileInfo file)
 {
     visitor.Visit(file);
 }
Beispiel #18
0
 public Operation(IFileSystemVisitor fileSystemVisitor, ILogger logger)
 {
     _fileSystemVisitor = fileSystemVisitor;
     _logger            = logger;
 }
Beispiel #19
0
 public void Accept(IFileSystemVisitor visitor)
 {
     visitor.Visit(this);
 }