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); }
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); }