Ejemplo n.º 1
0
 public static void WriteXmlDoc(this ITextOutput output, string text)
 {
     foreach (var kv in SimpleXmlParser.Parse(text))
     {
         output.Write(kv.Key, kv.Value);
     }
 }
Ejemplo n.º 2
0
        /// <summary>
        /// Import the names from XML.
        /// @throws IOException on error
        /// </summary>
        /// <param name="inp">the XML source. The reader is not closed</param>
        /// <returns>the names</returns>
        public static Hashtable ImportFromXml(TextReader inp)
        {
            SimpleNamedDestination names = new SimpleNamedDestination();

            SimpleXmlParser.Parse(names, inp);
            return(names._xmlNames);
        }
Ejemplo n.º 3
0
        /// <summary>
        /// Reads initial file and imports data
        /// </summary>
        /// <returns></returns>
        public override List <T> ImportFile()
        {
            if (string.IsNullOrEmpty(this.DownloadedFilename))
            {
                throw new FileNotFoundException("There is no any file downloaded. Call DownloadXmlFile first.");
            }

            List <T> products = new List <T>(100);

            try
            {
                SimpleXmlParser parser = new SimpleXmlParser(new System.IO.FileInfo(this.DownloadedFilename));
                List <Dictionary <string, string> > parsed = parser.Parse();
                //Go throw rows and validate each row
                foreach (Dictionary <string, string> dr in parsed)
                {
                    T instance = this.ParseRow(dr);
                    if (instance == null)
                    {
                        continue;
                    }
                    products.Add(instance);
                }
            }
            catch (Exception ex)
            {
                throw new Exception(ex.Message, ex);
            }
            return(products);
        }
        /// <summary>
        /// Import the bookmarks from XML.
        /// @throws IOException on error
        /// </summary>
        /// <param name="inp">the XML source. The stream is not closed</param>
        /// <returns>the bookmarks</returns>
        public static ArrayList ImportFromXml(Stream inp)
        {
            SimpleBookmark book = new SimpleBookmark();

            SimpleXmlParser.Parse(book, inp);
            return(book._topList);
        }
Ejemplo n.º 5
0
        /// <summary>
        /// Import the bookmarks from XML.
        /// @throws IOException on error
        /// </summary>
        /// <param name="inp">the XML source. The reader is not closed</param>
        /// <returns>the bookmarks</returns>
        public static ArrayList ImportFromXml(TextReader inp)
        {
            var book = new SimpleBookmark();

            SimpleXmlParser.Parse(book, inp);
            return(book._topList);
        }
        /// <summary>
        /// Import the names from XML.
        /// @throws IOException on error
        /// </summary>
        /// <param name="inp">the XML source. The stream is not closed</param>
        /// <returns>the names</returns>
        public static Hashtable ImportFromXml(Stream inp)
        {
            var names = new SimpleNamedDestination();

            SimpleXmlParser.Parse(names, inp);
            return(names._xmlNames);
        }
Ejemplo n.º 7
0
        /// <summary>
        /// Exports the bookmarks to XML. Only of use if the generation is to be include in
        /// some other XML document.
        /// whatever the encoding
        /// @throws IOException on error
        /// </summary>
        /// <param name="list">the bookmarks</param>
        /// <param name="outp">the export destination. The writer is not closed</param>
        /// <param name="indent">the indentation level. Pretty printing significant only</param>
        /// <param name="onlyAscii">codes above 127 will always be escaped with &amp;#nn; if  true ,</param>
        public static void ExportToXmlNode(ArrayList list, TextWriter outp, int indent, bool onlyAscii)
        {
            var dep = "";

            for (var k = 0; k < indent; ++k)
            {
                dep += "  ";
            }

            foreach (Hashtable map in list)
            {
                string title = null;
                outp.Write(dep);
                outp.Write("<Title ");
                ArrayList kids = null;
                foreach (DictionaryEntry entry in map)
                {
                    var key = (string)entry.Key;
                    if (key.Equals("Title"))
                    {
                        title = (string)entry.Value;
                        continue;
                    }
                    else if (key.Equals("Kids"))
                    {
                        kids = (ArrayList)entry.Value;
                        continue;
                    }
                    else
                    {
                        outp.Write(key);
                        outp.Write("=\"");
                        var value = (string)entry.Value;
                        if (key.Equals("Named") || key.Equals("NamedN"))
                        {
                            value = EscapeBinaryString(value);
                        }

                        outp.Write(SimpleXmlParser.EscapeXml(value, onlyAscii));
                        outp.Write("\" ");
                    }
                }
                outp.Write(">");
                if (title == null)
                {
                    title = "";
                }

                outp.Write(SimpleXmlParser.EscapeXml(title, onlyAscii));
                if (kids != null)
                {
                    outp.Write("\n");
                    ExportToXmlNode(kids, outp, indent + 1, onlyAscii);
                    outp.Write(dep);
                }
                outp.Write("</Title>\n");
            }
        }
