Esempio n. 1
0
        public override async Task SaveToDocumentationFolderAsync()
        {
            var converter = new DocConverter();
            var blocks    = await converter.ConvertAsync(_document).ConfigureAwait(false);

            if (!blocks.Any())
            {
                return;
            }

            var builder = new StringBuilder();

            using (var writer = new StringWriter(builder))
                foreach (var block in blocks)
                {
                    await writer.WriteLineAsync(block.ToAsciiDoc()).ConfigureAwait(false);
                }

            var destination = CreateDocumentationLocation();

            // Now add Asciidoc headers, rearrange sections, etc.
            var document = AsciiDocNet.Document.Parse(builder.ToString());
            var visitor  = new GeneratedAsciidocVisitor(FileLocation, destination, _projects);

            document = visitor.Convert(document);

            // Write out document to file
            using (var writer = new StreamWriter(destination.FullName)) document.Accept(new AsciiDocVisitor(writer));
        }
        private void CleanDocumentAndWriteToFile(string body, FileInfo destination)
        {
            var document = Document.Parse(body);
            var visitor  = new GeneratedAsciidocVisitor(this.FileLocation, destination);

            document = visitor.Convert(document);

            // add attributes and write to destination
            using (var file = new StreamWriter(destination.FullName))
            {
                document.Accept(new AsciiDocVisitor(file));
            }
        }