Ejemplo n.º 1
0
        /// <summary>
        /// Parse a message value.
        /// </summary>
        /// <param name="name">Name of header being parsed.</param>
        /// <param name="reader">Reader containing the string that should be parsed.</param>
        /// <returns>Newly created header.</returns>
        /// <exception cref="ParseException">Header value is malformed.</exception>
        public IHeader Parse(string name, ITextReader reader)
        {
            var header = new MethodsHeader(name);

            string method = reader.ReadToEnd(',');
            do
            {
                header.Methods.Add(method.Trim());

                if (reader.Current == ',')
                    reader.Consume(); // eat the current comma
                reader.ConsumeWhiteSpaces();

                // read next.
                method = reader.ReadToEnd(',');

            } while (!reader.EOF && reader.Current == ',');

            header.Methods.Add(method);
            return header;
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Parse a message value.
        /// </summary>
        /// <param name="name">Name of header being parsed.</param>
        /// <param name="reader">Reader containing the string that should be parsed.</param>
        /// <returns>Newly created header.</returns>
        /// <exception cref="ParseException">Header value is malformed.</exception>
        public IHeader Parse(string name, ITextReader reader)
        {
            var header = new MethodsHeader(name);

            string method = reader.ReadToEnd(',');

            do
            {
                header.Methods.Add(method.Trim());

                if (reader.Current == ',')
                {
                    reader.Consume(); // eat the current comma
                }
                reader.ConsumeWhiteSpaces();

                // read next.
                method = reader.ReadToEnd(',');
            } while (!reader.EOF && reader.Current == ',');

            header.Methods.Add(method);
            return(header);
        }