public static async Task <string> Convert(this IPlantuml plantuml, string plantumlMarkup, string outputFile) { using (var output = File.Open(outputFile.EnsureParentDirectoryExists(), FileMode.Create)) { await plantuml.Convert(new StringReader(plantumlMarkup), output); return(outputFile); } }
public async Task Convert(TextReader plantumlMarkup, Stream output) { var markup = plantumlMarkup.ReadToEnd(); var p = CachePath(markup); if (!p.IsFile()) { using (var w = File.OpenWrite(p.EnsureParentDirectoryExists())) { await plantuml.Convert(new StringReader(markup), w); } } using (var r = File.OpenRead(p)) { await r.CopyToAsync(output); } }