Microsoft.CodeAnalysis.Sarif.Converters.FxCopConverter.Convert C# (CSharp) Méthode

Convert() public méthode

Convert FxCop log to SARIF format stream
public Convert ( Stream input, IResultLogWriter output ) : void
input Stream FxCop log stream
output IResultLogWriter output stream
Résultat void
        public override void Convert(Stream input, IResultLogWriter output)
        {
            if (input == null)
            {
                throw (new ArgumentNullException(nameof(input)));
            }

            if (output == null)
            {
                throw (new ArgumentNullException(nameof(output)));
            }

            LogicalLocationsDictionary.Clear();

            var context = new FxCopLogReader.Context();

            var results = new List<Result>();
            var reader = new FxCopLogReader();
            reader.ResultRead += (FxCopLogReader.Context current) => { results.Add(CreateResult(current)); };
            reader.Read(context, input);

            Tool tool = new Tool
            {
                Name = "FxCop"
            };

            var fileInfoFactory = new FileInfoFactory(MimeType.DetermineFromFileExtension);
            Dictionary<string, FileData> fileDictionary = fileInfoFactory.Create(results);

            output.Initialize(id: null, correlationId: null);

            output.WriteTool(tool);

            if (fileDictionary != null && fileDictionary.Any())
            {
                output.WriteFiles(fileDictionary);
            }

            if (LogicalLocationsDictionary != null && LogicalLocationsDictionary.Any())
            {
                output.WriteLogicalLocations(LogicalLocationsDictionary);
            }

            output.OpenResults();
            output.WriteResults(results);
            output.CloseResults();
        }

Usage Example

 public void FxCopConverter_Convert_NullOutput()
 {
     var converter = new FxCopConverter();
     converter.Convert(new MemoryStream(), null);
 }
All Usage Examples Of Microsoft.CodeAnalysis.Sarif.Converters.FxCopConverter::Convert