ReadElementContentAsString() public method

public ReadElementContentAsString ( ) : string
return string
Example #1
0
        public ExamQuestion(XmlReader reader)
            : this()
        {
            QuestionIdentifier = reader.GetAttribute("identifier");
            Question = reader.GetAttribute("question");
            Image = reader.GetAttribute("image");

            while (!reader.EOF)
            {
                switch (reader.NodeType)
                {
                    case XmlNodeType.Element:
                        if (reader.Name == "Answer")
                            Answer = reader.ReadElementContentAsString();
                        else if (reader.Name == "Distractor")
                            Distractors.Add(reader.ReadElementContentAsString());
                        else
                            reader.Read();
                        break;
                    case XmlNodeType.EndElement:
                        return;
                    default:
                        reader.Read();
                        break;
                }
            }
        }
Example #2
0
File: Udc.cs Project: burstas/rmps
        public bool FromXml(XmlReader reader)
        {
            if (reader == null || reader.Name != "Udc")
            {
                return false;
            }

            if (reader.Name == "Order" || reader.ReadToDescendant("Order"))
            {
                Order = reader.ReadElementContentAsInt();
            }
            if (reader.Name == "Id" || reader.ReadToNextSibling("Id"))
            {
                Id = reader.ReadElementContentAsString();
            }
            if (reader.Name == "Name" || reader.ReadToNextSibling("Name"))
            {
                Name = reader.ReadElementContentAsString();
            }
            if (reader.Name == "Tips" || reader.ReadToNextSibling("Tips"))
            {
                Tips = reader.ReadElementContentAsString();
            }
            if (reader.Name == "Data" || reader.ReadToNextSibling("Data"))
            {
                Data = reader.ReadElementContentAsString();
            }
            if (reader.Name == "Memo" || reader.ReadToNextSibling("Memo"))
            {
                Data = reader.ReadElementContentAsString();
            }
            return true;
        }
        public void ReadXml(System.Xml.XmlReader reader)
        {
            while (reader.Read())
            {
                if (reader.NodeType == XmlNodeType.EndElement)
                {
                    break;
                }
                else if (reader.NodeType == XmlNodeType.Whitespace)
                {
                    continue;
                }
                else if (reader.NodeType == XmlNodeType.Element)
                {
                    switch (reader.Name.ToLowerInvariant())
                    {
                    case "roles":
                        if (!reader.IsEmptyElement)
                        {
                            ReadRoles(reader);
                        }
                        break;

                    case "rolegroupname":
                        RoleGroupName = reader.ReadElementContentAsString();
                        break;

                    case "description":
                        Description = reader.ReadElementContentAsString();
                        break;
                    }
                }
            }
        }
 public void ReadXml(XmlReader reader)
 {
     while (!reader.EOF)
     {
         if (reader.IsStartElement())
         {
             switch (reader.Name)
             {
                 case ModeElementName:
                     TranslitModeEnum mode;
                     string elementContent = reader.ReadElementContentAsString();
                     if (!Enum.TryParse(elementContent, true, out mode))
                     {
                         throw new InvalidDataException(string.Format("Invalit ignore Title value read: {0}",elementContent));
                     }
                     Mode = mode;
                     continue;
                 case FileNameElementName:
                     FileName = reader.ReadElementContentAsString();
                     continue;
             }
         }
         reader.Read();
     }
 }
        internal static MarketplaceAppCapabilityNode ParseXml(XmlReader reader)
        {
            var node = new MarketplaceAppCapabilityNode();

            reader.ReadStartElement();

            while (reader.NodeType != XmlNodeType.EndElement)
            {
                switch (reader.Name)
                {
                    case "id":
                        node.Id = reader.ReadElementContentAsString();
                        break;

                    case "string":
                        node.Title = reader.ReadElementContentAsString();
                        break;

                    case "disclosure":
                        node.Disclosure = reader.ReadElementContentAsString();
                        break;

                    default:
                        reader.Skip();
                        break;
                }
            }

            reader.ReadEndElement();

            return node;
        }
Example #6
0
        /// <summary>
        /// Reads an Xml Subtree and looks for a Node with the name "Location" and "Mood"
        /// If both nodes are found then a Beat object is created and added to the m_BeatsList
        /// </summary>
        /// <param name="Subtree">The XML subtree to Read</param>
        private void CreateBeatFromXmlSubtree(XmlReader Subtree)
        {
            string Location = "";
            string MoodString = "";

            while (Subtree.Read())
            {
                if (Subtree.NodeType == XmlNodeType.Element)
                {
                    switch(Subtree.Name)
                    {
                        case "Location":
                            Location = Subtree.ReadElementContentAsString();
                            break;
                        case "Mood":
                             MoodString = Subtree.ReadElementContentAsString();
                            break;
                    }
                }
            }

            //Ensure both values have been set
            if (Location != "" && MoodString != "")
            {
                m_BeatsList.Add(new Beat(Location, ParseMood(MoodString)));
            }
        }
        internal static WindowsStoreServiceAppScreenshotNode ParseXml(XmlReader reader)
        {
            var node = new WindowsStoreServiceAppScreenshotNode();

            reader.ReadStartElement();

            while (reader.NodeType != XmlNodeType.EndElement)
            {
                switch (reader.Name)
                {
                    case "U":
                        node.Url = reader.ReadElementContentAsString();
                        break;

                    case "Cap":
                        node.Caption = reader.ReadElementContentAsString();
                        break;

                    default:
                        reader.Skip();
                        break;
                }
            }

            reader.ReadEndElement();

            return node;
        }
Example #8
0
 private static string _getHeadersFromEntry(XmlReader oEntry)
 {
     StringBuilder builder = new StringBuilder();
     while (oEntry.Read())
     {
         string str;
         if ((oEntry.NodeType == XmlNodeType.Element) && ((str = oEntry.Name) != null))
         {
             if (!(str == "name"))
             {
                 if (str == "value")
                 {
                     goto Label_0052;
                 }
             }
             else
             {
                 builder.Append(oEntry.ReadElementContentAsString());
                 builder.Append(": ");
             }
         }
         continue;
     Label_0052:
         builder.Append(oEntry.ReadElementContentAsString());
         builder.Append("\r\n");
     }
     return builder.ToString();
 }
Example #9
0
        public override void ReadXml(XmlReader reader)
        {
            if (CheckEmptyNode(reader, "ContactPersonPrimary", Namespace))
                return;

            while (!reader.EOF)
            {
                if (reader.IsStartElement())
                {
                    var isEmpty = reader.IsEmptyElement;
                    switch (reader.LocalName)
                    {
                        case "ContactPerson":
                            ContactPerson = isEmpty ? string.Empty : reader.ReadElementContentAsString();
                            break;
                        case "ContactOrganization":
                            ContactOrganization = isEmpty ? string.Empty : reader.ReadElementContentAsString();
                            break;

                        default:
                            reader.Skip();
                            break;
                    }
                }
                else if (reader.NodeType == XmlNodeType.EndElement)
                {
                    reader.ReadEndElement();
                    return;
                }
                else
                {
                    reader.Read();
                }
            }
        }
Example #10
0
 void IFlickrParsable.Load(XmlReader reader)
 {
     reader.Read();
       while (reader.LocalName != "photos")
       {
     switch (reader.LocalName)
     {
       case "firstdatetaken":
     this.FirstTakenDate = UtilityMethods.ParseDateWithGranularity(reader.ReadElementContentAsString());
     continue;
       case "firstdate":
     this.FirstDate = UtilityMethods.UnixTimestampToDate(reader.ReadElementContentAsString());
     continue;
       case "count":
     this.PhotoCount = reader.ReadElementContentAsInt();
     continue;
       case "views":
     this.Views = reader.ReadElementContentAsInt();
     continue;
       default:
     reader.Skip();
     continue;
     }
       }
       reader.Read();
 }
