Esempio n. 1
0
        /// <summary>
        /// Gets the document.
        /// </summary>
        /// <param name="root">The root.</param>
        /// <param name="ns">The conventional namespace.</param>
        public static OpmlDocument GetDocument(XContainer root, XNamespace ns)
        {
            if (root == null)
            {
                return(null);
            }

            var data = new OpmlDocument
            {
                OpmlBody = GetBody(root.Element(ns.ToXName("body")), ns),
                OpmlHead = GetHead(root.Element(ns.ToXName("head")), ns)
            };

            return(data);
        }
Esempio n. 2
0
        /// <summary>
        /// Gets the head.
        /// </summary>
        /// <param name="root">The root.</param>
        /// <param name="ns">The namespace.</param>
        public static OpmlHead GetHead(XContainer root, XNamespace ns)
        {
            if (root == null)
            {
                return(null);
            }

            var ownerEmail   = ns.ToXName("ownerEmail");
            var ownerName    = ns.ToXName("ownerName");
            var title        = ns.ToXName("title");
            var dateCreated  = ns.ToXName("dateCreated");
            var dateModified = ns.ToXName("dateModified");

            return(GetHead(root, ownerEmail, ownerName, title, dateCreated, dateModified));
        }
Esempio n. 3
0
        /// <summary>
        /// Gets the outlines.
        /// </summary>
        /// <param name="root">The root.</param>
        /// <param name="ns">The namespace.</param>
        public static OpmlOutline[] GetOutlines(XContainer root, XNamespace ns)
        {
            if (root == null)
            {
                return(null);
            }

            var data = new List <OpmlOutline>();

            root
            .Elements(ns.ToXName("outline"))
            .ForEachInEnumerable(o =>
            {
                var outline = GetOutline(o, ns);
                if (outline != null)
                {
                    outline.Outlines = GetOutlines(o, ns);
                    data.Add(outline);
                }
            });

            return(data.ToArray());
        }