Top Description Fields Constructors Methods
org.apache.hc.core5.http.impl

public Class DefaultConnectionReuseStrategy

extends Object
implements ConnectionReuseStrategy
Class Inheritance
All Implemented Interfaces
org.apache.hc.core5.http.ConnectionReuseStrategy
Annotations
@Contract
threading:IMMUTABLE
Imports
java.util.Iterator, org.apache.hc.core5.annotation.Contract, .ThreadingBehavior, org.apache.hc.core5.http.ConnectionReuseStrategy, .Header, .HeaderElements, .HttpHeaders, .HttpRequest, .HttpResponse, .HttpStatus, .HttpVersion, .ProtocolVersion, org.apache.hc.core5.http.message.BasicTokenIterator, .MessageSupport, org.apache.hc.core5.http.protocol.HttpContext, org.apache.hc.core5.util.Args

Default implementation of a strategy deciding about connection re-use. The strategy determines whether a connection is persistent or not based on the message’s protocol version and Connection header field if present. Connections will not be re-used and will close if any of these conditions is met In the absence of a Connection header field, the non-standard but commonly used Proxy-Connection header 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.
Since
4.0

Field Summary

Modifier and TypeField and Description
public static final DefaultConnectionReuseStrategy

Constructor Summary

AccessConstructor and Description
public

Method Summary

Modifier and TypeMethod and Description
public boolean
keepAlive(final HttpRequest
The last request transmitted over that connection.
request
,
final HttpResponse
The last response transmitted over that connection.
response
,
final HttpContext
the context in which the connection is being used.
context
)

Implements org.apache.hc.core5.http.ConnectionReuseStrategy.keepAlive.

Decides whether a connection can be kept open after a request.
Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

INSTANCEback to summary
public static final DefaultConnectionReuseStrategy INSTANCE

Constructor Detail

DefaultConnectionReuseStrategyback to summary
public DefaultConnectionReuseStrategy()

Method Detail

keepAliveback to summary
public boolean keepAlive(final HttpRequest request, final HttpResponse response, final HttpContext context)

Implements org.apache.hc.core5.http.ConnectionReuseStrategy.keepAlive.

Doc from org.apache.hc.core5.http.ConnectionReuseStrategy.keepAlive.

Decides whether a connection can be kept open after a request. If this method returns 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.

Parameters
request:HttpRequest

The last request transmitted over that connection.

response:HttpResponse

The last response transmitted over that connection.

context:HttpContext

the context in which the connection is being used.

Returns:boolean

true if the connection is allowed to be reused, or false if it MUST NOT be reused

Annotations
@Override