Beispiel #1
0
        void CreateWatcher(string rootDirName)
        {
            ModelUpdater?.Dispose();
            ModelUpdater = new ModelUpdater(this);

            Watcher.Path         = rootDirName;
            Watcher.NotifyFilter = NotifyFilters.FileName | NotifyFilters.DirectoryName | NotifyFilters.Size;

            Watcher.Filter = "*.*";

            Watcher.Changed += OnChanged;
            Watcher.Created += OnCreated;
            Watcher.Deleted += OnDeleted;
            Watcher.Renamed += OnRenamed;

            Watcher.IncludeSubdirectories = true;

            Watcher.EnableRaisingEvents = true;
        }
Beispiel #2
0
 void OnChanged(object sender, FileSystemEventArgs e)
 {
     ModelUpdater.EnqueueTask(new ChangedTask(e.FullPath, e.Name));
 }
Beispiel #3
0
 public void Dispose()
 {
     ServiceContainer?.Dispose();
     Watcher?.Dispose();
     ModelUpdater?.Dispose();
 }
Beispiel #4
0
 void OnRenamed(object sender, RenamedEventArgs e)
 {
     ModelUpdater.EnqueueTask(new RenamedTask(e.OldFullPath, e.FullPath, e.Name, e.OldName));
 }