Example #11
0
        /// <summary>
        /// Parse the results of the Bing search
        /// </summary>
        /// <param name="reader">The xml reader containing the search results</param>
        public Collection<Article> ParseItems(XmlReader reader, Feed ownerFeed)
        {
            Collection<Article> results = new Collection<Article>();
            reader.ReadToFollowing("item");
            do
            {
                if (reader.ReadToFollowing("title"))
                {
                    string name = reader.ReadElementContentAsString();

                    if (reader.ReadToFollowing("link"))
                    {
                        string uri = reader.ReadElementContentAsString();

                        // Assign feed information to Article object.
                        Article newResult = new Article
                        {
                            ArticleTitle = name,
                            ArticleBaseURI = uri
                        };
                        // Safely add the search result to the collection.
                        lock (_lockObject)
                        {
                            results.Add(newResult);
                        }
                    }
                }
            } while (reader.ReadToFollowing("item"));
            return results;
        }
Example #12
0
            public new void ReadXml(System.Xml.XmlReader reader)
            {
                if (null == reader)
                {
                    throw new ArgumentNullException("reader");
                }

                reader.ReadStartElement();

                while (reader.NodeType != XmlNodeType.EndElement)
                {
                    switch (reader.LocalName)
                    {
                    case "Finger":
                        _finger = reader.ReadElementContentAsString();
                        break;

                    case "Name":
                        _name = reader.ReadElementContentAsString();
                        break;

                    case "ServiceObject":
                        _ServiceObject = reader.ReadElementContentAsString();
                        break;

                    case "BaseClassData":
                        base.ReadXml(reader);
                        break;

                    default:
                        throw new Exception("Unexpected element in xml");
                    }
                }
                reader.ReadEndElement();
            }
Example #13
0
File: MRen.cs Project: burstas/rmps
        public bool FromXml(XmlReader reader)
        {
            if (reader == null || reader.Name != "Ren" || !reader.IsStartElement())
            {
                return false;
            }

            if (reader.Name == "Order" || reader.ReadToDescendant("Order"))
            {
                Order = reader.ReadElementContentAsInt();
            }
            if (reader.Name == "Id" || reader.ReadToNextSibling("Id"))
            {
                Id = reader.ReadElementContentAsString();
            }
            if (reader.Name == "Name" || reader.ReadToNextSibling("Name"))
            {
                Name = reader.ReadElementContentAsString();
            }
            if (reader.Name == "Command" || reader.ReadToNextSibling("Command"))
            {
                Command = reader.ReadElementContentAsString();
            }
            if (reader.Name == "Remark" || reader.ReadToNextSibling("Remark"))
            {
                Remark = reader.ReadElementContentAsString();
            }
            if (reader.Name == "Ren" && reader.NodeType == XmlNodeType.EndElement)
            {
                reader.ReadEndElement();
            }
            return true;
        }
Example #14
0
        protected virtual void ReadXml(XmlReader reader, SyndicationFeed result)
        {
            if (result == null)
                throw new ArgumentNullException("result");
            if (reader == null)
                throw new ArgumentNullException("reader");

            reader.ReadStartElement();              // Read in <RDF>
            reader.ReadStartElement("channel");     // Read in <channel>
            while (reader.IsStartElement())         // Process <channel> children
            {
                if (reader.IsStartElement("title"))
                    result.Title = new TextSyndicationContent(reader.ReadElementContentAsString());
                else if (reader.IsStartElement("link"))
                    result.Links.Add(new SyndicationLink(new Uri(reader.ReadElementContentAsString())));
                else if (reader.IsStartElement("description"))
                    result.Description = new TextSyndicationContent(reader.ReadElementContentAsString());            
                else
                    reader.Skip();
            }
            reader.ReadEndElement();                // Read in </channel>

            while (reader.IsStartElement())
            {
                if (reader.IsStartElement("item"))
                {
                    result.Items = ReadItems(reader, result);

                    break;
                }
                reader.Skip();
            }
        }
		private void readItems(XmlReader reader) {
			reader.ReadToFollowing ("ItemDatabase");
			bool continueReading = reader.ReadToDescendant ("Item");

			while (continueReading) {
				//Read all information from the .xml-file
				reader.ReadToDescendant ("Id");
				int id = reader.ReadElementContentAsInt ();
				reader.ReadToNextSibling ("Name");
				string name = reader.ReadElementContentAsString ();
				reader.ReadToNextSibling ("Description");
				string desc = reader.ReadElementContentAsString ();
				reader.ReadToNextSibling ("Value");
				int value = reader.ReadElementContentAsInt ();
				reader.ReadToNextSibling ("Type");
				string type = reader.ReadElementContentAsString ();
				ItemType t = type.StringToType ();

				//And add the item to the database
				Item i = new Item (name, desc, value, t, id);

				//check for attributes and add them to the item
				checkForAttributes(reader, i);

				//Add the item to the databse and read end element
				items.Add(i);
				reader.ReadEndElement ();
				//Check if there is another item to read
				continueReading = reader.ReadToNextSibling ("Item");
			}
		}
Example #16
0
        public Searchers(XmlReader reader)
        {
            this.Choices = new List<Choice>();
            this.CurrentSearch = "";

            reader.Read();
            if (reader.Name != "TheSearchers")
                return; // bail out

            reader.Read();
            while (!reader.EOF)
            {
                if ((reader.Name == "TheSearchers") && !reader.IsStartElement())
                    break; // all done

                if (reader.Name == "Current")
                    this.CurrentSearch = reader.ReadElementContentAsString();
                else if (reader.Name == "Choice")
                {
                    string url = reader.GetAttribute("URL");
                    if (url == null)
                        url = reader.GetAttribute("URL2");
                    else
                    {
                        // old-style URL, replace "!" with "{ShowName}+{Season}+{Episode}"
                        url = url.Replace("!", "{ShowName}+{Season}+{Episode}");
                    }
                    this.Add(reader.GetAttribute("Name"), url);
                    reader.ReadElementContentAsString();
                }
                else
                    reader.ReadOuterXml();
            }
        }
        internal static void Read(XmlReader reader, Item item)
        {
            if (reader == null)
                throw new ArgumentNullException("reader");
            if (item == null)
                throw new ArgumentNullException("item");

            if (reader.IsEmptyElement)
            {
                SerializationHelper.SkipNode(reader);
                return;
            }

            reader.ReadStartElement(ItemSerializer.Item);
            reader.MoveToContent();

            while (!reader.EOF)
            {
                if (SerializationHelper.IsEndElement(reader, ItemSerializer.Item))
                {
                    SerializationHelper.SkipNode(reader);
                    break;
                }

                if (reader.NodeType == XmlNodeType.Element)
                {
                    switch (reader.Name)
                    {
                        case ItemSerializer.Id:
                            item.Id = reader.ReadElementContentAsString();
                            break;
                        case ItemSerializer.Description:
                            item.Description = reader.ReadElementContentAsString();
                            break;
                        case ItemSerializer.Quantity:
                            item.Quantity = reader.ReadElementContentAsInt();
                            break;
                        case ItemSerializer.Amount:
                            item.Amount = reader.ReadElementContentAsDecimal();
                            break;
                        case ItemSerializer.Weight:
                            item.Weight = reader.ReadElementContentAsLong();
                            break;
                        case ItemSerializer.ShippingCost:
                            item.ShippingCost = reader.ReadElementContentAsDecimal();
                            break;
                        default:
                            SerializationHelper.SkipElement(reader);
                            break;
                    }
                }
                else
                {
                    SerializationHelper.SkipNode(reader);
                }
            }
        }
        //Attempt to read batch.xml to load previous settings
        //If anything goes wrong, just start without any preloaded settings
        public void ReadXml(XmlReader reader)
        {
            try
            {
                FileDescs = new Dictionary<string, FbxFileDesc>();

                reader.ReadToFollowing("BatchConversion");

                reader.ReadToDescendant("Output");
                OutputDir = reader.ReadElementContentAsString();

                while (reader.LocalName == "FbxFile")
                {
                    var newFile = new FbxFileDesc();

                    reader.ReadToDescendant("Filename");
                    var newFilename = reader.ReadElementContentAsString();

                    if (reader.LocalName != "CollisionGeneration")
                        reader.ReadToNextSibling("CollisionGeneration");

                    newFile.CollisionType = reader.ReadElementContentAsString();

                    while (reader.LocalName == "AnimClip")
                    {
                        var newClip = new AnimationClipDesc();

                        reader.ReadToDescendant("Name");
                        var newClipName = reader.ReadElementContentAsString();

                        if (reader.LocalName != "Keyframes")
                        reader.ReadToNextSibling("Keyframes");

                        newClip.BeginFrame = double.Parse(reader.GetAttribute("Begin"));
                        newClip.EndFrame = double.Parse(reader.GetAttribute("End"));
                        newClip.Fps = double.Parse(reader.GetAttribute("FPS"));

                        reader.Read();
                        reader.ReadEndElement();

                        newFile.AnimationClips.Add(newClipName, newClip);
                    }

                    reader.ReadEndElement();
                    FileDescs.Add(newFilename, newFile);
                }
            }
            catch (Exception)
            {
                MessageBox.Show(ParentWindow, "Unable to read batch.xml, starting with a clean slate...",
                                "Error", MessageBoxButton.OK,
                                MessageBoxImage.Error);
                FileDescs = new Dictionary<string, FbxFileDesc>();
                OutputDir = "";
            }
        }
        /// <summary>
        /// Generates a serializable continuation token from its XML representation.
        /// </summary>
        /// <param name="reader">The <see cref="T:System.Xml.XmlReader"/> stream from which the continuation token is deserialized.</param>
        void IXmlSerializable.ReadXml(System.Xml.XmlReader reader)
        {
            CommonUtils.AssertNotNull("reader", reader);

            reader.MoveToContent();

            bool isEmptyElement = reader.IsEmptyElement;

            reader.ReadStartElement();

            if (!isEmptyElement)
            {
                bool more = true;
                while (more)
                {
                    if (reader.NodeType == XmlNodeType.Element && !reader.IsEmptyElement)
                    {
                        switch (reader.Name)
                        {
                        case VersionElement:
                            string version = reader.ReadElementContentAsString();
                            Console.WriteLine(version);

                            // For future versioning
                            break;

                        case NextMarkerElement:
                            this.NextMarker = reader.ReadElementContentAsString();
                            break;

                        case NextPartitionKeyElement:
                            this.NextPartitionKey = reader.ReadElementContentAsString();
                            break;

                        case NextRowKeyElement:
                            this.NextRowKey = reader.ReadElementContentAsString();
                            break;

                        case NextTableNameElement:
                            this.NextTableName = reader.ReadElementContentAsString();
                            break;

                        case TypeElement:
                            this.Type = (ContinuationType)Enum.Parse(typeof(ContinuationType), reader.ReadElementContentAsString());
                            break;
                        }
                    }
                    else
                    {
                        more = reader.Read();
                    }
                }
            }
        }
