Beispiel #1
0
 public DocumentFormatter(TextWriter textWriter, ICRefResolver crefResolver, string xsltAssetName, bool leaveOpen)
 {
     this.leaveOpen      = leaveOpen;
     this.textWriter     = textWriter ?? throw new ArgumentNullException(nameof(textWriter));
     this.crefResolver   = crefResolver ?? throw new ArgumentNullException(nameof(crefResolver));
     this.xmlTransformer = XmlTransformer.Create(xsltAssetName, crefResolver);
 }
Beispiel #2
0
        protected XmlTransformer(XslCompiledTransform xslTtransform, ICRefResolver crefResolver)
        {
            transformer = xslTtransform ?? throw new ArgumentNullException(nameof(xslTtransform));

            arguments = new XsltArgumentList();
            arguments.AddExtensionObject(XsltExtensionNamespaceUri, new CRefResolverProxy(crefResolver));
        }
Beispiel #3
0
        public static XmlTransformer Create(string xsltAssetName, ICRefResolver crefResolver)
        {
            var xslCompiledTransform = loadedXmlTransforms.GetOrAdd(xsltAssetName, _ =>
            {
                var xslt = new XslCompiledTransform();
                using (var reader = CreateXmlReaderFor(xsltAssetName))
                    xslt.Load(reader);
                return(xslt);
            });

            return(new XmlTransformer(xslCompiledTransform, crefResolver));
        }
Beispiel #4
0
 public override DocumentFormatter CreateFormatter(TextWriter writer, ICRefResolver crefResolver, bool leaveOpen = false)
 {
     return(new MarkdownFormatter(writer, crefResolver, leaveOpen));
 }
Beispiel #5
0
 public MarkdownFormatter(TextWriter textWriter, ICRefResolver crefResolver, bool leaveOpen = false)
     : base(textWriter, crefResolver, "Markdown", leaveOpen)
 {
 }
Beispiel #6
0
 public HtmlFormatter(TextWriter textWriter, ICRefResolver crefResolver, string stylesheet = null, bool leaveOpen = false)
     : base(textWriter, crefResolver, "HTML", leaveOpen)
 {
     Stylesheet = stylesheet;
 }
Beispiel #7
0
 public abstract DocumentFormatter CreateFormatter(TextWriter writer, ICRefResolver crefResolver, bool leaveOpen = false);
Beispiel #8
0
 public CRefResolverProxy(ICRefResolver crefResolver)
 {
     this.crefResolver = crefResolver ?? throw new ArgumentNullException(nameof(crefResolver));
 }