public XSLTProcessor(Context ctx) { _ctx = ctx; if (mvpXmlAvailable) { object transform = Activator.CreateInstance(mvpXmlType); Load = (LoadDelegate)Delegate.CreateDelegate(typeof(LoadDelegate), transform, loadMethodMvp); GetOutputSettings = (GetOutputSettingsDelegate)Delegate.CreateDelegate(typeof(GetOutputSettingsDelegate), transform, getOutputSettingsMethodMvp); TransformToWriter = (TransformToWriterDelegate)Delegate.CreateDelegate(typeof(TransformToWriterDelegate), transform, transformToWriterMethodMvp); } else { // Mvp.Xml not available -> falling back to XslCompiledTransform XslCompiledTransform transform = new XslCompiledTransform(); Load = new LoadDelegate(transform.Load); GetOutputSettings = (GetOutputSettingsDelegate) Delegate.CreateDelegate(typeof(GetOutputSettingsDelegate), transform, getOutputSettingsMethodFW); TransformToWriter = new TransformToWriterDelegate(transform.Transform); } this.xsltArgumentList = new XsltArgumentList(); }
public XSLTProcessor() : base(ScriptContext.CurrentContext, true) { if (mvpXmlAvailable) { object transform = Activator.CreateInstance(mvpXmlType); Load = (LoadDelegate)Delegate.CreateDelegate(typeof(LoadDelegate), transform, loadMethodMvp); GetOutputSettings = (GetOutputSettingsDelegate)Delegate.CreateDelegate(typeof(GetOutputSettingsDelegate), transform, getOutputSettingsMethodMvp); TransformToWriter = (TransformToWriterDelegate)Delegate.CreateDelegate(typeof(TransformToWriterDelegate), transform, transformToWriterMethodMvp); TransformToStream = (TransformToStreamDelegate)Delegate.CreateDelegate(typeof(TransformToStreamDelegate), transform, transformToStreamMethodMvp); } else { // Mvp.Xml not available -> falling back to XslCompiledTransform XslCompiledTransform transform = new XslCompiledTransform(); Load = new LoadDelegate(transform.Load); GetOutputSettings = (GetOutputSettingsDelegate) Delegate.CreateDelegate(typeof(GetOutputSettingsDelegate), transform, getOutputSettingsMethodFW); TransformToWriter = new TransformToWriterDelegate(transform.Transform); TransformToStream = new TransformToStreamDelegate(transform.Transform); } this.xsltArgumentList = new XsltArgumentList(); }