Example #20
0
 void IFlickrParsable.Load(XmlReader reader)
 {
     this.Load(reader, false);
       if (reader.LocalName == "comment")
     this.Comment = reader.ReadElementContentAsString();
       if (reader.LocalName == "description")
     this.Description = reader.ReadElementContentAsString();
       if (reader.NodeType != XmlNodeType.EndElement || !(reader.LocalName == "photo"))
     return;
       reader.Skip();
 }
Example #21
0
 void IFlickrParsable.Load(XmlReader reader)
 {
     while (reader.MoveToNextAttribute())
       {
     switch (reader.LocalName)
     {
       case "nsid":
     this.InstitutionId = reader.Value;
     continue;
       case "date_launch":
     this.DateLaunched = UtilityMethods.UnixTimestampToDate(reader.Value);
     continue;
       default:
     continue;
     }
       }
       reader.Read();
       while (reader.NodeType != XmlNodeType.EndElement)
       {
     switch (reader.LocalName)
     {
       case "name":
     this.InstitutionName = reader.ReadElementContentAsString();
     continue;
       case "urls":
     reader.Read();
     while (reader.LocalName == "url")
     {
       string attribute = reader.GetAttribute("type");
       string str = reader.ReadElementContentAsString();
       switch (attribute)
       {
         case "site":
           this.SiteUrl = str;
           continue;
         case "flickr":
           this.FlickrUrl = str;
           continue;
         case "license":
           this.LicenseUrl = str;
           continue;
         default:
           continue;
       }
     }
     reader.Read();
     continue;
       default:
     continue;
     }
       }
       reader.Read();
 }
Example #22
0
 private string ReadXmlDimension(XmlReader r)
 {
     r.ReadStartElement("tr");
     string returnValue="";
     string dimension = r.ReadElementContentAsString();
     if (dimension!="Coordinates")
     {
         returnValue= r.ReadElementContentAsString();
     }
     r.ReadEndElement();
     return returnValue;
 }
Example #23
0
        /// <summary>
        /// 
        /// </summary>
        /// <param name="reader"></param>
        /// <param name="item"></param>
        internal static void Read(XmlReader reader, Item item)
        {

            if (reader.IsEmptyElement)
            {
                XMLParserUtils.SkipNode(reader);
                return;
            }

            reader.ReadStartElement(ItemSerializer.Item);
            reader.MoveToContent();

            while (!reader.EOF)
            {
                if (XMLParserUtils.IsEndElement(reader, ItemSerializer.Item))
                {
                    XMLParserUtils.SkipNode(reader);
                    break;
                }

                if (reader.NodeType == XmlNodeType.Element)
                {
                    switch (reader.Name)
                    {
                        case ItemSerializer.Id:
                            item.Id = reader.ReadElementContentAsString();
                            break;
                        case ItemSerializer.Description:
                            item.Description = reader.ReadElementContentAsString();
                            break;
                        case ItemSerializer.Quantity:
                            item.Quantity = reader.ReadElementContentAsInt();
                            break;
                        case ItemSerializer.Amount:
                            item.Amount = reader.ReadElementContentAsDecimal();
                            break;
                        case ItemSerializer.Weight:
                            item.Weight = reader.ReadElementContentAsLong();
                            break;
                        case ItemSerializer.ShippingCost:
                            item.ShippingCost = reader.ReadElementContentAsDecimal();
                            break;
                        default:
                            XMLParserUtils.SkipElement(reader);
                            break;
                    }
                }
                else
                {
                    XMLParserUtils.SkipNode(reader);
                }
            }
        }
Example #24
0
File: MSec.cs Project: burstas/rmps
        public bool FromXml(XmlReader reader)
        {
            Algorithm = reader.ReadElementContentAsString();

            BlockSize = reader.ReadElementContentAsInt();

            string salt = reader.ReadElementContentAsString();
            //_Salt = null;

            string mask = reader.ReadElementContentAsString();
            //_Mask = null;
            return true;
        }
Example #25
0
 private static RetailCustomer ReadRetail(XmlReader xmlIn)
 {
     RetailCustomer customer = new RetailCustomer();
     customer.FirstName =
         xmlIn.ReadElementContentAsString();
     customer.LastName =
         xmlIn.ReadElementContentAsString();
     customer.Email =
         xmlIn.ReadElementContentAsString();
     customer.HomePhone =
         xmlIn.ReadElementContentAsString();
     return customer;
 }
        void IFlickrParsable.Load(XmlReader reader)
        {
            Load(reader, false);

            if (reader.LocalName == "comment")
                Comment = reader.ReadElementContentAsString();

            if (reader.LocalName == "description")
                Description = reader.ReadElementContentAsString();

            if (reader.NodeType == XmlNodeType.EndElement && reader.LocalName == "photo")
                reader.Skip();
        }
        /// <summary>
        /// 
        /// </summary>
        /// <param name="reader"></param>
        /// <param name="result">PagSeguro AuthorizationSummary</param>
        internal static void Read(XmlReader reader, AuthorizationSummary result)
        {
            if (reader.IsEmptyElement)
            {
                XMLParserUtils.SkipNode(reader);
                return;
            }

            reader.ReadStartElement(SerializerHelper.Authorization);

            reader.MoveToContent();

            while (!reader.EOF)
            {

                if (XMLParserUtils.IsEndElement(reader, SerializerHelper.Authorization))
                {
                    XMLParserUtils.SkipNode(reader);
                    break;
                }

                if (reader.NodeType == XmlNodeType.Element)
                {
                    switch (reader.Name)
                    {
                        case SerializerHelper.Code:
                            result.Code = reader.ReadElementContentAsString();
                            break;
                        case SerializerHelper.CreationDate:
                            result.CreationDate = reader.ReadElementContentAsDateTime();
                            break;
                        case SerializerHelper.Reference:
                            result.Reference = reader.ReadElementContentAsString();
                            break;
                        case SerializerHelper.Account:
                            AuthorizationAccountSerializer.Read(reader, result);
                            break;
                        case SerializerHelper.Permissions:
                            AuthorizationPermissionListSerializer.Read(reader, result.Permissions);
                            break;
                        default:
                            XMLParserUtils.SkipElement(reader);
                            break;
                    }
                }
                else
                {
                    XMLParserUtils.SkipNode(reader);
                }
            }
        }
