Skip to content

Latest commit

 

History

History
14 lines (12 loc) · 1.77 KB

File metadata and controls

14 lines (12 loc) · 1.77 KB

FileWatcherTestProject

Написать .NET Standard 2.0-compatible file watcher для hosted environment (т.е. path — relative относительно корня приложения), который принимает на вход path, filter и делегат вида Action<string Path, string FileName>.

Ключевые требования:

  • Делегат должен вызываться каждый раз, когда файл, лежащий в path и соответствующий фильтру, создали, удалили, изменили, переименовали, а также удалили саму директорию из path или создали её заново (например, мы создали file watcher для path = "App_Data/Files", filter = "*.txt"; потом директорию App_Data/Files удалили целиком и создали заново — watcher должен вызвать делегат на эти события).
  • Изменения в файлах должны отслеживаться не только во время жизни приложения, но и когда оно не работает. То есть если приложение остановили, потом поменяли какие-то файлы, подпадающие под фильтр, потом запустили приложение заново — после запуска вотчер должен вызвать делегат для всех изменённых за время остановки приложения файлов.
  • Вотчер должен поддерживать параллельную работу из разных потоков над одними и теми же файлами.