public bool AddDirectory(string path)
 {
     if (!directories.Contains(path))
     {
         unzipAllZipFiles(path);
         // Создаем поисковик, который найдет все испоняемые файлы
         AVFileFinder fileFinder = new AVFileFinder(path);
         foreach (var observer in observers)
         {
             fileFinder.Subscribe(observer);
         }
         fileFinder.StartSearch();
         // Настраиваем отслеживание для данной папки
         AddDirectoryWithoutScan(path);
         // Выполняем поиск всех папок внутри данной
         string[] dirs = Directory.GetDirectories(path, "*", SearchOption.AllDirectories);
         // И настраиваем отслеживание на них
         foreach (string dir in dirs)
         {
             AddDirectoryWithoutScan(dir);
         }
         return(true);
     }
     return(false);
 }
Example #2
0
        private void check(string path)
        {
            AVFileFinder     finder  = new AVFileFinder(path);
            AVScanObjFactory factory = new AVScanObjFactory();
            AVScanner        scanner = new AVScanner();

            scanner.addBase(entryList);
            ResultObserver results = new ResultObserver(lbResultCheck);

            factory.Subscribe(finder);
            factory.Subscribe(scanner);
            results.Subscribe(scanner);
            finder.StartSearch();
        }
 public void Subscribe(AVFileFinder finder)
 {
     unsubscription = finder.Subscribe(this);
 }