public AsyncWorkItemQueue(SolutionCrawlerProgressReporter progressReporter) { _gate = new object(); _semaphore = new AsyncSemaphore(initialCount: 0); _cancellationMap = new Dictionary <object, CancellationTokenSource>(); _progressReporter = progressReporter; }
public AsyncWorkItemQueue(SolutionCrawlerProgressReporter progressReporter, Workspace workspace) { _semaphore = new SemaphoreSlim(initialCount: 0); _workspace = workspace; _progressReporter = progressReporter; }
public Registration( int correlationId, Workspace workspace, SolutionCrawlerProgressReporter progressReporter ) { CorrelationId = correlationId; Workspace = workspace; ProgressReporter = progressReporter; }
public SolutionCrawlerRegistrationService( [ImportMany] IEnumerable <Lazy <IIncrementalAnalyzerProvider, IncrementalAnalyzerProviderMetadata> > analyzerProviders, [ImportMany] IEnumerable <Lazy <IAsynchronousOperationListener, FeatureMetadata> > asyncListeners) { _gate = new object(); _analyzerProviders = analyzerProviders.ToImmutableArray(); _documentWorkCoordinatorMap = new Dictionary <Workspace, WorkCoordinator>(ReferenceEqualityComparer.Instance); _listener = new AggregateAsynchronousOperationListener(asyncListeners, FeatureAttribute.SolutionCrawler); _progressReporter = new SolutionCrawlerProgressReporter(_listener); }
public SolutionCrawlerRegistrationService( [ImportMany] IEnumerable <Lazy <IIncrementalAnalyzerProvider, IncrementalAnalyzerProviderMetadata> > analyzerProviders, IAsynchronousOperationListenerProvider listenerProvider) { _gate = new object(); _analyzerProviders = analyzerProviders.GroupBy(kv => kv.Metadata.Name).ToImmutableDictionary(g => g.Key, g => g.ToImmutableArray()); AssertAnalyzerProviders(_analyzerProviders); _documentWorkCoordinatorMap = new Dictionary <Workspace, WorkCoordinator>(ReferenceEqualityComparer.Instance); _listener = listenerProvider.GetListener(FeatureAttribute.SolutionCrawler); _progressReporter = new SolutionCrawlerProgressReporter(); }
public ProgressStatusRAII(SolutionCrawlerProgressReporter owner) { _owner = owner; _owner.Evaluate(); }
public AsyncDocumentWorkItemQueue(SolutionCrawlerProgressReporter progressReporter, Workspace workspace) : base(progressReporter, workspace) { }
public AsyncDocumentWorkItemQueue(SolutionCrawlerProgressReporter progressReporter) : base(progressReporter) { }