if (requestLine.getURI().getQuery() != null) {
fillQueryString(httpRequest, requestLine.getURI().getQuery(), true);
}
ContentLengthHttpHeader contentLengthHeader = ((ContentLengthHttpHeader) httpHeaders.getHeader("Content-Length"));
ContentTypeHttpHeader contentTypeHeader = ((ContentTypeHttpHeader) httpHeaders.getHeader("Content-Type"));
IHttpHeader transferEncoding = httpHeaders.getHeader("Transfer-Encoding");
TransferEncodingHttpHeader transferEncodingHeader = null;
if (transferEncoding != null) {
transferEncodingHeader = (TransferEncodingHttpHeader) transferEncoding;
}
if (contentLengthHeader != null) {
IHttpRequestBodyParser bodyParser = bodyParserFactory.build(contentTypeHeader, transferEncodingHeader);
IHttpRequestBodyData bodyData = null;
InputStream contentLengthInputStream = new ContentLengthInputStream(is, contentLengthHeader.getValue());
if (transferEncodingHeader != null && transferEncodingHeader.getValue().equalsIgnoreCase("chunked")) {
ChunkedInputStream cis = new ChunkedInputStream(contentLengthInputStream, httpHeaders);
bodyData = bodyParser.parse(cis);
} else {
bodyData = bodyParser.parse(contentLengthInputStream);