@Contract(threading=IMMUTABLE) public class DefaultConnectionReuseStrategy extends Object implements ConnectionReuseStrategy
Connectionheader field if present. Connections will not be re-used and will close if any of these conditions is met
closeconnection option is present in the request message
closeconnection option is present in the response message
HTTP/1.0(or earlier) and
keep-aliveconnection option is not present
Connectionheader field, the non-standard but commonly used
Proxy-Connectionheader field will be used instead. If no connection options are explicitly given the default policy for the HTTP version is applied.
HTTP/1.1(or later) connections are re-used by default.
HTTP/1.0(or earlier) connections are not re-used by default.
|Modifier and Type||Field and Description|
|Constructor and Description|
|Modifier and Type||Method and Description|
Decides whether a connection can be kept open after a request.
public static final DefaultConnectionReuseStrategy INSTANCE
public boolean keepAlive(HttpRequest request, HttpResponse response, HttpContext context)
false, the caller MUST close the connection to correctly comply with the HTTP protocol. If it returns
true, the caller SHOULD attempt to keep the connection open for reuse with another request.
One can use the HTTP context to retrieve additional objects that may be relevant for the keep-alive strategy: the actual HTTP connection, the original HTTP request, target host if known, number of times the connection has been reused already and so on.
If the connection is already closed,
false is returned.
The stale connection check MUST NOT be triggered by a
connection reuse strategy.
request- The last request transmitted over that connection.
response- The last response transmitted over that connection.
context- the context in which the connection is being used.
trueif the connection is allowed to be reused, or
falseif it MUST NOT be reused
Copyright © 2005–2020 The Apache Software Foundation. All rights reserved.