Example #28
0
        public static Dictionary<string, string> Databases(XmlReader rdr)
        {
            var dbs = new Dictionary<string, string>();

            if (rdr.NameTable == null) return dbs;

            var eDatabases = rdr.NameTable.Add("Databases");
            var eDatabase = rdr.NameTable.Add("Database");
            var eName = rdr.NameTable.Add("Name");
            var eID = rdr.NameTable.Add("ID");
            string name;
            string id;
            while (rdr.Read())
            {
                if (rdr.NodeType == XmlNodeType.Element
                    && rdr.LocalName == eDatabases)
                {
                    while (rdr.Read())
                    {
                        if (rdr.NodeType == XmlNodeType.Element
                            && rdr.LocalName == eDatabase)
                        {
                            name = "";
                            id = "";
                            while (rdr.Read())
                            {
                                if (rdr.NodeType == XmlNodeType.Element
                                && rdr.LocalName == eName)
                                {
                                    name = rdr.ReadElementContentAsString();
                                }
                                if (rdr.NodeType == XmlNodeType.Element
                                && rdr.LocalName == eID)
                                {
                                    id = rdr.ReadElementContentAsString();
                                }

                                if (rdr.NodeType == XmlNodeType.EndElement
                                    && rdr.LocalName == eDatabase) break;
                            }
                            dbs.Add(name, id);
                        }
                        if (rdr.NodeType == XmlNodeType.EndElement
                            && rdr.LocalName == eDatabases) break;
                    }
                    if (rdr.NodeType == XmlNodeType.EndElement
                            && rdr.LocalName == eDatabases) break;
                }
            }
            return dbs;
        }
Example #29
0
        /// <summary>
        /// Generates a serializable continuation token from its XML representation.
        /// </summary>
        /// <param name="reader">The <see cref="T:System.Xml.XmlReader"/> stream from which the continuation token is deserialized.</param>
        public void ReadXml(System.Xml.XmlReader reader)
        {
            CommonUtils.AssertNotNull("reader", reader);

            reader.MoveToContent();

            bool isEmptyElement = reader.IsEmptyElement;

            reader.ReadStartElement();

            if (!isEmptyElement)
            {
                while (reader.NodeType == XmlNodeType.Element && !reader.IsEmptyElement)
                {
                    if (!reader.IsEmptyElement)
                    {
                        switch (reader.Name)
                        {
                        case Constants.ContinuationConstants.VersionElement:
                            string version = reader.ReadElementContentAsString();

                            // For future versioning
                            break;

                        case Constants.ContinuationConstants.NextMarkerElement:
                            this.NextMarker = reader.ReadElementContentAsString();
                            break;

                        case Constants.ContinuationConstants.TypeElement:
                            string continuationType = reader.ReadElementContentAsString();
                            if ("Queue" != continuationType)
                            {
                                throw new System.Xml.XmlException(SR.UnexpectedContinuationType);
                            }

                            break;

                        default:
                            throw new XmlException(string.Format(SR.UnexpectedElement, reader.Name));
                        }
                    }
                    else
                    {
                        throw new XmlException(string.Format(SR.UnexpectedEmptyElement, reader.Name));
                    }
                }

                reader.ReadEndElement();
            }
        }
        internal static void Read(XmlReader reader, Sender sender)
        {
            if (reader == null)
                throw new ArgumentNullException("reader");
            if (sender == null)
                throw new ArgumentNullException("sender");

            if (reader.IsEmptyElement)
            {
                SerializationHelper.SkipNode(reader);
                return;
            }

            reader.ReadStartElement(SenderSerializer.Sender);
            reader.MoveToContent();

            while (!reader.EOF)
            {
                if (SerializationHelper.IsEndElement(reader, SenderSerializer.Sender))
                {
                    SerializationHelper.SkipNode(reader);
                    break;
                }

                if (reader.NodeType == XmlNodeType.Element)
                {
                    switch (reader.Name)
                    {
                        case SenderSerializer.Name:
                            sender.Name = reader.ReadElementContentAsString();
                            break;
                        case SenderSerializer.Email:
                            sender.Email = reader.ReadElementContentAsString();
                            break;
                        case PhoneSerializer.Phone:
                            Phone phone = new Phone();
                            PhoneSerializer.Read(reader, phone);
                            sender.Phone = phone;
                            break;
                        default:
                            SerializationHelper.SkipElement(reader);
                            break;
                    }
                }
                else
                {
                    SerializationHelper.SkipNode(reader);
                }
            }
        }
Example #31
0
        /// <summary>
        /// Parses a single error element from the reader
        /// </summary>
        /// <param name="reader">The reader to read from.</param>
        /// <returns>The exception parsed.</returns>
        private static Exception ParseInStreamSingleError(XmlReader reader)
        {
            string type = null;
            string stackTrace = null;
            string message = null;
            Exception innerException = null;

            reader.Read();
            reader.Read();
            while (!reader.EOF)
            {
                if (reader.NodeType != XmlNodeType.Element ||
                    reader.NamespaceURI != UnitTestsUtil.MetadataNamespace.NamespaceName)
                {
                    reader.Read();
                    continue;
                }

                switch (reader.LocalName)
                {
                    case "message":
                        message = reader.ReadElementContentAsString(); break;
                    case "type":
                        type = reader.ReadElementContentAsString(); break;
                    case "stacktrace":
                        stackTrace = reader.ReadElementContentAsString(); break;
                    case "innererror":
                        innerException = ParseInStreamSingleError(reader.ReadSubtree());
                        break;
                    default:
                        reader.Skip();
                        break;
                }
            }

            Exception exception;
            switch (type)
            {
                case "System.InvalidOperationException":
                    exception = new InvalidOperationException(message, innerException);
                    break;
                default:
                    exception = new DataServiceException(message, innerException);
                    break;
            }

            exception.Data["StackTrace"] = stackTrace;
            return exception;
        }
        internal static PagSeguroServiceError Read(XmlReader reader)
        {
            if (reader == null)
                throw new ArgumentNullException("reader");

            string code = String.Empty;
            String message = String.Empty;

            if (reader.IsEmptyElement)
            {
                SerializationHelper.SkipNode(reader);
                return new PagSeguroServiceError(code, message);
            }

            reader.ReadStartElement(PagSeguroErrorSerializer.Error);
            reader.MoveToContent();

            while (!reader.EOF)
            {
                if (SerializationHelper.IsEndElement(reader, PagSeguroErrorSerializer.Error))
                {
                    SerializationHelper.SkipNode(reader);
                    break;
                }

                if (reader.NodeType == XmlNodeType.Element)
                {
                    switch (reader.Name)
                    {
                        case PagSeguroErrorSerializer.Code:
                            code = reader.ReadElementContentAsString();
                            break;
                        case PagSeguroErrorSerializer.Message:
                            message = reader.ReadElementContentAsString();
                            break;
                        default:
                            SerializationHelper.SkipElement(reader);
                            break;
                    }
                }
                else
                {
                    SerializationHelper.SkipNode(reader);
                }
            }

            PagSeguroServiceError error = new PagSeguroServiceError(code, message);
            return error;
        }
        public void ReadFromXml(XmlReader reader)
        {
            reader.MoveToContent();
            if( reader.IsEmptyElement ) { reader.Read(); return; }
            reader.Read();
            while( ! reader.EOF )
            {
                if( reader.IsStartElement() )
                {
                    switch( reader.Name )
                    {
                        case "path":
                            path = reader.ReadElementContentAsString();
                            break;
                        case "name":
                            name = reader.ReadElementContentAsString();
                            break;
                        case "value":
                            valueRaw = reader.ReadElementContentAsString();
                            break;
                        case "type":
                            string valueTxt = reader.ReadElementContentAsString();
                            type = RegistryValueKind.Unknown;
                            switch (valueTxt)
                            {
                                case "REG_DWORD":
                                    type = RegistryValueKind.DWord;
                                    break;
                                case "REG_BINARY":
                                    type = RegistryValueKind.Binary;
                                    break;
                                case "REG_SZ":
                                    type = RegistryValueKind.String;
                                    break;
                            }

                            break;
                        default:
                            reader.Skip();
                            break;
                    }
                }
                else
                {
                    reader.Read();
                    break;
                }
            }
        }
