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>
public class DefaultHttpRequestParser extends AbstractMessageParser<ClassicHttpRequest>
HTTP request parser that obtain its input from an instance ofSessionInputBuffer.- Since:
- 4.2
-
-
Field Summary
Fields Modifier and Type Field Description private HttpRequestFactory<ClassicHttpRequest>requestFactory
-
Constructor Summary
Constructors Constructor Description DefaultHttpRequestParser()DefaultHttpRequestParser(Http1Config http1Config)DefaultHttpRequestParser(LineParser lineParser, HttpRequestFactory<ClassicHttpRequest> requestFactory, Http1Config http1Config)Creates new instance of DefaultHttpRequestParser.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected ClassicHttpRequestcreateMessage(CharArrayBuffer buffer)Subclasses must override this method to generate an instance ofHttpMessagebased on the initial input from the session buffer.ClassicHttpRequestparse(SessionInputBuffer buffer, java.io.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 Detail
-
requestFactory
private final HttpRequestFactory<ClassicHttpRequest> requestFactory
-
-
Constructor Detail
-
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
public DefaultHttpRequestParser(Http1Config http1Config)
- Since:
- 4.3
-
DefaultHttpRequestParser
public DefaultHttpRequestParser()
- Since:
- 4.3
-
-
Method Detail
-
parse
public ClassicHttpRequest parse(SessionInputBuffer buffer, java.io.InputStream inputStream) throws java.io.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:
java.io.IOException- in case of an I/O errorHttpException- in case of HTTP protocol violation
-
createMessage
protected ClassicHttpRequest createMessage(CharArrayBuffer buffer) throws java.io.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:
java.io.IOException- in case of an I/O error.HttpException- in case of HTTP protocol violation.
-
-