Example #1
0
        public override object parse(XmlNode objNode)
        {
            // get required poi's parameters
            string name      = objNode.SelectSingleNode("name").InnerText.Trim();
            double latitude  = Convert.ToDouble(objNode.SelectSingleNode("latitude").InnerText.Trim());
            double longitude = Convert.ToDouble(objNode.SelectSingleNode("longitude").InnerText.Trim());
            string lang      = objNode.SelectSingleNode("lang").InnerText.Trim();
            string type      = objNode.SelectSingleNode("type").InnerText.Trim();
            string descr     = objNode.SelectSingleNode("descr").InnerText.Trim();
            // instantiate poi
            Poi poi = new Poi(name, latitude, longitude, lang, type, descr);
            // parse media files

            MediaFilesXmlAdapter mediaFilesParser = new MediaFilesXmlAdapter(poi.getMediaFiles());
            XmlNode mediaFilesNode = objNode.SelectSingleNode(mediaFilesParser.getXmlNodeName());

            mediaFilesParser.parse(mediaFilesNode);

            MainDetailsXmlAdapter mainDetailsParser = new MainDetailsXmlAdapter(poi.getMainDetails());
            XmlNode mainDetailsNode = objNode.SelectSingleNode(mainDetailsParser.getXmlNodeName());

            mainDetailsParser.parse(mainDetailsNode);

            return(poi);
        }
Example #2
0
        public override string serialize(object obj)
        {
            Poi           p       = (Poi)obj;
            StringBuilder builder = new StringBuilder();

            // opening tag
            builder.Append("<");
            builder.Append(getXmlNodeName());
            builder.Append(">");
            // lang
            builder.Append("<lang>");
            builder.Append(p.getLang());
            builder.Append("</lang>");
            // name
            builder.Append("<name>");
            builder.Append(p.getName());
            builder.Append("</name>");
            // latitude
            builder.Append("<latitude>");
            builder.Append(p.getLatitude());
            builder.Append("</latitude>");
            // longitude
            builder.Append("<longitude>");
            builder.Append(p.getLongitude());
            builder.Append("</longitude>");
            // type
            builder.Append("<type>");
            builder.Append(p.getType());
            builder.Append("</type>");
            // description
            builder.Append("<descr><![CDATA[");
            builder.Append(p.getDescr());
            builder.Append("]]></descr>");
            // media files
            MediaFilesXmlAdapter mfxa = new MediaFilesXmlAdapter(p.getMediaFiles());
            string mediaFilesXml      = mfxa.serialize();

            builder.Append(mediaFilesXml);
            // main details
            MainDetailsXmlAdapter mdxa = new MainDetailsXmlAdapter(p.getMainDetails());
            string mainDetailsXml      = mdxa.serialize();

            builder.Append(mainDetailsXml);
            // closing tag
            builder.Append("</");
            builder.Append(getXmlNodeName());
            builder.Append(">");
            return(builder.ToString());
        }
Example #3
0
 public override string serialize(object obj)
 {
     Poi p = (Poi)obj;
     StringBuilder builder = new StringBuilder();
     // opening tag
     builder.Append("<");
     builder.Append(getXmlNodeName());
     builder.Append(">");
     // lang
     builder.Append("<lang>");
     builder.Append(p.getLang());
     builder.Append("</lang>");
     // name
     builder.Append("<name>");
     builder.Append(p.getName());
     builder.Append("</name>");
     // latitude
     builder.Append("<latitude>");
     builder.Append(p.getLatitude());
     builder.Append("</latitude>");
     // longitude
     builder.Append("<longitude>");
     builder.Append(p.getLongitude());
     builder.Append("</longitude>");
     // type
     builder.Append("<type>");
     builder.Append(p.getType());
     builder.Append("</type>");
     // description
     builder.Append("<descr><![CDATA[");
     builder.Append(p.getDescr());
     builder.Append("]]></descr>");
     // media files
     MediaFilesXmlAdapter mfxa = new MediaFilesXmlAdapter(p.getMediaFiles());
     string mediaFilesXml = mfxa.serialize();
     builder.Append(mediaFilesXml);
     // main details
     MainDetailsXmlAdapter mdxa = new MainDetailsXmlAdapter(p.getMainDetails());
     string mainDetailsXml = mdxa.serialize();
     builder.Append(mainDetailsXml);
     // closing tag
     builder.Append("</");
     builder.Append(getXmlNodeName());
     builder.Append(">");
     return builder.ToString();
 }
Example #4
0
        public override object parse(XmlNode objNode)
        {
            // get required poi's parameters
            string name = objNode.SelectSingleNode("name").InnerText.Trim();
            double latitude = Convert.ToDouble(objNode.SelectSingleNode("latitude").InnerText.Trim());
            double longitude = Convert.ToDouble(objNode.SelectSingleNode("longitude").InnerText.Trim());
            string lang = objNode.SelectSingleNode("lang").InnerText.Trim();
            string type = objNode.SelectSingleNode("type").InnerText.Trim();
            string descr = objNode.SelectSingleNode("descr").InnerText.Trim();
            // instantiate poi
            Poi poi = new Poi(name, latitude, longitude, lang, type, descr);
            // parse media files

            MediaFilesXmlAdapter mediaFilesParser = new MediaFilesXmlAdapter(poi.getMediaFiles());
            XmlNode mediaFilesNode = objNode.SelectSingleNode(mediaFilesParser.getXmlNodeName());
            mediaFilesParser.parse(mediaFilesNode);

            MainDetailsXmlAdapter mainDetailsParser = new MainDetailsXmlAdapter(poi.getMainDetails());
            XmlNode mainDetailsNode = objNode.SelectSingleNode(mainDetailsParser.getXmlNodeName());
            mainDetailsParser.parse(mainDetailsNode);

            return poi;
        }
Example #5
0
 /**
  * Loads Poi media data: media files and main details.
  */
 public void loadMedia(Poi poi, string poiSubDir)
 {
     //Debug.WriteLine("loadMedia: poi sub dir: " + poiSubDir, ToString());
     // load xml document
     XmlDocument poiXmlDoc = new XmlDocument();
     string poiXmlPath = getPoiXmlPath(poiSubDir);
     poiXmlDoc.Load(poiXmlPath);
     // get media files
     XmlNode mediaFilesNode = poiXmlDoc.SelectSingleNode("/poi/media_files");
     if (mediaFilesNode != null)
     {
         MediaFilesXmlAdapter mfxa = new MediaFilesXmlAdapter(poi.getMediaFiles());
         mfxa.parse(mediaFilesNode);
     }
     // get main details
     XmlNode mainDetailsNode = poiXmlDoc.SelectSingleNode("/poi/details");
     if (mainDetailsNode != null)
     {
         MainDetailsXmlAdapter mdxa = new MainDetailsXmlAdapter(poi.getMainDetails());
         mdxa.parse(mainDetailsNode);
     }
     string poiMediaFilesPath = getPoiMediaFilesPath(poiSubDir);
     if (poiMediaFilesPath != null)
     {
         loadMediaFiles(poi.getAllMediaFiles(), poiMediaFilesPath);
     }
 }