Пример #1
0
 private void FileSystemSnapshotManagerOnFilesChanged(object sender, FilesChangedEventArgs filesChangedEventArgs)
 {
     _taskQueue.Enqueue(UpdateFileContentsTaskId, cancellationToken => {
         using (new TaskQueueGuard(this)) {
             UpdateFileContentsLongTask(filesChangedEventArgs, cancellationToken);
         }
     });
 }
Пример #2
0
        private void PersistanceModelOnFilesChanged(object sender, FilesChangedEventArgs filesChangedEventArgs)
        {
            Files.Clear();

            foreach (var file in filesChangedEventArgs.Files)
            {
                Files.Add(new FileViewModel(file.Name, _persistanceModel, _tagsModel));
            }
        }
Пример #3
0
        private void UpdateFileContentsLongTask(FilesChangedEventArgs args, CancellationToken cancellationToken)
        {
            Invariants.Assert(_inTaskQueueTask);

            UpdateFileDatabase(args.FileSystemSnapshot, options => {
                // We only allow incremental updates if the last update was successfully completed
                // and if the file system snapshot version we are based on is the same as the
                // new file system snapshot we are processing
                if (args.FileSystemSnapshot.Version == _currentFileSystemSnapshotVersion &&
                    options.PreviousUpdateCompleted)
                {
                    return(CreateWithModifiedFiles(args.FileSystemSnapshot, args.ChangedFiles, options, cancellationToken));
                }
                else
                {
                    Logger.LogInfo($"Starting a full database update: " +
                                   $"CurrentSnapshotVersion={_currentFileSystemSnapshotVersion}, " +
                                   $"PreviousUpdateCompleted={options.PreviousUpdateCompleted}, " +
                                   $"SnapshotVersion={args.FileSystemSnapshot.Version}, " +
                                   $"ChangesFiles={args.ChangedFiles?.Count ?? -1}.");
                    return(CreateFullScan(args.FileSystemSnapshot, options, cancellationToken));
                }
            });
        }
Пример #4
0
 private void FileSystemProcessorOnFilesChanged(object sender, FilesChangedEventArgs filesChangedEventArgs)
 {
     _taskQueue.Enqueue(
         new TaskId("FileSystemProcessorOnFilesChanged"),
         () => UpdateFileContents(filesChangedEventArgs.ChangedFiles));
 }
Пример #5
0
 private void FileSystemProcessorOnFilesChanged(object sender, FilesChangedEventArgs filesChangedEventArgs)
 {
     _customThreadPool.RunAsync(() => UpdateFileContents(filesChangedEventArgs.ChangedFiles));
 }
Пример #6
0
 private void FileSystemProcessorOnFilesChanged(object sender, FilesChangedEventArgs filesChangedEventArgs)
 {
     _taskQueue.Enqueue(UpdateFileContentsTaskId, cancellationToken => {
         UpdateFileContents(filesChangedEventArgs.ChangedFiles);
     });
 }
Пример #7
0
 void monitor_Triggered(object sender, FilesChangedEventArgs e)
 {
     Singleton <RotorsWorkFlowStarter> .UniqueInstance.StartRotorsWorkFlow(e.FilesChanged);
 }