Class DefaultHttpRequestParser<T extends HttpRequest>
- java.lang.Object
-
- org.apache.hc.core5.http.impl.nio.AbstractMessageParser<T>
-
- org.apache.hc.core5.http.impl.nio.DefaultHttpRequestParser<T>
-
- All Implemented Interfaces:
NHttpMessageParser<T>
public class DefaultHttpRequestParser<T extends HttpRequest> extends AbstractMessageParser<T>
DefaultNHttpMessageParser
implementation forHttpRequest
s.- Since:
- 4.1
-
-
Field Summary
Fields Modifier and Type Field Description private HttpRequestFactory<T>
requestFactory
-
Constructor Summary
Constructors Constructor Description DefaultHttpRequestParser(HttpRequestFactory<T> requestFactory)
DefaultHttpRequestParser(HttpRequestFactory<T> requestFactory, Http1Config http1Config)
DefaultHttpRequestParser(HttpRequestFactory<T> requestFactory, LineParser parser, Http1Config http1Config)
Creates an instance of DefaultHttpRequestParser.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected T
createMessage(CharArrayBuffer buffer)
CreatesHttpMessage
instance based on the content of the input buffer containing the first line of the incoming HTTP message.T
parse(SessionInputBuffer sessionBuffer, boolean endOfStream)
Attempts to parse a complete message head from the content of the internal buffer.-
Methods inherited from class org.apache.hc.core5.http.impl.nio.AbstractMessageParser
getLineParser, reset
-
-
-
-
Field Detail
-
requestFactory
private final HttpRequestFactory<T extends HttpRequest> requestFactory
-
-
Constructor Detail
-
DefaultHttpRequestParser
public DefaultHttpRequestParser(HttpRequestFactory<T> requestFactory, LineParser parser, Http1Config http1Config)
Creates an instance of DefaultHttpRequestParser.- Parameters:
requestFactory
- the request factory.parser
- the line parser. Ifnull
LazyLineParser.INSTANCE
will be used.http1Config
- Message http1Config. Ifnull
Http1Config.DEFAULT
will be used.- Since:
- 4.3
-
DefaultHttpRequestParser
public DefaultHttpRequestParser(HttpRequestFactory<T> requestFactory, Http1Config http1Config)
- Since:
- 4.3
-
DefaultHttpRequestParser
public DefaultHttpRequestParser(HttpRequestFactory<T> requestFactory)
- Since:
- 4.3
-
-
Method Detail
-
parse
public T parse(SessionInputBuffer sessionBuffer, boolean endOfStream) throws java.io.IOException, HttpException
Description copied from interface:NHttpMessageParser
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 returnnull
.- Specified by:
parse
in interfaceNHttpMessageParser<T extends HttpRequest>
- Overrides:
parse
in classAbstractMessageParser<T extends HttpRequest>
- Parameters:
sessionBuffer
- session input buffer.endOfStream
- end of stream flag- Returns:
- HTTP message head, if available,
null
otherwise. - Throws:
java.io.IOException
- in case of an I/O error.HttpException
- in case the HTTP message is malformed or violates the HTTP protocol.
-
createMessage
protected T createMessage(CharArrayBuffer buffer) throws HttpException
Description copied from class:AbstractMessageParser
CreatesHttpMessage
instance based on the content of the input buffer containing the first line of the incoming HTTP message.- Specified by:
createMessage
in classAbstractMessageParser<T extends HttpRequest>
- Parameters:
buffer
- the line buffer.- Returns:
- HTTP message.
- Throws:
HttpException
- in case of HTTP protocol violation
-
-