Example #34
0
        internal Identity(XmlReader reader)
        {
            if (reader.IsEmptyElement)
                throw new Exception("Expected a non-empty <Owner> element.");

            // Example:
            // <Owner>
            //     <ID>bcaf1ffd86f41caff1a493dc2ad8c2c281e37522a640e161ca5fb16fd081034f</ID>
            //     <DisplayName>webfile</DisplayName>
            // </Owner>
            reader.ReadStartElement("Owner");
            this.ID = reader.ReadElementContentAsString("ID", "");
            this.DisplayName = reader.ReadElementContentAsString("DisplayName", "");
            reader.ReadEndElement();
        }
Example #35
0
        /// <summary>
        /// Custom helper to deserialize a SqlException object from Xml.
        /// </summary>
        private static SqlException DeserializeSqlException(System.Xml.XmlReader reader)
        {
            // SqlException constructor takes in two parameters, an errorCollection and a serverVersion.
            SqlErrorCollection errorCollection = (SqlErrorCollection)typeof(SqlErrorCollection).GetConstructor(BindingFlags.NonPublic | BindingFlags.Instance, null, System.Type.EmptyTypes, null).Invoke(null);;
            string             serverVersion   = null;

            // Read the subtree and fill in the parameters.
            int startDepth = reader.Depth;

            reader.ReadStartElement();
            while (reader.Depth > startDepth)
            {
                switch (reader.Name)
                {
                case "serverVersion":
                    serverVersion = reader.ReadElementContentAsString();
                    break;

                case "SqlError":
                    SqlError newSqlError = DeserializeSqlError(reader);
                    errorCollection.GetType().GetMethod("Add", BindingFlags.NonPublic | BindingFlags.Instance).Invoke(errorCollection, new object[] { newSqlError });
                    break;
                }
            }
            reader.ReadEndElement();

            // Use reflection to create the SqlException.
            Type sqlExceptionType = typeof(SqlException);

            Type[]     types = { typeof(SqlErrorCollection), typeof(String) };
            MethodInfo info  = sqlExceptionType.GetMethod("CreateException", BindingFlags.Static | BindingFlags.NonPublic, null, types, null);

            return((SqlException)info.Invoke(null, new object[] { errorCollection, serverVersion }));
        }
Example #36
0
        /// <summary>
        /// Generates an object from its XML representation.
        /// </summary>
        /// <param name="reader">The <see cref="T:System.Xml.XmlReader"/> stream from which the object is deserialized.</param>
        public void ReadXml(System.Xml.XmlReader reader)
        {
            reader.Read();
            _name = reader.ReadElementContentAsString();

            Assembly assembly = Assembly.GetAssembly(typeof(IOperation));

            try
            {
                string operation = reader.Name;
                Type   type      = assembly.GetType(assembly.GetName().Name + "." + operation);
                // Operationen holen
                XmlSerializer xmlSerializer = new XmlSerializer(type);
                _operation = xmlSerializer.Deserialize(reader) as IOperation;
                reader.Read();
                // Informationen
                FillVariableInformation();
                // Beispiel für Erzeugung einer Instanz über Reflektion
                //object ob = Activator.CreateInstance(assemblyName, typeof(Or).FullName);
                //object ob = Activator.CreateInstance(type);
            }
            catch (Exception ex)
            {
                Logger.LogCritical("ReadXML throws an exception: ", ex);
            }
        }
Example #37
0
        /// <summary>
        /// Generates an object from its XML representation.
        /// </summary>
        /// <param name="reader">The <see cref="T:System.Xml.XmlReader"/> stream from which the object is deserialized.</param>
        public virtual void ReadXml(System.Xml.XmlReader reader)
        {
            reader.Read();

            Assembly assembly = Assembly.GetExecutingAssembly();

            while (reader.NodeType != XmlNodeType.EndElement)
            {
                string operation = reader.Name;
                Type   type      = assembly.GetType(assembly.GetName().Name + "." + operation);

                // Ausnahme beim VariablenOperator
                if (type == typeof(VariablesOperator))
                {
                    VariablesOperator op;
                    reader.Read();
                    string varName = reader.ReadElementContentAsString();
                    reader.Read();
                    if (!VariablesOperator.VarOperatorList.TryGetValue(varName, out op))
                    {
                        op = new VariablesOperator(varName);
                        VariablesOperator.VarOperatorList.Add(varName, op);
                    }
                    AddOperator(op);
                }
                else
                {
                    XmlSerializer xmlSerializer = new XmlSerializer(type);
                    IOperation    op            = xmlSerializer.Deserialize(reader) as IOperation;
                    AddOperator(op);
                }
            }

            reader.Read();
        }
Example #38
0
 public override void ReadXml(System.Xml.XmlReader reader)
 {
     base.ReadXml(reader);
     reader.ReadStartElement();
     Date = XmlConvert.ToDateTime(reader.ReadElementContentAsString(XmlTags.Date, ""), XmlDateTimeSerializationMode.Utc);
     reader.ReadEndElement();
 }
Example #39
0
        public void ReadXml(System.Xml.XmlReader reader)
        {
            if (reader.IsEmptyElement)
            {
                return;
            }

            while (reader.Read())
            {
                if (reader.NodeType == System.Xml.XmlNodeType.Element)
                {
                    if (reader.Name == "Key")
                    {
                        this.Key = reader.ReadElementContentAsString();
                    }
                    if (reader.Name == "Expire")
                    {
                        var      expire     = reader.ReadElementContentAsString();
                        DateTime realExpire = DateTime.Now;
                        if (DateTime.TryParse(expire, out realExpire))
                        {
                            this.Expire = realExpire;
                        }
                    }
                    if (reader.Name == "Value")
                    {
                        var valueType = reader.GetAttribute("Type");
                        var type      = Type.GetType(valueType);
                        var valueStr  = string.Empty;
                        while (reader.Read())
                        {
                            if (reader.NodeType == System.Xml.XmlNodeType.CDATA)
                            {
                                valueStr = reader.Value;
                                break;
                            }
                        }
                        this.Value = XmlSerialize.DeserializeFromString(type, valueStr);
                    }
                }
            }
        }
