コード例 #1
0
 public JsonFormatInfo(
     string transform, LoadedRegex headRe, LoadedRegex bodyRe,
     BoundFinder beginFinder, BoundFinder endFinder, string encoding,
     TextStreamPositioningParams textStreamPositioningParams,
     DejitteringParams?dejitteringParams, IFormatViewOptions viewOptions) :
     base(MessagesReaderExtensions.XmlInitializationParams.Empty)
 {
     Encoding    = encoding;
     HeadRe      = headRe;
     BodyRe      = bodyRe;
     BeginFinder = beginFinder;
     EndFinder   = endFinder;
     TextStreamPositioningParams = textStreamPositioningParams;
     DejitteringParams           = dejitteringParams;
     ViewOptions = viewOptions;
     Transform   = JObject.Parse(transform);
 }
コード例 #2
0
ファイル: XmlLogReader.cs プロジェクト: pnelson786/logjoint
        public XmlFormatInfo(XmlNode xsl, LoadedRegex headRe, LoadedRegex bodyRe, BoundFinder beginFinder, BoundFinder endFinder, string encoding, MessagesReaderExtensions.XmlInitializationParams extensionsInitData,
                             TextStreamPositioningParams textStreamPositioningParams, DejitteringParams?dejitteringParams, IFormatViewOptions viewOptions) :
            base(extensionsInitData)
        {
            Encoding    = encoding;
            HeadRe      = headRe;
            BodyRe      = bodyRe;
            BeginFinder = beginFinder;
            EndFinder   = endFinder;
            TextStreamPositioningParams = textStreamPositioningParams;
            DejitteringParams           = dejitteringParams;
            ViewOptions = viewOptions;

            if (xsl != null)
            {
                Dictionary <string, string> nsTable = new Dictionary <string, string>();
                foreach (XmlAttribute ns in xsl.SelectNodes(".//namespace::*"))
                {
                    if (ns.Value == "http://www.w3.org/XML/1998/namespace")
                    {
                        continue;
                    }
                    if (ns.Value == "http://www.w3.org/1999/XSL/Transform")
                    {
                        continue;
                    }
                    if (ns.Value == Properties.LogJointNS)
                    {
                        continue;
                    }
                    nsTable[ns.Name] = ns.Value;
                }

                StringBuilder nsdeclBuilder = new StringBuilder();
                foreach (KeyValuePair <string, string> ns in nsTable)
                {
                    nsdeclBuilder.AppendFormat("{0}='{1}' ", ns.Key, ns.Value);
                }
                NSDeclaration = nsdeclBuilder.ToString();

                Transform = new XslCompiledTransform();
                Transform.Load(xsl);
            }
        }