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)); } }