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 SonarLintQuickInfoSource(SonarLintQuickInfoSourceProvider provider, ITextBuffer subjectBuffer, string filePath, IIssueConverter issueConverter) { if (provider == null) { throw new ArgumentNullException(nameof(provider)); } if (subjectBuffer == null) { throw new ArgumentNullException(nameof(subjectBuffer)); } if (filePath == null) { throw new ArgumentNullException(nameof(filePath)); } if (issueConverter == null) { throw new ArgumentNullException(nameof(issueConverter)); } this.provider = provider; this.subjectBuffer = subjectBuffer; this.filePath = filePath; this.issueConverter = issueConverter; }
internal IssueTagger(DTE dte, TaggerProvider provider, ITextBuffer buffer, ITextDocument document, IEnumerable <SonarLanguage> detectedLanguages, IIssueConverter issueConverter) { this.dte = dte; this.provider = provider; this.textBuffer = buffer; this.detectedLanguages = detectedLanguages; this.issueConverter = issueConverter; this.currentSnapshot = buffer.CurrentSnapshot; this.dirtySpans = new NormalizedSnapshotSpanCollection(); this.document = document; this.FilePath = document.FilePath; this.ProjectItem = dte.Solution.FindProjectItem(this.FilePath); this.Charset = document.Encoding.WebName; this.Factory = new SnapshotFactory(new IssuesSnapshot(this.ProjectItem.ContainingProject.Name, this.FilePath, 0, new List <IssueMarker>())); this.Initialize(); }
public JiraToGitHubService(ILogger <JiraToGitHubService> logger, IOptions <AppConfig> appConfig, IIssueConverter issueConverter) { Logger = logger; Config = appConfig.Value; IssueConverter = issueConverter; }