internal TaggerProvider(ITableManagerProvider tableManagerProvider, ITextDocumentFactoryService textDocumentFactoryService, IIssuesFilter issuesFilter, IAnalyzerController analyzerController, [Import(typeof(SVsServiceProvider))] IServiceProvider serviceProvider, ISonarLanguageRecognizer languageRecognizer, IAnalysisRequester analysisRequester, ILogger logger, IScheduler scheduler) { this.errorTableManager = tableManagerProvider.GetTableManager(StandardTables.ErrorsTable); this.textDocumentFactoryService = textDocumentFactoryService; this.issuesFilter = issuesFilter; this.errorTableManager.AddSource(this, StandardTableColumnDefinitions.DetailsExpander, StandardTableColumnDefinitions.ErrorSeverity, StandardTableColumnDefinitions.ErrorCode, StandardTableColumnDefinitions.ErrorSource, StandardTableColumnDefinitions.BuildTool, StandardTableColumnDefinitions.ErrorSource, StandardTableColumnDefinitions.ErrorCategory, StandardTableColumnDefinitions.Text, StandardTableColumnDefinitions.DocumentName, StandardTableColumnDefinitions.Line, StandardTableColumnDefinitions.Column, StandardTableColumnDefinitions.ProjectName); this.analyzerController = analyzerController; this.dte = serviceProvider.GetService <DTE>(); this.languageRecognizer = languageRecognizer; this.logger = logger; this.scheduler = scheduler; vsStatusBar = serviceProvider.GetService(typeof(IVsStatusbar)) as IVsStatusbar; analysisRequester.AnalysisRequested += OnAnalysisRequested; }
internal TaggerProvider(ISonarErrorListDataSource sonarErrorDataSource, ITextDocumentFactoryService textDocumentFactoryService, IIssuesFilter issuesFilter, IAnalyzerController analyzerController, [Import(typeof(SVsServiceProvider))] IServiceProvider serviceProvider, ISonarLanguageRecognizer languageRecognizer, IAnalysisRequester analysisRequester, IAnalysisIssueVisualizationConverter converter, ILogger logger, IScheduler scheduler) { this.sonarErrorDataSource = sonarErrorDataSource; this.textDocumentFactoryService = textDocumentFactoryService; this.issuesFilter = issuesFilter; this.analyzerController = analyzerController; this.dte = serviceProvider.GetService <DTE>(); this.languageRecognizer = languageRecognizer; this.converter = converter; this.logger = logger; this.scheduler = scheduler; vsStatusBar = serviceProvider.GetService(typeof(IVsStatusbar)) as IVsStatusbar; analysisRequester.AnalysisRequested += OnAnalysisRequested; vsSolution = serviceProvider.GetService(typeof(SVsSolution)) as IVsSolution5; }
internal TextBufferIssueTracker(DTE dte, TaggerProvider provider, ITextDocument document, IEnumerable <AnalysisLanguage> detectedLanguages, IIssueConverter issueConverter, ILogger logger, IIssuesFilter issuesFilter) { this.dte = dte; this.Provider = provider; this.textBuffer = document.TextBuffer; this.currentSnapshot = document.TextBuffer.CurrentSnapshot; this.detectedLanguages = detectedLanguages; this.issueConverter = issueConverter; this.logger = logger; this.issuesFilter = issuesFilter; this.document = document; this.FilePath = document.FilePath; this.ProjectItem = dte.Solution.FindProjectItem(this.FilePath); this.charset = document.Encoding.WebName; // Bug #676: https://github.com/SonarSource/sonarlint-visualstudio/issues/676 // It's possible to have a ProjectItem that doesn't have a ContainingProject // e.g. files under the "External Dependencies" project folder in the Solution Explorer var projectName = this.ProjectItem?.ContainingProject.Name ?? "{none}"; this.Factory = new SnapshotFactory(new IssuesSnapshot(projectName, this.FilePath, 0, new List <IssueMarker>())); document.FileActionOccurred += SafeOnFileActionOccurred; }
public TextBufferIssueTracker(DTE dte, TaggerProvider provider, ITextDocument document, IEnumerable <AnalysisLanguage> detectedLanguages, IIssuesFilter issuesFilter, ISonarErrorListDataSource sonarErrorDataSource, IAnalysisIssueVisualizationConverter converter, IVsSolution5 vsSolution, ILogger logger) { this.dte = dte; this.Provider = provider; this.textBuffer = document.TextBuffer; this.detectedLanguages = detectedLanguages; this.sonarErrorDataSource = sonarErrorDataSource; this.converter = converter; this.vsSolution = vsSolution; this.logger = logger; this.issuesFilter = issuesFilter; this.document = document; this.FilePath = document.FilePath; this.charset = document.Encoding.WebName; this.Factory = new IssuesSnapshotFactory(new IssuesSnapshot(GetProjectName(), GetProjectGuid(), FilePath, new List <IAnalysisIssueVisualization>())); document.FileActionOccurred += SafeOnFileActionOccurred; sonarErrorDataSource.AddFactory(this.Factory); Provider.AddIssueTracker(this); RequestAnalysis(null /* no options */); }
public AnalysisView(AnalysisViewDescriptor desc, ProjectAuditorConfig config, IIssuesFilter filter) { m_Desc = desc; m_Config = config; m_Filter = filter; m_Table = null; }
public IssueTable(TreeViewState state, MultiColumnHeader multicolumnHeader, bool groupByDescription, ProjectAuditorConfig config, IIssuesFilter issuesFilter) : base(state, multicolumnHeader) { m_Config = config; m_IssuesFilter = issuesFilter; m_GroupByDescription = groupByDescription; multicolumnHeader.sortingChanged += OnSortingChanged; }
public TextBufferIssueTracker(DTE dte, TaggerProvider provider, ITextDocument document, IEnumerable <AnalysisLanguage> detectedLanguages, ILogger logger, IIssuesFilter issuesFilter) : this(dte, provider, document, detectedLanguages, new IssueConverter(), logger, issuesFilter) { }
public TestableTextBufferIssueTracker(DTE dte, TaggerProvider provider, ITextDocument document, IEnumerable <AnalysisLanguage> detectedLanguages, IIssuesFilter issuesFilter, ISonarErrorListDataSource sonarErrorDataSource, IAnalysisIssueVisualizationConverter converter, IVsSolution5 vsSolution, ILogger logger) : base(dte, provider, document, detectedLanguages, issuesFilter, sonarErrorDataSource, converter, vsSolution, logger) { }