private void HandleFolderEvents(IFSEvent e) { var movedEvent = e as IFSMovedEvent; FolderEvent folderEvent; if (movedEvent != null) { folderEvent = new FolderMovedEvent( this.fsFactory.CreateDirectoryInfo(movedEvent.OldPath), this.fsFactory.CreateDirectoryInfo(movedEvent.LocalPath), null, null, this) { Local = MetaDataChangeType.MOVED }; } else { folderEvent = new FolderEvent(this.fsFactory.CreateDirectoryInfo(e.LocalPath), null, this); switch (e.Type) { case WatcherChangeTypes.Created: folderEvent.Local = MetaDataChangeType.CREATED; break; case WatcherChangeTypes.Changed: folderEvent.Local = MetaDataChangeType.CHANGED; break; case WatcherChangeTypes.Deleted: folderEvent.Local = MetaDataChangeType.DELETED; break; default: // This should never ever happen return; } } Queue.AddEvent(folderEvent); }
/// <summary> /// Handles the FSEvents of files and creates FileEvents. /// </summary> /// <param name='e'> /// The FSEvent. /// </param> private void HandleFileEvents(IFSEvent e) { var movedEvent = e as IFSMovedEvent; if (movedEvent != null) { var oldfile = this.fsFactory.CreateFileInfo(movedEvent.OldPath); var newfile = this.fsFactory.CreateFileInfo(movedEvent.LocalPath); var newEvent = new FileMovedEvent( oldfile, newfile, null, null); Logger.Debug("Adding Event: " + newEvent); Queue.AddEvent(newEvent); } else { var file = this.fsFactory.CreateFileInfo(e.LocalPath); var newEvent = new FileEvent(file, null); switch (e.Type) { case WatcherChangeTypes.Created: newEvent.Local = MetaDataChangeType.CREATED; newEvent.LocalContent = ContentChangeType.CREATED; break; case WatcherChangeTypes.Changed: newEvent.LocalContent = ContentChangeType.CHANGED; break; case WatcherChangeTypes.Deleted: newEvent.Local = MetaDataChangeType.DELETED; newEvent.LocalContent = ContentChangeType.DELETED; break; } Logger.Debug("Adding Event: " + newEvent); Queue.AddEvent(newEvent); } }
/// <summary> /// Handles the FSEvents of files and creates FileEvents. /// </summary> /// <param name='e'> /// The FSEvent. /// </param> private void HandleFileEvents(IFSEvent e) { var movedEvent = e as IFSMovedEvent; if (movedEvent != null) { var oldfile = this.fsFactory.CreateFileInfo(movedEvent.OldPath); var newfile = this.fsFactory.CreateFileInfo(movedEvent.LocalPath); var newEvent = new FileMovedEvent( oldfile, newfile, null, null); Queue.AddEvent(newEvent); } else { var file = this.fsFactory.CreateFileInfo(e.LocalPath); var newEvent = new FileEvent(file, null); switch (e.Type) { case WatcherChangeTypes.Created: newEvent.Local = MetaDataChangeType.CREATED; newEvent.LocalContent = ContentChangeType.CREATED; break; case WatcherChangeTypes.Changed: newEvent.LocalContent = ContentChangeType.CHANGED; break; case WatcherChangeTypes.Deleted: newEvent.Local = MetaDataChangeType.DELETED; newEvent.LocalContent = ContentChangeType.DELETED; break; } Queue.AddEvent(newEvent); } }