示例#1
0
        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);
            }
        }
示例#2
0
        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);
            }
        }