/// <summary>The vs file item.</summary> /// <param name="fullPath">The full Path.</param> /// <param name="projectFullPath">The project Full Path.</param> /// <param name="associatedProject">The associated project.</param> /// <param name="fileResource">The file resource.</param> /// <returns>The <see cref="VsFileItem"/>.</returns> public VsFileItem VsFileItem(string fullPath, string projectFullPath, Resource associatedProject, Resource fileResource) { if (string.IsNullOrEmpty(fullPath)) { return null; } string driveLetter = fullPath.Substring(0, 1); string documentName = Path.GetFileNameWithoutExtension(fullPath); string documentPath = driveLetter + this.GetProperFilePathCapitalization(fullPath).Substring(1); string projectName = Path.GetFileNameWithoutExtension(projectFullPath); string projectPath = driveLetter + this.GetProperFilePathCapitalization(projectFullPath).Substring(1); string solutionName = this.ActiveSolutionName(); string solutionPath = driveLetter + this.ActiveSolutionPath().Substring(1); var itemToReturn = new VsFileItem { FileName = documentName, FilePath = documentPath, SonarResource = fileResource, Project = new VsProjectItem { ProjectName = projectName, ProjectFilePath = projectPath, Solution = new VsSolutionItem { SolutionName = solutionName, SolutionPath = solutionPath, SonarProject = associatedProject } } }; return itemToReturn; }
/// <summary> /// Initializes a new instance of the <see cref="LocalAnalysisEventCommandAnalsysisComplete"/> class. /// </summary> /// <param name="resource">The resource.</param> /// <param name="issues">The issues.</param> public LocalAnalysisEventCommandAnalsysisComplete(VsFileItem itemInView, List <Issue> issues) { this.itemInView = itemInView; this.issues = issues; }
/// <summary>The vs file item.</summary> /// <param name="filename">The filename.</param> /// <param name="associatedProject">The associated project.</param> /// <param name="fileResource">The file resource.</param> /// <returns>The <see cref="VsFileItem"/>.</returns> public VsFileItem VsFileItem(string filename, Resource associatedProject, Resource fileResource) { try { if (string.IsNullOrEmpty(filename)) { return null; } string driveLetter = filename.Substring(0, 1); ProjectItem item = this.environment.Solution.FindProjectItem(filename); if (item == null) { return null; } string documentName = Path.GetFileName(filename); string documentPath = driveLetter + this.GetProperFilePathCapitalization(filename).Substring(1); string projectName = item.ContainingProject.Name; string projectPath = driveLetter + this.GetProperFilePathCapitalization(item.ContainingProject.FullName).Substring(1); string solutionName = this.ActiveSolutionName(); string solutionPath = driveLetter + this.ActiveSolutionPath().Substring(1); var itemToReturn = new VsFileItem { FileName = documentName, FilePath = documentPath, SonarResource = fileResource, Project = new VsProjectItem { ProjectName = projectName, ProjectFilePath = projectPath, Solution = new VsSolutionItem { SolutionName = solutionName, SolutionPath = solutionPath, SonarProject = associatedProject } } }; return itemToReturn; } catch (Exception ex) { Debug.WriteLine(ex.Message); return null; } }
/// <summary> /// Initializes a new instance of the <see cref="LocalAnalysisEventFileAnalsysisComplete"/> class. /// </summary> /// <param name="resource">The resource.</param> /// <param name="issues">The issues.</param> public LocalAnalysisEventFileAnalsysisComplete(VsFileItem resource, List <Issue> issues) { this.resource = resource; this.issues = issues; }