public boolean lessEquals(final ProtocolVersion protocolVersion) { return version.lessEquals(protocolVersion); }
@Override public void process(final HttpRequest request, final EntityDetails entity, final HttpContext context) throws HttpException, IOException { Args.notNull(request, "HTTP request"); if (!request.containsHeader(HttpHeaders.EXPECT)) { if (entity != null) { final ProtocolVersion ver = context.getProtocolVersion(); // Do not send the expect header if request body is known to be empty if (entity.getContentLength() != 0 && !ver.lessEquals(HttpVersion.HTTP_1_0)) { request.addHeader(HttpHeaders.EXPECT, HeaderElements.CONTINUE); } } } }
@Override public void process(final HttpRequest request, final EntityDetails entity, final HttpContext context) throws HttpException, IOException { Args.notNull(request, "HTTP request"); if (!request.containsHeader(HttpHeaders.EXPECT)) { if (entity != null) { final ProtocolVersion ver = context.getProtocolVersion(); // Do not send the expect header if request body is known to be empty if (entity.getContentLength() != 0 && !ver.lessEquals(HttpVersion.HTTP_1_0)) { request.addHeader(HttpHeaders.EXPECT, HeaderElements.CONTINUE); } } } }
@Override public void process(final HttpRequest request, final EntityDetails entity, final HttpContext context) throws HttpException, IOException { Args.notNull(request, "HTTP request"); Args.notNull(context, "HTTP context"); final ProtocolVersion ver = context.getProtocolVersion(); final String method = request.getMethod(); if (method.equalsIgnoreCase("CONNECT") && ver.lessEquals(HttpVersion.HTTP_1_0)) { return; } if (!request.containsHeader(HttpHeaders.HOST)) { URIAuthority authority = request.getAuthority(); if (authority == null) { if (ver.lessEquals(HttpVersion.HTTP_1_0)) { return; } throw new ProtocolException("Target host is unknown"); } if (authority.getUserInfo() != null) { authority = new URIAuthority(authority.getHostName(), authority.getPort()); } request.addHeader(HttpHeaders.HOST, authority); } }
@Override public void process(final HttpRequest request, final EntityDetails entity, final HttpContext context) throws HttpException, IOException { Args.notNull(request, "HTTP request"); Args.notNull(context, "HTTP context"); final ProtocolVersion ver = context.getProtocolVersion(); final String method = request.getMethod(); if (method.equalsIgnoreCase("CONNECT") && ver.lessEquals(HttpVersion.HTTP_1_0)) { return; } if (!request.containsHeader(HttpHeaders.HOST)) { URIAuthority authority = request.getAuthority(); if (authority == null) { if (ver.lessEquals(HttpVersion.HTTP_1_0)) { return; } throw new ProtocolException("Target host is unknown"); } if (authority.getUserInfo() != null) { authority = new URIAuthority(authority.getHostName(), authority.getPort()); } request.addHeader(HttpHeaders.HOST, authority); } }
if (entity != null && entity.getContentLength() < 0 && ver.lessEquals(HttpVersion.HTTP_1_0)) { response.setHeader(HttpHeaders.CONNECTION, HeaderElements.CLOSE); } else { response.addHeader(HttpHeaders.CONNECTION, HeaderElements.KEEP_ALIVE); } else { if (ver.lessEquals(HttpVersion.HTTP_1_0)) { response.addHeader(HttpHeaders.CONNECTION, HeaderElements.CLOSE);
if (entity != null && entity.getContentLength() < 0 && ver.lessEquals(HttpVersion.HTTP_1_0)) { response.setHeader(HttpHeaders.CONNECTION, HeaderElements.CLOSE); } else { response.addHeader(HttpHeaders.CONNECTION, HeaderElements.KEEP_ALIVE); } else { if (ver.lessEquals(HttpVersion.HTTP_1_0)) { response.addHeader(HttpHeaders.CONNECTION, HeaderElements.CLOSE);
@Override public void process(final HttpRequest request, final EntityDetails entity, final HttpContext context) throws HttpException, IOException { Args.notNull(request, "HTTP request"); if (!request.containsHeader(HttpHeaders.EXPECT)) { final ProtocolVersion version = request.getVersion() != null ? request.getVersion() : HttpVersion.HTTP_1_1; // Do not send the expect header if request body is known to be empty if (entity != null && entity.getContentLength() != 0 && !version.lessEquals(HttpVersion.HTTP_1_0)) { final HttpClientContext clientContext = HttpClientContext.adapt(context); final RequestConfig config = clientContext.getRequestConfig(); if (config.isExpectContinueEnabled()) { request.addHeader(HttpHeaders.EXPECT, HeaderElements.CONTINUE); } } } }
if (ver.lessEquals(HttpVersion.HTTP_1_0)) { throw new ProtocolException( "Chunked transfer encoding not allowed for " + ver);
if (ver.lessEquals(HttpVersion.HTTP_1_0)) { throw new ProtocolException( "Chunked transfer encoding not allowed for " + ver);