org.apache.http.message

## Interface LineParser

- All Known Implementing Classes:
    BasicLineParser

      public interface LineParser

  Interface for parsing lines in the HEAD section of an HTTP message. There are individual methods for parsing a request line, a status line, or a header line. The lines to parse are passed in memory, the parser does not depend on any specific IO mechanism. Instances of this interface are expected to be stateless and thread-safe.
  Since:
    4.0

- - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `boolean` | `hasProtocolVersion(CharArrayBuffer buffer, ParserCursor cursor)` Checks whether there likely is a protocol version in a line.
    `Header` | `parseHeader(CharArrayBuffer buffer)` Creates a header from a line.
    `ProtocolVersion` | `parseProtocolVersion(CharArrayBuffer buffer, ParserCursor cursor)` Parses the textual representation of a protocol version.
    `RequestLine` | `parseRequestLine(CharArrayBuffer buffer, ParserCursor cursor)` Parses a request line.
    `StatusLine` | `parseStatusLine(CharArrayBuffer buffer, ParserCursor cursor)` Parses a status line.

- - ### Method Detail

    - #### parseProtocolVersion

          ProtocolVersion parseProtocolVersion(CharArrayBuffer buffer,
                                             ParserCursor cursor)
                                               throws ParseException

      Parses the textual representation of a protocol version. This is needed for parsing request lines (last element) as well as status lines (first element).
      Parameters:
        `buffer` - a buffer holding the protocol version to parse
        `cursor` - the parser cursor containing the current position and the bounds within the buffer for the parsing operation
      Returns:
        the parsed protocol version
      Throws:
        `ParseException` - in case of a parse error

    - #### hasProtocolVersion

          boolean hasProtocolVersion(CharArrayBuffer buffer,
                                   ParserCursor cursor)

      Checks whether there likely is a protocol version in a line. This method implements a heuristic to check for a likely protocol version specification. It does not guarantee that `parseProtocolVersion(org.apache.http.util.CharArrayBuffer, org.apache.http.message.ParserCursor)` would not detect a parse error. This can be used to detect garbage lines before a request or status line.
      Parameters:
        `buffer` - a buffer holding the line to inspect
        `cursor` - the cursor at which to check for a protocol version, or negative for "end of line". Whether the check tolerates whitespace before or after the protocol version is implementation dependent.
      Returns:
        `true` if there is a protocol version at the argument index (possibly ignoring whitespace), `false` otherwise

    - #### parseRequestLine

          RequestLine parseRequestLine(CharArrayBuffer buffer,
                                     ParserCursor cursor)
                                       throws ParseException

      Parses a request line.
      Parameters:
        `buffer` - a buffer holding the line to parse
        `cursor` - the parser cursor containing the current position and the bounds within the buffer for the parsing operation
      Returns:
        the parsed request line
      Throws:
        `ParseException` - in case of a parse error

    - #### parseStatusLine

          StatusLine parseStatusLine(CharArrayBuffer buffer,
                                   ParserCursor cursor)
                                     throws ParseException

      Parses a status line.
      Parameters:
        `buffer` - a buffer holding the line to parse
        `cursor` - the parser cursor containing the current position and the bounds within the buffer for the parsing operation
      Returns:
        the parsed status line
      Throws:
        `ParseException` - in case of a parse error

    - #### parseHeader

          Header parseHeader(CharArrayBuffer buffer)
                             throws ParseException

      Creates a header from a line. The full header line is expected here. Header continuation lines must be joined by the caller before invoking this method.
      Parameters:
        `buffer` - a buffer holding the full header line. This buffer MUST NOT be re-used afterwards, since the returned object may reference the contents later.
      Returns:
        the header in the argument buffer. The returned object MAY be a wrapper for the argument buffer. The argument buffer MUST NOT be re-used or changed afterwards.
      Throws:
        `ParseException` - in case of a parse error

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