Package org.apache.hc.core5.http.impl.io
Class DefaultHttpRequestParser
java.lang.Object
org.apache.hc.core5.http.impl.io.AbstractMessageParser<ClassicHttpRequest>
org.apache.hc.core5.http.impl.io.DefaultHttpRequestParser
- All Implemented Interfaces:
HttpMessageParser<ClassicHttpRequest>
HTTP request parser that obtain its input from an instance
of
SessionInputBuffer.- Since:
- 4.2
-
Field Summary
Fields -
Constructor Summary
ConstructorsConstructorDescriptionDefaultHttpRequestParser(Http1Config http1Config) DefaultHttpRequestParser(LineParser lineParser, HttpRequestFactory<ClassicHttpRequest> requestFactory, Http1Config http1Config) Creates new instance of DefaultHttpRequestParser. -
Method Summary
Modifier and TypeMethodDescriptionprotected ClassicHttpRequestcreateMessage(CharArrayBuffer buffer) Subclasses must override this method to generate an instance ofHttpMessagebased on the initial input from the session buffer.parse(SessionInputBuffer buffer, InputStream inputStream) Generates an instance ofMessageHeadersfrom the given input stream..Methods inherited from class org.apache.hc.core5.http.impl.io.AbstractMessageParser
createConnectionClosedException, getLineParser, parseHeaders, parseHeaders
-
Field Details
-
requestFactory
-
-
Constructor Details
-
DefaultHttpRequestParser
public DefaultHttpRequestParser(LineParser lineParser, HttpRequestFactory<ClassicHttpRequest> requestFactory, Http1Config http1Config) Creates new instance of DefaultHttpRequestParser.- Parameters:
lineParser- the line parser. IfnullLazyLineParser.INSTANCEwill be used.requestFactory- the response factory. IfnullDefaultClassicHttpRequestFactory.INSTANCEwill be used.http1Config- the message http1Config. IfnullHttp1Config.DEFAULTwill be used.- Since:
- 4.3
-
DefaultHttpRequestParser
- Since:
- 4.3
-
DefaultHttpRequestParser
public DefaultHttpRequestParser()- Since:
- 4.3
-
-
Method Details
-
parse
public ClassicHttpRequest parse(SessionInputBuffer buffer, InputStream inputStream) throws IOException, HttpException Description copied from interface:HttpMessageParserGenerates an instance ofMessageHeadersfrom the given input stream..- Specified by:
parsein interfaceHttpMessageParser<ClassicHttpRequest>- Overrides:
parsein classAbstractMessageParser<ClassicHttpRequest>- Parameters:
buffer- Session input bufferinputStream- Input stream- Returns:
- HTTP message head or
nullif the input stream has been closed by the opposite endpoint. - Throws:
IOException- in case of an I/O errorHttpException- in case of HTTP protocol violation
-
createMessage
protected ClassicHttpRequest createMessage(CharArrayBuffer buffer) throws IOException, HttpException Description copied from class:AbstractMessageParserSubclasses must override this method to generate an instance ofHttpMessagebased on the initial input from the session buffer.Usually this method is expected to read just the very first line or the very first valid from the data stream and based on the input generate an appropriate instance of
HttpMessage.- Specified by:
createMessagein classAbstractMessageParser<ClassicHttpRequest>- Parameters:
buffer- the session input buffer.- Returns:
- HTTP message based on the input from the session buffer.
- Throws:
IOException- in case of an I/O error.HttpException- in case of HTTP protocol violation.
-