Esempio n. 1
0
        public int LoadXSL(String _strXslFile, XslInputType xslInputType, XmlResolver xr)
        {
            _strXslFile = FullFilePath(_strXslFile);
            xslt = new XslCompiledTransform();
            XmlReaderSettings xrs = null;

            switch (xslInputType)
            {
                case XslInputType.URI:
                /*                  _output.WriteLine("Loading style sheet as URI {0}", _strXslFile);
                                    xslt.Load(_strXslFile, XsltSettings.TrustedXslt, xr);
                                    break;
                 */
                case XslInputType.Reader:
                    switch (_readerType)
                    {
                        case ReaderType.XmlTextReader:
                            XmlTextReader trTemp = new XmlTextReader(_strXslFile);
                            try
                            {
                                _output.WriteLine("Loading style sheet as XmlTextReader " + _strXslFile);
                                xslt.Load(trTemp, XsltSettings.TrustedXslt, xr);
                            }
                            catch (Exception ex)
                            {
                                throw (ex);
                            }
                            finally
                            {
                                if (trTemp != null)
                                    trTemp.Dispose();
                            }
                            break;

                        case ReaderType.XmlNodeReader:
                            XmlDocument docTemp = new XmlDocument();
                            docTemp.Load(_strXslFile);
                            XmlNodeReader nrTemp = new XmlNodeReader(docTemp);
                            try
                            {
                                _output.WriteLine("Loading style sheet as XmlNodeReader " + _strXslFile);
                                xslt.Load(nrTemp);
                            }
                            catch (Exception ex)
                            {
                                throw (ex);
                            }
                            finally
                            {
                                if (nrTemp != null)
                                    nrTemp.Dispose();
                            }
                            break;

                        case ReaderType.XmlValidatingReader:
                        default:
                            xrs = new XmlReaderSettings();
#pragma warning disable 0618
                            xrs.ProhibitDtd = false;
#pragma warning restore 0618
                            XmlReader xvr = XmlReader.Create(_strXslFile, xrs);

                            try
                            {
                                _output.WriteLine("Loading style sheet as XmlValidatingReader " + _strXslFile);
                                xslt.Load(xvr, XsltSettings.TrustedXslt, xr);
                            }
                            catch (Exception ex)
                            {
                                throw (ex);
                            }
                            finally
                            {
                                if (xvr != null)
                                    xvr.Dispose();
                            }
                            break;
                    }
                    break;

                case XslInputType.Navigator:
                    xrs = new XmlReaderSettings();
                    xrs.ValidationType = ValidationType.None;
#pragma warning disable 0618
                    xrs.ProhibitDtd = false;
#pragma warning restore 0618
                    XmlReader xrLoad = XmlReader.Create(_strXslFile, xrs);

                    XPathDocument xdTemp = new XPathDocument(xrLoad, XmlSpace.Preserve);
                    xrLoad.Dispose();
                    _output.WriteLine("Loading style sheet as Navigator " + _strXslFile);
                    xslt.Load(xdTemp, XsltSettings.TrustedXslt, xr);
                    break;
            }
            return 1;
        }
Esempio n. 2
0
        // --------------------------------------------------------------------------------------------------------------
        //  LoadXSL_Resolver
        //  -------------------------------------------------------------------------------------------------------------
        public int LoadXSL_Resolver(string _strXslFile, XslInputType xslInputType, ReaderType readerType, XmlResolver xr)
        {
            _strXslFile = FullFilePath(_strXslFile);
            xslt        = new XslCompiledTransform();
            XmlReaderSettings xrs = null;

            switch (xslInputType)
            {
            case XslInputType.URI:
                _output.WriteLine("Loading style sheet as URI " + _strXslFile);
                xslt.Load(_strXslFile, XsltSettings.TrustedXslt, xr);
                break;

            case XslInputType.Reader:
                switch (readerType)
                {
                case ReaderType.XmlTextReader:
                    XmlTextReader trTemp = new XmlTextReader(_strXslFile);
                    try
                    {
                        _output.WriteLine("Loading style sheet as XmlTextReader " + _strXslFile);
                        xslt.Load(trTemp, XsltSettings.TrustedXslt, xr);
                    }
                    finally
                    {
                        if (trTemp != null)
                        {
                            trTemp.Dispose();
                        }
                    }
                    break;

                case ReaderType.XmlNodeReader:
                    XmlDocument docTemp = new XmlDocument();
                    docTemp.Load(_strXslFile);
                    XmlNodeReader nrTemp = new XmlNodeReader(docTemp);
                    try
                    {
                        _output.WriteLine("Loading style sheet as XmlNodeReader " + _strXslFile);
                        xslt.Load(nrTemp, XsltSettings.TrustedXslt, xr);
                    }
                    finally
                    {
                        if (nrTemp != null)
                        {
                            nrTemp.Dispose();
                        }
                    }
                    break;

                case ReaderType.XmlValidatingReader:
                default:
                    xrs = new XmlReaderSettings();
#pragma warning disable 0618
                    xrs.ProhibitDtd = false;
#pragma warning restore 0618
                    XmlReader vrTemp = XmlReader.Create(_strXslFile, xrs);
                    try
                    {
                        _output.WriteLine("Loading style sheet as XmlValidatingReader " + _strXslFile);
                        xslt.Load(vrTemp, XsltSettings.TrustedXslt, xr);
                    }
                    finally
                    {
                        if (vrTemp != null)
                        {
                            vrTemp.Dispose();
                        }
                    }
                    break;
                }
                break;

            case XslInputType.Navigator:
                xrs = new XmlReaderSettings();
#pragma warning disable 0618
                xrs.ProhibitDtd = false;
#pragma warning restore 0618
                XmlReader xrLoad = XmlReader.Create(_strXslFile, xrs);

                XPathDocument xdTemp = new XPathDocument(xrLoad, XmlSpace.Preserve);
                xrLoad.Dispose();
                _output.WriteLine("Loading style sheet as Navigator " + _strXslFile);
                xslt.Load(xdTemp, XsltSettings.TrustedXslt, xr);
                break;
            }
            return(1);
        }
Esempio n. 3
0
        public void Init(object objParam)
        {
            // Get input and transform type from attribute
            _nInputXsl = GetXslInputType(String.Empty);
            _nOutput = GetOutputType(String.Empty);

            // Get parameter info from runtime variables passed to LTM
            _fTrace = false;
            _navType = GetDocType(InitStringValue("doctype"));
            _readerType = GetReaderType(InitStringValue("readertype"));

            //This is a temporary fix to restore the baselines. Refer to Test bug #
            _strPath = Path.Combine(@"TestFiles\", FilePathUtil.GetTestDataPath(), @"XsltApiV2\");
            _httpPath = FilePathUtil.GetHttpTestDataPath() + @"/XsltApiV2/";
            _standardTests = Path.Combine(@"TestFiles\", FilePathUtil.GetHttpStandardPath() + @"/xslt10/Current/");

            return;
        }
Esempio n. 4
0
 // --------------------------------------------------------------------------------------------------------------
 //  LoadXSL
 //  -------------------------------------------------------------------------------------------------------------
 public int LoadXSL(string _strXslFile, XslInputType xslInputType, ReaderType readerType)
 {
     return(LoadXSL(_strXslFile, xslInputType, readerType, new XmlUrlResolver()));
 }