Beispiel #1
0
        /// <summary>
        /// Parses WebDav_Prop from 'DAV:prop' element.
        /// </summary>
        /// <param name="propNode">The 'DAV:prop' element</param>
        /// <returns>Returns DAV prop.</returns>
        /// <exception cref="ArgumentNullException">Is raised when when <b>propNode</b> is null reference.</exception>
        /// <exception cref="ParseException">Is raised when there are any parsing error.</exception>
        internal static WebDav_Prop Parse(XmlNode propNode)
        {
            if (propNode == null)
            {
                throw new ArgumentNullException("propNode");
            }

            // Invalid response.
            if (!string.Equals(propNode.NamespaceURI + propNode.LocalName, "DAV:prop", StringComparison.InvariantCultureIgnoreCase))
            {
                throw new ParseException("Invalid DAV:prop value.");
            }

            WebDav_Prop retVal = new WebDav_Prop();

            foreach (XmlNode node in propNode.ChildNodes)
            {
                // Resource type property.
                if (string.Equals(node.LocalName, "resourcetype", StringComparison.InvariantCultureIgnoreCase))
                {
                    retVal.m_pProperties.Add(WebDav_p_ResourceType.Parse(node));
                }
                // Default name-value property.
                else
                {
                    retVal.m_pProperties.Add(new WebDav_p_Default(node.NamespaceURI, node.LocalName, node.InnerXml));
                }
            }

            return(retVal);
        }
Beispiel #2
0
        /// <summary>
        /// Parses WebDav_p_ResourceType from 'DAV:resourcetype' xml element.
        /// </summary>
        /// <param name="resourcetypeNode">The 'DAV:resourcetype' xml element.</param>
        /// <returns>Returns DAV resourcetype.</returns>
        /// <exception cref="ArgumentNullException">Is raised when <b>resourcetypeNode</b> is null reference.</exception>
        /// <exception cref="ParseException">Is raised when there are any parsing error.</exception>
        internal static WebDav_p_ResourceType Parse(XmlNode resourcetypeNode)
        {
            if(resourcetypeNode == null){
                throw new ArgumentNullException("resourcetypeNode");
            }

            // Invalid response.
            if(!string.Equals(resourcetypeNode.NamespaceURI + resourcetypeNode.LocalName,"DAV:resourcetype",StringComparison.InvariantCultureIgnoreCase)){
                throw new ParseException("Invalid DAV:resourcetype value.");
            }

            WebDav_p_ResourceType retVal = new WebDav_p_ResourceType();

            foreach(XmlNode node in resourcetypeNode.ChildNodes){
                retVal.m_pItems.Add(node.NamespaceURI + node.LocalName);
            }

            return retVal;
        }
        /// <summary>
        /// Parses WebDav_p_ResourceType from 'DAV:resourcetype' xml element.
        /// </summary>
        /// <param name="resourcetypeNode">The 'DAV:resourcetype' xml element.</param>
        /// <returns>Returns DAV resourcetype.</returns>
        /// <exception cref="ArgumentNullException">Is raised when <b>resourcetypeNode</b> is null reference.</exception>
        /// <exception cref="ParseException">Is raised when there are any parsing error.</exception>
        internal static WebDav_p_ResourceType Parse(XmlNode resourcetypeNode)
        {
            if (resourcetypeNode == null)
            {
                throw new ArgumentNullException("resourcetypeNode");
            }

            // Invalid response.
            if (!string.Equals(resourcetypeNode.NamespaceURI + resourcetypeNode.LocalName, "DAV:resourcetype", StringComparison.InvariantCultureIgnoreCase))
            {
                throw new ParseException("Invalid DAV:resourcetype value.");
            }

            WebDav_p_ResourceType retVal = new WebDav_p_ResourceType();

            foreach (XmlNode node in resourcetypeNode.ChildNodes)
            {
                retVal.m_pItems.Add(node.NamespaceURI + node.LocalName);
            }

            return(retVal);
        }