/// <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);
            }
        }
Ejemplo n.º 2
0
        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();
        }
Ejemplo n.º 3
0
 public ProgramFacts(ITestOutputHelper output)
 {
     _console   = new TextOutputWriter(output);
     _directory = TestDirectory.Create();
 }