コード例 #1
0
        /// <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;
        }
コード例 #2
0
 /// <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;
 }
コード例 #3
0
        /// <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;
            }
        }
コード例 #4
0
 /// <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;
 }