/// <summary>
        /// Converts to I atom link.
        /// </summary>
        /// <param name="input">The input.</param>
        /// <returns></returns>
        public static IAtomLink ConvertToIAtomLink(XmlReader input)
        {
            AtomLink link = new AtomLink();

            input.ReadToDescendant("link");
            link.Href         = CachedPropertiesProvider.ConvertToUri(input.GetAttribute("href"), input.BaseURI);
            link.Relationship = input.GetAttribute("rel");
            link.Type         = input.GetAttribute("type");
            link.LinkLanguage = input.GetAttribute("hreflang");
            link.Title        = input.GetAttribute("title");
            link.Length       = CachedPropertiesProvider.ConvertToIntNullable(input.GetAttribute("length"));
            input.Close();
            return(link);
        }
Beispiel #2
0
        internal static IOpmlHead ConvertToIOpmlHead(XmlReader input)
        {
            OpmlHead head = new OpmlHead();

            input.ReadToDescendant("head");
            bool readContent = false;

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

                    case "dateCreated":
                        head.DateCreated = CachedPropertiesProvider.ConvertToTzDateTime(input.ReadElementContentAsString());
                        break;

                    case "dateModified":
                        head.DateModified = CachedPropertiesProvider.ConvertToTzDateTime(input.ReadElementContentAsString());
                        break;

                    case "ownerName":
                        head.Owner = input.ReadElementContentAsString();
                        break;

                    case "ownerEmail":
                        head.OwnerEmail = input.ReadElementContentAsString();
                        break;

                    case "expansionState":
                        head.ExpansionState = input.ReadElementContentAsString();
                        break;

                    case "vertScrollState":
                        head.VerticalScrollState = CachedPropertiesProvider.ConvertToIntNullable(input.ReadElementContentAsString());
                        break;

                    case "windowTop":
                        head.WindowTop = CachedPropertiesProvider.ConvertToIntNullable(input.ReadElementContentAsString());
                        break;

                    case "windowLeft":
                        head.WindowLeft = CachedPropertiesProvider.ConvertToIntNullable(input.ReadElementContentAsString());
                        break;

                    case "windowBottom":
                        head.WindowBottom = CachedPropertiesProvider.ConvertToIntNullable(input.ReadElementContentAsString());
                        break;

                    case "windowRight":
                        head.WindowRight = CachedPropertiesProvider.ConvertToIntNullable(input.ReadElementContentAsString());
                        break;

                    default:
                        readContent = false;
                        break;
                    }
                }
            }
            input.Close();
            return(head);
        }