Ejemplo n.º 8
0
 /// <summary>
 /// Exports the bookmarks to XML.
 /// whatever the encoding
 /// @throws IOException on error
 /// </summary>
 /// <param name="list">the bookmarks</param>
 /// <param name="wrt">the export destination. The writer is not closed</param>
 /// <param name="encoding">the encoding according to IANA conventions</param>
 /// <param name="onlyAscii">codes above 127 will always be escaped with &amp;#nn; if  true ,</param>
 public static void ExportToXml(ArrayList list, TextWriter wrt, string encoding, bool onlyAscii)
 {
     wrt.Write("<?xml version=\"1.0\" encoding=\"");
     wrt.Write(SimpleXmlParser.EscapeXml(encoding, onlyAscii));
     wrt.Write("\"?>\n<Bookmark>\n");
     ExportToXmlNode(list, wrt, 1, onlyAscii);
     wrt.Write("</Bookmark>\n");
     wrt.Flush();
 }
Ejemplo n.º 9
0
        public void TestDuplicateAttribute()
        {
            XmlParser parser = new SimpleXmlParser();
            //TextReader t = new StringReader("<xml></xml>");
            var doc = XDocument.Load(@"<xml att=""123"" att=""1234""></xml>");

            parser.Document = doc;
            parser.ParseDocument(LoggerType.DEBUG);
        }
Ejemplo n.º 10
0
        public void SimpleXMLDocument()
        {
            XmlParser parser = new SimpleXmlParser();
            //TextReader t = new StringReader("<xml></xml>");
            var doc = XDocument.Load("<xml></xml>");

            parser.Document = doc;
            parser.ParseDocument(LoggerType.DEBUG);
        }
Ejemplo n.º 11
0
        public void TryReadingXmlFile()
        {
            ReadXml r = new ReadXml();

            r.StringPath = @"C:\Users\dor\source\repos\xmlTest\XmlParser\test.xml";

            XmlParser parser = new SimpleXmlParser();

            parser.Document = r.ReadFile();
        }
Ejemplo n.º 12
0
        public void CheckErrorLogger()
        {
            MetronikParser.Parser.XmlParser parser = new SimpleXmlParser();
            var doc = new XmlDocument();

            doc.LoadXml("<xml></xml>");

            using (parser.Log = LoggerFactory.GetLogger(LoggerType.DEBUG))
            {
                parser.Log.LogError("Testing Logger");
            }
        }
Ejemplo n.º 13
0
 public void Parse(Stream stream, IPatternConsumer consumer)
 {
     Consumer = consumer;
     try
     {
         SimpleXmlParser.Parse(this, stream);
     }
     finally
     {
         try { stream.Dispose(); } catch { }
     }
 }
Ejemplo n.º 14
0
        private XmlParser LoadParser()
        {
            XmlParser parser = new SimpleXmlParser();

            parser.Document = XDocument.Parse(
                @"<root>
                                <ime testAtt=""testAtt"">Rok</ime>
                                <priimek>Dolinar</priimek>
                                <kraj>Javorje 34</kraj>
                                <sola>
                                  <ime_sole>FRI</ime_sole>
                                  <lokacija>Vecna pot</lokacija>
                                </sola>
                              </root>");
            return(parser);
        }
Ejemplo n.º 15
0
 /// <summary>
 /// Exports the bookmarks to XML.
 /// whatever the encoding
 /// @throws IOException on error
 /// </summary>
 /// <param name="names">the names</param>
 /// <param name="wrt">the export destination. The writer is not closed</param>
 /// <param name="encoding">the encoding according to IANA conventions</param>
 /// <param name="onlyAscii">codes above 127 will always be escaped with &amp;#nn; if  true ,</param>
 public static void ExportToXml(Hashtable names, TextWriter wrt, string encoding, bool onlyAscii)
 {
     wrt.Write("<?xml version=\"1.0\" encoding=\"");
     wrt.Write(SimpleXmlParser.EscapeXml(encoding, onlyAscii));
     wrt.Write("\"?>\n<Destination>\n");
     foreach (string key in names.Keys)
     {
         string value = (string)names[key];
         wrt.Write("  <Name Page=\"");
         wrt.Write(SimpleXmlParser.EscapeXml(value, onlyAscii));
         wrt.Write("\">");
         wrt.Write(SimpleXmlParser.EscapeXml(EscapeBinaryString(key), onlyAscii));
         wrt.Write("</Name>\n");
     }
     wrt.Write("</Destination>\n");
     wrt.Flush();
 }
Ejemplo n.º 16
0
        /// <summary>
        /// Reads an XFDF form.
        /// @throws IOException on error
        /// </summary>
        /// <param name="filename">the file name of the form</param>
        public XfdfReader(string filename)
        {
            FileStream fin = null;

            try
            {
                fin = new FileStream(filename, FileMode.Open, FileAccess.Read, FileShare.Read);
                SimpleXmlParser.Parse(this, fin);
            }
            finally
            {
                try
                {
                    fin?.Dispose();
                } catch { }
            }
        }
Ejemplo n.º 17
0
 public void CheckForNullDocument()
 {
     MetronikParser.Parser.XmlParser parser = new SimpleXmlParser();
     parser.Document = null;
     parser.ParseDocument(LoggerType.DEBUG);
 }
Ejemplo n.º 18
0
 public void Parse(TextReader reader)
 {
     SimpleXmlParser.Parse(this, null, reader, true);
 }
Ejemplo n.º 19
0
 /// <summary>
 /// Reads an XFDF form.
 /// @throws IOException on error
 /// </summary>
 /// <param name="xfdfIn">the byte array with the form</param>
 public XfdfReader(byte[] xfdfIn)
 {
     SimpleXmlParser.Parse(this, new MemoryStream(xfdfIn));
 }