Example #40
0
        private void RestoreFiles(Excel.Worksheet thisSheet, string propname)
        {
            string vals = Utilities.ExcelHelpers.getWorksheetCustomProperty(thisSheet, propname);

            if (vals != null)
            {
                System.Xml.XmlReader xvals = System.Xml.XmlReader.Create(new System.IO.StringReader(vals));
                string x = "";
                string y = "";
                string z = "";
                while (xvals.Read())
                {
                    if (xvals.NodeType == System.Xml.XmlNodeType.Element && xvals.Name == "SourceFile")
                    {
                        x = "";
                        y = "";
                        z = "";
                    }
                    if (xvals.NodeType == System.Xml.XmlNodeType.Element && xvals.Name == "FileName")
                    {
                        z = xvals.ReadElementContentAsString();
                    }
                    if (xvals.NodeType == System.Xml.XmlNodeType.Element && xvals.Name == "SQLStatement")
                    {
                        y = xvals.ReadElementContentAsString();
                    }
                    if (xvals.NodeType == System.Xml.XmlNodeType.Element && xvals.Name == "DisplayName")
                    {
                        x = xvals.ReadElementContentAsString();
                    }
                    if (xvals.NodeType == System.Xml.XmlNodeType.EndElement && xvals.Name == "SourceFile")
                    {
                        if (!files.Contains(new SourceFile(y, x, z, true)))
                        {
                            files.Add(new SourceFile(y, x, z, true));
                        }
                    }
                }
            }
            AddFilesToList();
        }
        public void ReadXml(System.Xml.XmlReader reader)
        {
            reader.ReadStartElement();

            if (reader.Name == "intObjects")
            {
                reader.ReadStartElement();
                while (reader.NodeType != System.Xml.XmlNodeType.EndElement)
                {
                    string s = reader.Name;
                    int    i = reader.ReadElementContentAsInt(s, "");
                    SetInt(s, i);
                }
                reader.ReadEndElement();
            }

            if (reader.Name == "floatObjects")
            {
                reader.ReadStartElement();
                while (reader.NodeType != System.Xml.XmlNodeType.EndElement)
                {
                    string s = reader.Name;
                    float  f = reader.ReadElementContentAsFloat(s, "");
                    SetFloat(s, f);
                }
                reader.ReadEndElement();
            }

            if (reader.Name == "boolObjects")
            {
                reader.ReadStartElement();
                while (reader.NodeType != System.Xml.XmlNodeType.EndElement)
                {
                    string s = reader.Name;
                    bool   b = reader.ReadElementContentAsBoolean(s, "");
                    SetBool(s, b);
                }
                reader.ReadEndElement();
            }

            if (reader.Name == "vectorObjects")
            {
                reader.ReadStartElement();
                while (reader.NodeType != System.Xml.XmlNodeType.EndElement)
                {
                    string s       = reader.Name;
                    string content = reader.ReadElementContentAsString(s, "");
                }
                reader.ReadEndElement();
            }

            reader.ReadEndElement();
        }
Example #42
0
        public void ReadXmlContent(System.Xml.XmlReader reader)
        {
            reader.MoveToContent();
            reader.Read();

            bool done = false;

            while (reader.MoveToContent() == XmlNodeType.Element)
            {
                switch (reader.Name)
                {
                case "aliaces":
                    if (reader.ReadToDescendant("aliace"))
                    {
                        List <string> aList = new List <string>();
                        while (reader.MoveToContent() == XmlNodeType.Element)
                        {
                            if (!reader.IsEmptyElement)
                            {
                                string aliace = reader.ReadElementContentAsString();
                                if (!string.IsNullOrEmpty(aliace))
                                {
                                    if (!aList.Contains(aliace))
                                    {
                                        aList.Add(aliace);
                                    }
                                }
                            }
                            if (!reader.Read())
                            {
                                break;
                            }
                        }
                        //MergeAliaces(aList);
                        ALIACES = aList;
                    }
                    break;

                default:
                {
                    done = true;
                    break;
                }
                }
                reader.MoveToContent();
                if (done || !reader.Read())
                {
                    break;
                }
            }
        }
        public void ReadXml(System.Xml.XmlReader reader)
        {
            src = reader.GetAttribute("src") ?? System.String.Empty;
            bool isEmptyElement = reader.IsEmptyElement;

            if (!isEmptyElement) // (1)
            {
                Value = reader.ReadElementContentAsString();
            }
            else
            {
                Value = System.String.Empty;
            }
        }
Example #44
0
        public void ReadXml(System.Xml.XmlReader reader)
        {
            bool wasEmpty = reader.IsEmptyElement;

            if (wasEmpty)
            {
                return;
            }

            reader.Read();
            while (reader.NodeType == XmlNodeType.Element)
            {
                string key   = reader.GetAttribute("key");
                string value = reader.ReadElementContentAsString();
                this[key] = value;
            }
            reader.ReadEndElement();
        }
Example #45
0
        /// <summary>
        /// Custom helper to deserialize a SqlError object from Xml.
        /// </summary>
        private static SqlError DeserializeSqlError(System.Xml.XmlReader reader)
        {
            Dictionary <string, string> sqlErrorParameters = new Dictionary <string, string>();

            // Read the subtree and fill in the parameters.
            int startDepth = reader.Depth;

            reader.ReadStartElement();
            while (reader.Depth > startDepth)
            {
                string name  = reader.Name;
                string value = reader.ReadElementContentAsString();
                sqlErrorParameters.Add(name, value);
            }
            reader.ReadEndElement();
            // Make sure all parameters were defined.
            if ((!sqlErrorParameters.ContainsKey("infoNumber")) ||
                (!sqlErrorParameters.ContainsKey("errorState")) ||
                (!sqlErrorParameters.ContainsKey("errorClass")) ||
                (!sqlErrorParameters.ContainsKey("server")) ||
                (!sqlErrorParameters.ContainsKey("errorMessage")) ||
                (!sqlErrorParameters.ContainsKey("procedure")) ||
                (!sqlErrorParameters.ContainsKey("lineNumber")))
            {
                // Incomplete definition
                throw new XmlException("Incomplete definition of 'SqlError' in mock query result.");
            }

            // Using reflection to create a new SqlError object.
            SqlError newSqlError = (SqlError)typeof(SqlError).GetConstructor(BindingFlags.NonPublic | BindingFlags.Instance, null, new Type[] {
                typeof(int), typeof(byte), typeof(byte), typeof(string), typeof(string), typeof(string), typeof(int)
            }, null).Invoke(new object[] {
                int.Parse(sqlErrorParameters["infoNumber"]),
                byte.Parse(sqlErrorParameters["errorState"]),
                byte.Parse(sqlErrorParameters["errorClass"]),
                sqlErrorParameters["server"],
                sqlErrorParameters["errorMessage"],
                sqlErrorParameters["procedure"],
                int.Parse(sqlErrorParameters["lineNumber"])
            });

            return(newSqlError);
        }
Example #46
0
        protected override List <HotSearchInfo> AnalysisData(System.Xml.XmlReader reader)
        {
            var list = new List <HotSearchInfo>(20);

            while (reader.Read())
            {
                while (reader.NodeType == XmlNodeType.Element &&
                       reader.Name == "keyword")
                {
                    int nodeValue = 0;
                    list.Add(new HotSearchInfo()
                    {
                        Type  = int.TryParse(reader.GetAttribute("type"), out nodeValue) ? nodeValue : 0,
                        Count = int.TryParse(reader.GetAttribute("count"), out nodeValue) ? nodeValue : 0,
                        Name  = reader.ReadElementContentAsString()
                    });
                }
            }
            return(list);
        }
        public void ReadXml(System.Xml.XmlReader reader)
        {
            Initialize();

            if (reader.MoveToContent() == XmlNodeType.Element)
            {
                Default = reader["Default"];

                if (reader.ReadToDescendant("Translations"))
                {
                    if (reader.ReadToDescendant("Translation"))
                    {
                        while (reader.MoveToContent() == XmlNodeType.Element && reader.LocalName == "Translation")
                        {
                            _Translations.Add(reader["LanguageCode"], reader.ReadElementContentAsString());
                        }
                    }
                    reader.Read();
                }
                reader.Read();
            }
        }
