Top Description Methods
org.apache.http.message

public Interface LineParser

Known Direct Implementers
org.apache.http.message.BasicLineParser
Imports
org.apache.http.Header, .ParseException, .ProtocolVersion, .RequestLine, .StatusLine, org.apache.http.util.CharArrayBuffer

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

Modifier and TypeMethod and Description
public boolean

Returns:

true if there is a protocol version at the argument index (possibly ignoring whitespace), false otherwise
hasProtocolVersion
(CharArrayBuffer
a buffer holding the line to inspect
buffer
,
ParserCursor
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.
cursor
)

Checks whether there likely is a protocol version in a line.

public Header

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.
parseHeader
(CharArrayBuffer
a buffer holding the full header line. This buffer MUST NOT be re-used afterwards, since the returned object may reference the contents later.
buffer
)

Creates a header from a line.

public ProtocolVersion

Returns:

the parsed protocol version
parseProtocolVersion
(CharArrayBuffer
a buffer holding the protocol version to parse
buffer
,
ParserCursor
the parser cursor containing the current position and the bounds within the buffer for the parsing operation
cursor
)

Parses the textual representation of a protocol version.

public RequestLine

Returns:

the parsed request line
parseRequestLine
(CharArrayBuffer
a buffer holding the line to parse
buffer
,
ParserCursor
the parser cursor containing the current position and the bounds within the buffer for the parsing operation
cursor
)

Parses a request line.

public StatusLine

Returns:

the parsed status line
parseStatusLine
(CharArrayBuffer
a buffer holding the line to parse
buffer
,
ParserCursor
the parser cursor containing the current position and the bounds within the buffer for the parsing operation
cursor
)

Parses a status line.

Method Detail

hasProtocolVersionback to summary
public 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 would not detect a parse error. This can be used to detect garbage lines before a request or status line.

Parameters
buffer:CharArrayBuffer

a buffer holding the line to inspect

cursor:ParserCursor

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:boolean

true if there is a protocol version at the argument index (possibly ignoring whitespace), false otherwise

parseHeaderback to summary
public 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:CharArrayBuffer

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:Header

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.

Exceptions
ParseException:
in case of a parse error
parseProtocolVersionback to summary
public 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:CharArrayBuffer

a buffer holding the protocol version to parse

cursor:ParserCursor

the parser cursor containing the current position and the bounds within the buffer for the parsing operation

Returns:ProtocolVersion

the parsed protocol version

Exceptions
ParseException:
in case of a parse error
parseRequestLineback to summary
public RequestLine parseRequestLine(CharArrayBuffer buffer, ParserCursor cursor) throws ParseException

Parses a request line.

Parameters
buffer:CharArrayBuffer

a buffer holding the line to parse

cursor:ParserCursor

the parser cursor containing the current position and the bounds within the buffer for the parsing operation

Returns:RequestLine

the parsed request line

Exceptions
ParseException:
in case of a parse error
parseStatusLineback to summary
public StatusLine parseStatusLine(CharArrayBuffer buffer, ParserCursor cursor) throws ParseException

Parses a status line.

Parameters
buffer:CharArrayBuffer

a buffer holding the line to parse

cursor:ParserCursor

the parser cursor containing the current position and the bounds within the buffer for the parsing operation

Returns:StatusLine

the parsed status line

Exceptions
ParseException:
in case of a parse error