/// <summary> /// Processes a request. /// </summary> /// <param name="httpContext"></param> /// <returns></returns> public async Task InvokeAsync(HttpContext httpContext) { if (httpContext == null) { throw new ArgumentNullException(nameof(httpContext)); } httpContext.Response.ContentType = "text/plain; version=0.0.4; charset=utf-8"; using (var writer = new StreamWriter(httpContext.Response.Body)) { await TextOutputWriter.WriteAsync(writer, _registry, httpContext.RequestAborted); } }
internal static void Execute(IEnumerable <AssemblyTreeNode> nodes) { var highlighting = HighlightingManager.Instance.GetDefinitionByExtension(".xml"); var options = PdbToXmlOptions.IncludeEmbeddedSources | PdbToXmlOptions.IncludeMethodSpans | PdbToXmlOptions.IncludeTokens; Docking.DockWorkspace.Instance.RunWithCancellation(ct => Task <AvalonEditTextOutput> .Factory.StartNew(() => { AvalonEditTextOutput output = new AvalonEditTextOutput(); var writer = new TextOutputWriter(output); foreach (var node in nodes) { string pdbFileName = Path.ChangeExtension(node.LoadedAssembly.FileName, ".pdb"); if (!File.Exists(pdbFileName)) { continue; } using (var pdbStream = File.OpenRead(pdbFileName)) using (var peStream = File.OpenRead(node.LoadedAssembly.FileName)) PdbToXmlConverter.ToXml(writer, pdbStream, peStream, options); } return(output); }, ct)).Then(output => Docking.DockWorkspace.Instance.ShowNodes(output, null, highlighting)).HandleExceptions(); }
public ProgramFacts(ITestOutputHelper output) { _console = new TextOutputWriter(output); _directory = TestDirectory.Create(); }