Example #48
0
        public virtual void ReadXml(System.Xml.XmlReader reader)
        {
            if (reader.ReadToDescendant("LotsOfData") == false)
            {
                throw new Exception("could not find the start of element LotsOfData");
            }

            if (reader.ReadToDescendant("Boolean") == false)
            {
                throw new Exception("could not find the start of element Boolean");
            }

            reader.Read();
            if (reader.ReadContentAsBoolean() == false)
            {
                throw new Exception("did not find the correct value in Boolean");
            }

            //DateTime
            if (reader.ReadToNextSibling("DateTime") == false)
            {
                throw new Exception("could not find the start of element DateTime");
            }

            reader.Read();
            DateTime now = reader.ReadContentAsDateTime();

            if (now != Now)
            {
                TimeSpan diff = new TimeSpan((now.Ticks - Now.Ticks));
                if (diff.TotalMilliseconds > 1000)
                {
                    // seconds are lost in Xml
                    throw new Exception(String.Format("Dates differ {0} {1} Ticks {2}", now, Now, (now.Ticks - Now.Ticks)));
                }
            }

            //DecimalValue
            if (reader.ReadToNextSibling("DecimalValue") == false)
            {
                throw new Exception("could not find the start of element DecimalValue");
            }
            //			reader.Read();
            decimal decimalValue = (decimal)reader.ReadElementContentAs(typeof(decimal), null);

            if (decimalValue != CommonUtilities.DecimalValue)
            {
                string msg = String.Format("different decimal Values {0} {1}", decimalValue, CommonUtilities.DecimalValue);
                throw new Exception(msg);
            }

            //DoubleValue
            if (reader.NodeType != System.Xml.XmlNodeType.Element && reader.Name != "DoubleValue")
            {
                if (reader.ReadToNextSibling("DoubleValue") == false)
                {
                    throw new Exception("could not find the start of element DoubleValue");
                }
            }

            //reader.Read();
            double doubleValue = (double)reader.ReadElementContentAsDouble();

            if (doubleValue != CommonUtilities.DoubleValue)
            {
                string msg = String.Format("different double Values {0} {1}", doubleValue, CommonUtilities.DoubleValue);
                throw new Exception(msg);
            }

            //FloatValue
            if (reader.NodeType != System.Xml.XmlNodeType.Element && reader.Name != "FloatValue")
            {
                if (reader.ReadToNextSibling("FloatValue") == false)
                {
                    throw new Exception("could not find the start of element FloatValue");
                }
            }

            //reader.Read();
            float floatValue = (float)reader.ReadElementContentAs(typeof(float), null);

            if (floatValue != CommonUtilities.FloatValue)
            {
                string msg = String.Format("different floatValue Values {0} {1}", floatValue, CommonUtilities.FloatValue);
                throw new MyException(msg);
            }

            //IntValue
            if (reader.NodeType != System.Xml.XmlNodeType.Element && reader.Name != "IntValue")
            {
                if (reader.ReadToNextSibling("IntValue") == false)
                {
                    throw new Exception("could not find the start of element IntValue");
                }
            }
            //			reader.Read();
            int intValue = reader.ReadElementContentAsInt();

            if (intValue != CommonUtilities.IntValue)
            {
                string msg = String.Format("different intValue Values {0} {1}", intValue, CommonUtilities.IntValue);
                throw new MyException(msg);
            }

            //LongValue
            if (reader.NodeType != System.Xml.XmlNodeType.Element && reader.Name != "LongValue")
            {
                if (reader.ReadToNextSibling("LongValue") == false)
                {
                    throw new Exception("could not find the start of element LongValue");
                }
            }
            //reader.Read();
            long longValue = (long)reader.ReadElementContentAs(typeof(long), null);

            if (longValue != CommonUtilities.LongValue)
            {
                string msg = String.Format("different longValue Values {0} {1}", longValue, CommonUtilities.LongValue);
                throw new MyException(msg);
            }

            //Object
            if (reader.NodeType != System.Xml.XmlNodeType.Element && reader.Name != "Object")
            {
                if (reader.ReadToNextSibling("Object") == false)
                {
                    throw new MyException("could not find the start of element Object");
                }
            }

            //reader.Read();
            TimeSpan objectValue = (TimeSpan)reader.ReadElementContentAs(typeof(TimeSpan), null);

            if (objectValue != CommonUtilities.TimeSpanValue)
            {
                string msg = String.Format("different objectValue Values {0} {1}", objectValue, CommonUtilities.TimeSpanValue);
                throw new MyException(msg);
            }

            //StringValue
            if (reader.NodeType != System.Xml.XmlNodeType.Element && reader.Name != "StringValue")
            {
                if (reader.ReadToNextSibling("StringValue") == false)
                {
                    throw new MyException("could not find the start of element StringValue");
                }
            }

            //reader.Read();
            string stringValue = reader.ReadElementContentAsString();

            if (stringValue == null || stringValue.Equals(CommonUtilities.XmlStringForAttributes) == false)
            {
                string msg = String.Format("different stringValue Values {0} {1}", stringValue, CommonUtilities.XmlStringForAttributes);
                throw new MyException(msg);
            }

            int       counter      = 0;
            const int NODES_AT_END = 1;

            while (reader.Read())
            {
                counter++;
            }

            if (counter != NODES_AT_END)
            {
                throw new MyException(String.Format("expected {0} nodes, but found {1}", NODES_AT_END, counter));
            }
        }
