示例#1
0
 public MessagesPostprocessor(SearchAllOccurencesParams searchParams, LJTraceSource trace)
 {
     this.bulkProcessing = searchParams.Filters.StartBulkProcessing(
         searchParams.SearchInRawText, reverseMatchDirection: false);
     this.filteringTime = new Stopwatch();
     this.tid           = Thread.CurrentThread.ManagedThreadId;
     this.trace         = trace;
 }
示例#2
0
 public SearchCommand(
     SearchAllOccurencesParams searchParams,
     Func <SearchResultMessage, bool> callback,
     Progress.IProgressEventsSink progress
     )
 {
     this.searchParams = searchParams;
     this.callback     = callback;
     this.progress     = progress;
 }
示例#3
0
        Task ILogProvider.Search(
            SearchAllOccurencesParams searchParams,
            Func <SearchResultMessage, bool> callback,
            CancellationToken cancellation,
            Progress.IProgressEventsSink progress
            )
        {
            CheckDisposed();
            var     ret = new SearchCommand(searchParams, callback, progress, threads.UnderlyingThreadsContainer);
            Command cmd = new Command(Command.CommandType.Search,
                                      LogProviderCommandPriority.AsyncUserAction, tracer, cancellation, ret);

            PostCommand(cmd);
            return(ret.Task);
        }