Container for posted form data
Inheritance: HttpInput
Beispiel #1
0
        /// <summary>
        /// Decode body into a form.
        /// </summary>
        /// <param name="providers">A list with form decoders.</param>
        /// <exception cref="InvalidDataException">If body contents is not valid for the chosen decoder.</exception>
        /// <exception cref="InvalidOperationException">If body is still being transferred.</exception>
        public void DecodeBody(FormDecoderProvider providers)
        {
            if (_bodyBytesLeft > 0)
            {
                throw new InvalidOperationException("Body transfer has not yet been completed.");
            }

            Encoding encoding    = null;
            string   encodingStr = this.Headers["content-encoding"];

            if (!String.IsNullOrEmpty(encodingStr))
            {
                try { encoding = Encoding.GetEncoding(encodingStr); }
                catch { }
            }
            if (encoding == null)
            {
                encoding = Encoding.UTF8;
            }

            _form = providers.Decode(_headers["content-type"], _body, encoding);
            if (_form != HttpInput.Empty)
            {
                _param.SetForm(_form);
            }
        }
Beispiel #2
0
        /// <summary>
        /// Decode body into a form.
        /// </summary>
        /// <param name="providers">A list with form decoders.</param>
        /// <exception cref="InvalidDataException">If body contents is not valid for the chosen decoder.</exception>
        /// <exception cref="InvalidOperationException">If body is still being transferred.</exception>
        public void DecodeBody(FormDecoderProvider providers)
        {
            if (_bodyBytesLeft > 0)
            {
                throw new InvalidOperationException("Body have not yet been completed.");
            }

            _form = providers.Decode(_headers["content-type"], _body, Encoding.UTF8);
            if (_form != HttpInput.Empty)
            {
                _param.SetForm(_form);
            }
        }
Beispiel #3
0
 /// <summary>
 /// Assign a form.
 /// </summary>
 /// <param name="form"></param>
 internal void AssignForm(HttpForm form)
 {
     _form = form;
 }
Beispiel #4
0
 /// <summary>
 /// Assign a form.
 /// </summary>
 /// <param name="form"></param>
 internal void AssignForm(HttpForm form)
 {
   _form = form;
 }
Beispiel #5
0
    /// <summary>
    /// Decode body into a form.
    /// </summary>
    /// <param name="providers">A list with form decoders.</param>
    /// <exception cref="InvalidDataException">If body contents is not valid for the chosen decoder.</exception>
    /// <exception cref="InvalidOperationException">If body is still being transferred.</exception>
    public void DecodeBody(FormDecoderProvider providers)
    {
      if (_bodyBytesLeft > 0)
        throw new InvalidOperationException("Body have not yet been completed.");

      _form = providers.Decode(_headers["content-type"], _body, Encoding.UTF8);
      if (_form != HttpInput.Empty)
        _param.SetForm(_form);
    }
Beispiel #6
0
        /// <summary>
        /// Decode body into a form.
        /// </summary>
        /// <param name="providers">A list with form decoders.</param>
        /// <exception cref="InvalidDataException">If body contents is not valid for the chosen decoder.</exception>
        /// <exception cref="InvalidOperationException">If body is still being transferred.</exception>
        public void DecodeBody(FormDecoderProvider providers)
        {
            if (_bodyBytesLeft > 0)
                throw new InvalidOperationException("Body transfer has not yet been completed.");

            Encoding encoding = null;
            string encodingStr = this.Headers["content-encoding"];
            if (!String.IsNullOrEmpty(encodingStr))
            {
                try { encoding = Encoding.GetEncoding(encodingStr); }
                catch { }
            }
            if (encoding == null)
                encoding = Encoding.UTF8;

            _form = providers.Decode(_headers["content-type"], _body, encoding);
            if (_form != HttpInput.Empty)
                _param.SetForm(_form);
        }