Beispiel #1
0
        public QueryEvaluator(
            IFileWatcherFactory fileWatcherFactory,
            ILazyThumbnailFactory thumbnailFactory,
            IEntityManager entities,
            IExecutableQuery query)
        {
            _entities         = entities;
            _fileWatcher      = fileWatcherFactory.Create();
            _thumbnailFactory = thumbnailFactory;
            Query             = query;

            // initialize internal structures
            Cancellation = new CancellationTokenSource();
            Comparer     = new EntityViewComparer(Query.Comparer);
            _backBuffer  = new List <Group>();
            _frontBuffer = new List <Group>();

            // register event handlers
            _fileWatcher.Renamed += FileWatcherOnRenamed;
            _fileWatcher.Deleted += FileWatcherOnDeleted;
            _fileWatcher.Created += FileWatcherOnCreated;
            _entities.Deleted    += EntitiesOnDeleted;
            _entities.Changed    += EntitiesOnChanged;
            _entities.Moved      += EntitiesOnMoved;
        }
Beispiel #2
0
 public QueryEvaluatorFactory(IFileWatcherFactory fileWatcherFactory, ILazyThumbnailFactory thumbnailFactory, IEntityManager entities)
 {
     _fileWatcherFactory = fileWatcherFactory;
     _thumbnailFactory   = thumbnailFactory;
     _entities           = entities;
 }