Example #49
0
        public void ReadXml(System.Xml.XmlReader reader)
        {
            while (reader.Read())
            {
                if (reader.NodeType == XmlNodeType.EndElement)
                {
                    break;
                }
                else if (reader.NodeType == XmlNodeType.Whitespace)
                {
                    continue;
                }
                else if (reader.NodeType == XmlNodeType.Element)
                {
                    switch (reader.Name.ToLowerInvariant())
                    {
                    case "rolename":
                        RoleName = reader.ReadElementContentAsString();
                        break;

                    case "description":
                        Description = reader.ReadElementContentAsString();
                        break;

                    case "billingfrequency":
                        BillingFrequency = reader.ReadElementContentAsString();
                        if (string.IsNullOrEmpty(BillingFrequency))
                        {
                            BillingFrequency = "N";
                        }
                        break;

                    case "billingperiod":
                        BillingPeriod = reader.ReadElementContentAsInt();
                        break;

                    case "servicefee":
                        ServiceFee = reader.ReadElementContentAsFloat();
                        if (ServiceFee < 0)
                        {
                            ServiceFee = 0;
                        }
                        break;

                    case "trialfrequency":
                        TrialFrequency = reader.ReadElementContentAsString();
                        if (string.IsNullOrEmpty(TrialFrequency))
                        {
                            TrialFrequency = "N";
                        }
                        break;

                    case "trialperiod":
                        TrialPeriod = reader.ReadElementContentAsInt();
                        break;

                    case "trialfee":
                        TrialFee = reader.ReadElementContentAsFloat();
                        if (TrialFee < 0)
                        {
                            TrialFee = 0;
                        }
                        break;

                    case "ispublic":
                        IsPublic = reader.ReadElementContentAsBoolean();
                        break;

                    case "autoassignment":
                        AutoAssignment = reader.ReadElementContentAsBoolean();
                        break;

                    case "rsvpcode":
                        RSVPCode = reader.ReadElementContentAsString();
                        break;

                    case "iconfile":
                        IconFile = reader.ReadElementContentAsString();
                        break;

                    case "roletype":
                        switch (reader.ReadElementContentAsString())
                        {
                        case "adminrole":
                            _RoleType = Roles.RoleType.Administrator;
                            break;

                        case "registeredrole":
                            _RoleType = Roles.RoleType.RegisteredUser;
                            break;

                        case "subscriberrole":
                            _RoleType = Roles.RoleType.Subscriber;
                            break;

                        default:
                            _RoleType = Roles.RoleType.None;
                            break;
                        }
                        _RoleTypeSet = true;
                        break;
                    }
                }
            }
        }
        /// <summary>
        /// Parses the specified reader.
        /// </summary>
        /// <param name="reader">The reader.</param>
        /// <returns></returns>
        public override T Parse <T>(System.Xml.XmlReader reader)
        {
            IRssFeed ret = (IRssFeed) new RssFeed();

            reader.Read();

            // RDF versions of RSS don't have version tags.
            //double version = double.Parse(reader.GetAttribute("version"));

            reader.ReadToDescendant("channel");

            bool readContent = false;

            while (readContent || reader.Read())
            {
                readContent = false;
                if (reader.NodeType == XmlNodeType.Element)
                {
                    readContent = true;
                    switch (reader.Name)
                    {
                    case "title":
                        ret.Title = reader.ReadElementContentAsString();
                        break;

                    case "link":
                        ret.FeedUri = CachedPropertiesProvider.ConvertToUri(reader.ReadElementContentAsString());
                        break;

                    case "description":
                        ret.Description = reader.ReadElementContentAsString();
                        break;

                    case "language":
                        ret.Culture = CachedPropertiesProvider.ConvertToCultureInfo(reader.ReadElementContentAsString());
                        break;

                    case "copyright":
                        ret.Copyright = reader.ReadElementContentAsString();
                        break;

                    case "managingEditor":
                        ret.ManagingEditor = reader.ReadElementContentAsString();
                        break;

                    case "webMaster":
                        ret.WebMaster = reader.ReadElementContentAsString();
                        break;

                    case "pubDate":
                        ret.PublicationDate = CachedPropertiesProvider.ConvertToTzDateTime(reader.ReadElementContentAsString());
                        break;

                    case "lastBuildDate":
                        ret.LastChanged = CachedPropertiesProvider.ConvertToTzDateTime(reader.ReadElementContentAsString());
                        break;

                    case "category":
                        using (XmlReader subReader = reader.ReadSubtree())
                        {
                            ret.Category = ConvertToIRssCategory(subReader);
                        }
                        if (reader.IsEmptyElement)
                        {
                            readContent = false;
                        }
                        break;

                    case "generator":
                        ret.Generator = reader.ReadElementContentAsString();
                        break;

                    case "docs":
                        ret.Doc = CachedPropertiesProvider.ConvertToUri(reader.ReadElementContentAsString());
                        break;

                    case "cloud":
                        using (XmlReader subReader = reader.ReadSubtree())
                        {
                            ret.Cloud = ConvertToIRssCloud(subReader);
                        }
                        if (reader.IsEmptyElement)
                        {
                            readContent = false;
                        }
                        break;

                    case "ttl":
                        ret.TimeToLive = CachedPropertiesProvider.ConvertToInt(reader.ReadElementContentAsString());
                        break;

                    case "image":
                        using (XmlReader subReader = reader.ReadSubtree())
                        {
                            ret.Image = ConvertToIRssImage(subReader);
                        }
                        if (reader.IsEmptyElement)
                        {
                            readContent = false;
                        }
                        break;

                    /*case "rating":
                     *  break;*/
                    case "textInput":
                        using (XmlReader subReader = reader.ReadSubtree())
                        {
                            ret.TextInput = ConvertToIRssTextInput(subReader);
                        }
                        if (reader.IsEmptyElement)
                        {
                            readContent = false;
                        }
                        break;

                    case "skipHours":
                        using (XmlReader subReader = reader.ReadSubtree())
                        {
                            ret.SkipHours = ConvertToSkipHourList(subReader);
                        }
                        if (reader.IsEmptyElement)
                        {
                            readContent = false;
                        }
                        break;

                    case "skipDays":
                        using (XmlReader subReader = reader.ReadSubtree())
                        {
                            ret.SkipDays = ConvertToDayOfWeekList(subReader);
                        }
                        if (reader.IsEmptyElement)
                        {
                            readContent = false;
                        }
                        break;

                    case "item":
                        using (XmlReader itemReader = reader.ReadSubtree())
                        {
                            ret.Items.Add(ParseItem(itemReader));
                        }
                        if (reader.IsEmptyElement)
                        {
                            readContent = false;
                        }
                        break;

                    default:
                        UnhandledElement(ret, reader);
                        break;
                    }
                }
            }
            reader.Close();
            return((T)ret);
        }
        /// <summary>
        /// Generates a serializable continuation token from its XML representation.
        /// </summary>
        /// <param name="reader">The <see cref="T:System.Xml.XmlReader"/> stream from which the continuation token is deserialized.</param>
        public void ReadXml(System.Xml.XmlReader reader)
        {
            if (reader == null)
            {
                throw new ArgumentNullException("reader");
            }

            reader.MoveToContent();

            bool isEmptyElement = reader.IsEmptyElement;

            reader.ReadStartElement(Constants.ContinuationConstants.ContinuationTopElement);

            if (!isEmptyElement)
            {
                while (true)
                {
                    if (reader.NodeType == XmlNodeType.Element && !reader.IsEmptyElement)
                    {
                        switch (reader.Name)
                        {
                        case Constants.ContinuationConstants.VersionElement:
                            string version = reader.ReadElementContentAsString();
                            if (version != Constants.ContinuationConstants.CurrentVersion)
                            {
                                throw new System.Xml.XmlException(string.Format(SR.UnexpectedElement, version));
                            }

                            break;

                        case Constants.ContinuationConstants.NextPartitionKeyElement:
                            this.NextPartitionKey = reader.ReadElementContentAsString();
                            break;

                        case Constants.ContinuationConstants.NextRowKeyElement:
                            this.NextRowKey = reader.ReadElementContentAsString();
                            break;

                        case Constants.ContinuationConstants.NextTableNameElement:
                            this.NextTableName = reader.ReadElementContentAsString();
                            break;

                        case Constants.ContinuationConstants.TypeElement:
                            string continuationType = reader.ReadElementContentAsString();
                            if ("Table" != continuationType)
                            {
                                throw new System.Xml.XmlException(SR.UnexpectedContinuationType);
                            }

                            break;

                        default:
                            throw new System.Xml.XmlException(string.Format(SR.UnexpectedElement, reader.Name));
                        }
                    }
                    else
                    {
                        reader.ReadEndElement();
                        return;
                    }
                }
            }
        }
        /// <summary>
        /// Parses the specified reader.
        /// </summary>
        /// <param name="reader">The reader.</param>
        /// <returns></returns>
        public override T Parse <T>(System.Xml.XmlReader reader)
        {
            IAtomFeed ret = (IAtomFeed) new AtomFeed();

            reader.Read();

            bool readContent = false;

            while (readContent || reader.Read())
            {
                readContent = false;
                if (reader.NodeType == XmlNodeType.Element)
                {
                    readContent = true;
                    switch (reader.Name)
                    {
                    case "id":
                        ret.FeedUri = CachedPropertiesProvider.ConvertToUri(reader.ReadElementContentAsString(), reader.BaseURI);
                        break;

                    case "title":
                        ret.Title = reader.ReadElementContentAsString();
                        break;

                    case "updated":
                        ret.LastUpdated = CachedPropertiesProvider.ConvertToTzDateTime(reader.ReadElementContentAsString());
                        break;

                    case "generator":
                        using (XmlReader subReader = reader.ReadSubtree())
                        {
                            ret.Generator = ConvertToIAtomGenerator(subReader);
                        }
                        if (reader.IsEmptyElement)
                        {
                            readContent = false;
                        }
                        break;

                    case "author":
                        using (XmlReader subReader = reader.ReadSubtree())
                        {
                            ret.Authors.Add(ConvertToIAtomPerson(subReader));
                        }
                        if (reader.IsEmptyElement)
                        {
                            readContent = false;
                        }
                        break;

                    case "link":
                        using (XmlReader subReader = reader.ReadSubtree())
                        {
                            ret.Links.Add(ConvertToIAtomLink(subReader));
                        }
                        if (reader.IsEmptyElement)
                        {
                            readContent = false;
                        }
                        break;

                    case "category":
                        using (XmlReader subReader = reader.ReadSubtree())
                        {
                            ret.Categories.Add(ConvertToIAtomCategory(subReader));
                        }
                        if (reader.IsEmptyElement)
                        {
                            readContent = false;
                        }
                        break;

                    case "entry":
                        using (XmlReader subReader = reader.ReadSubtree())
                        {
                            ret.Items.Add(ParseItem(subReader));
                        }
                        if (reader.IsEmptyElement)
                        {
                            readContent = false;
                        }
                        break;

                    case "contributor":
                        using (XmlReader subReader = reader.ReadSubtree())
                        {
                            ret.Contributors.Add(ConvertToIAtomPerson(subReader));
                        }
                        if (reader.IsEmptyElement)
                        {
                            readContent = false;
                        }
                        break;

                    case "logo":
                        ret.Logo = reader.ReadElementContentAsString();
                        break;

                    case "icon":
                        ret.Icon = reader.ReadElementContentAsString();
                        break;

                    case "rights":
                        using (XmlReader subReader = reader.ReadSubtree())
                        {
                            ret.Rights = ConvertToIAtomText(subReader);
                        }
                        if (reader.IsEmptyElement)
                        {
                            readContent = false;
                        }
                        break;

                    case "subtitle":
                        using (XmlReader subReader = reader.ReadSubtree())
                        {
                            ret.Subtitle = ConvertToIAtomText(subReader);
                        }
                        if (reader.IsEmptyElement)
                        {
                            readContent = false;
                        }
                        break;

                    default:
                        UnhandledElement(ret, reader);
                        break;
                    }
                }
            }
            reader.Close();
            return((T)ret);
        }
Example #53
0
 public override string ReadElementContentAsString()
 {
     CheckAsync();
     return(_coreReader.ReadElementContentAsString());
 }