Esempio n. 1
0
        public bool Initialize(ProcessorInitializationParameter parameter)
        {
            if (parameter == null) return false;

            _param = parameter;
            _config = XObjectManager.CreateObject<XSLTConfig>(parameter.ConfigXmlString);

            if (_config == null)
            {
                WriteLog(LogType.Error, "Deserialize configuration object failed.");
                return false;
            }

            try
            {
                string XSLTFile = _param.GetFullPath(_config.XSLTFileName);

                xslt = new XslCompiledTransform();
                xslt.Load(XSLTFile);
            }catch(Exception ex)
            {
                _param.Log.Write(ex);
                return false;
            }
            return true;
        }
Esempio n. 2
0
        public bool ProcessMessage(MessagePackage message)
        {
            try
            {
                string xmlString = message.GetMessageXml();

                string schemaFile = _param.GetFullPath(_config.SchemaFileName);

                try
                {
                    _param.Log.Write(LogType.Debug, "Start Validate Meta File");
                    XmlReaderSettings rs = new XmlReaderSettings();
                    try
                    {
                        rs.ValidationType = ValidationType.Schema;
                        rs.Schemas.Add(null, schemaFile);

                        rs.ValidationEventHandler += new System.Xml.Schema.ValidationEventHandler(RS_ValidationEventHandler);
                    }
                    catch (Exception ex)
                    {
                        _param.Log.Write(LogType.Debug, "Load schema file error" + ex.Message);
                        _isValid = false;
                        return(false);
                    }
                    finally
                    {
                    }

                    System.Xml.XmlReader xr = XmlReader.Create(new StringReader(xmlString), rs);

                    try
                    {
                        while (xr.Read() && _isValid)
                        {
                            _param.Log.Write(LogType.Debug, "Read XML Information: " + xr.Value);
                        }
                    }
                    catch (Exception ex)
                    {
                        _param.Log.Write(LogType.Error, "System gets error while reading XML, " + ex.Message);
                        _isValid = false;
                    }
                    finally
                    {
                        xr.Close();
                    }
                }
                catch (Exception ex)
                {
                    _param.Log.Write(LogType.Error, "System gets error while validateing XML, " + ex.Message);

                    _isValid = false;
                }
                finally
                {
                }

                return(_isValid);
            }
            catch (Exception e)
            {
                WriteLog(e);
                return(false);
            }
        }