org.apache.http.nio

## Interface NHttpMessageParser<T extends HttpMessage>

- All Known Implementing Classes:
    AbstractMessageParser, DefaultHttpRequestParser, DefaultHttpResponseParser, HttpRequestParser, HttpResponseParser

      public interface NHttpMessageParser<T extends HttpMessage>

  Abstract HTTP message parser for non-blocking connections.
  Since:
    4.0

- - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `int` | `fillBuffer(ReadableByteChannel channel)` Fills the internal buffer of the parser with input data from the given `ReadableByteChannel`.
    `T` | `parse()` Attempts to parse a complete message head from the content of the internal buffer.
    `void` | `reset()` Resets the parser.

- - ### Method Detail

    - #### reset

          void reset()

      Resets the parser. The parser will be ready to start parsing another HTTP message.

    - #### fillBuffer

          int fillBuffer(ReadableByteChannel channel)
                         throws IOException

      Fills the internal buffer of the parser with input data from the given `ReadableByteChannel`.
      Parameters:
        `channel` - the input channel
      Returns:
        number of bytes read.
      Throws:
        `IOException` - in case of an I/O error.

    - #### parse

          T parse()
                                      throws IOException,
                                             HttpException

      Attempts to parse a complete message head from the content of the internal buffer. If the message in the input buffer is incomplete this method will return `null`.
      Returns:
        HTTP message head, if available, `null` otherwise.
      Throws:
        `IOException` - in case of an I/O error.
        `HttpException` - in case the HTTP message is malformed or violates the HTTP protocol.

Copyright © 2005–2013 The Apache Software Foundation. All rights reserved.