Package org.apache.http.impl.nio.codecs
Class AbstractMessageParser<T extends HttpMessage>
java.lang.Object
org.apache.http.impl.nio.codecs.AbstractMessageParser<T>
- All Implemented Interfaces:
NHttpMessageParser<T>
- Direct Known Subclasses:
DefaultHttpRequestParser,DefaultHttpResponseParser,HttpRequestParser,HttpResponseParser
public abstract class AbstractMessageParser<T extends HttpMessage>
extends Object
implements NHttpMessageParser<T>
Abstract
NHttpMessageParser that serves as a base for all message
parser implementations.- Since:
- 4.0
-
Constructor Summary
ConstructorsConstructorDescriptionAbstractMessageParser(SessionInputBuffer buffer, LineParser lineParser, MessageConstraints constraints) Creates an instance of AbstractMessageParser.AbstractMessageParser(SessionInputBuffer buffer, LineParser lineParser, HttpParams params) Deprecated. -
Method Summary
Modifier and TypeMethodDescriptionintfillBuffer(ReadableByteChannel channel) Fills the internal buffer of the parser with input data from the givenReadableByteChannel.parse()Attempts to parse a complete message head from the content of the internal buffer.voidreset()Resets the parser.
-
Constructor Details
-
AbstractMessageParser
@Deprecated public AbstractMessageParser(SessionInputBuffer buffer, LineParser lineParser, HttpParams params) Deprecated.Creates an instance of this class.- Parameters:
buffer- the session input buffer.lineParser- the line parser.params- HTTP parameters.
-
AbstractMessageParser
public AbstractMessageParser(SessionInputBuffer buffer, LineParser lineParser, MessageConstraints constraints) Creates an instance of AbstractMessageParser.- Parameters:
buffer- the session input buffer.lineParser- the line parser. IfnullBasicLineParser.INSTANCEwill be used.constraints- Message constraints. IfnullMessageConstraints.DEFAULTwill be used.- Since:
- 4.3
-
-
Method Details
-
reset
public void reset()Description copied from interface:NHttpMessageParserResets the parser. The parser will be ready to start parsing another HTTP message.- Specified by:
resetin interfaceNHttpMessageParser<T extends HttpMessage>
-
fillBuffer
Description copied from interface:NHttpMessageParserFills the internal buffer of the parser with input data from the givenReadableByteChannel.- Specified by:
fillBufferin interfaceNHttpMessageParser<T extends HttpMessage>- Parameters:
channel- the input channel- Returns:
- number of bytes read.
- Throws:
IOException- in case of an I/O error.
-
parse
Description copied from interface:NHttpMessageParserAttempts 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 returnnull.- Specified by:
parsein interfaceNHttpMessageParser<T extends HttpMessage>- Returns:
- HTTP message head, if available,
nullotherwise. - Throws:
IOException- in case of an I/O error.HttpException- in case the HTTP message is malformed or violates the HTTP protocol.
-
AbstractMessageParser(SessionInputBuffer, LineParser, MessageConstraints)