ManagedHttpClientConnectionFactory.@NotThreadSafe @Deprecated public class DefaultClientConnection extends SocketHttpClientConnection implements OperatedClientConnection, ManagedHttpClientConnection, HttpContext
RESERVED_PREFIX| Constructor and Description |
|---|
DefaultClientConnection()
Deprecated.
|
| Modifier and Type | Method and Description |
|---|---|
void |
bind(java.net.Socket socket)
Deprecated.
Binds this connection to the given socket.
|
void |
close()
Deprecated.
Closes this connection gracefully.
|
protected HttpMessageParser<HttpResponse> |
createResponseParser(SessionInputBuffer buffer,
HttpResponseFactory responseFactory,
HttpParams params)
Deprecated.
Creates an instance of
HttpMessageParser to be used for parsing
HTTP responses received over this connection. |
protected SessionInputBuffer |
createSessionInputBuffer(java.net.Socket socket,
int buffersize,
HttpParams params)
Deprecated.
Creates an instance of
SocketInputBuffer to be used for
receiving data from the given Socket. |
protected SessionOutputBuffer |
createSessionOutputBuffer(java.net.Socket socket,
int buffersize,
HttpParams params)
Deprecated.
Creates an instance of
SessionOutputBuffer to be used for
sending data to the given Socket. |
java.lang.Object |
getAttribute(java.lang.String id)
Deprecated.
Obtains attribute with the given name.
|
java.lang.String |
getId()
Deprecated.
Returns connection ID which is expected to be unique
for the life span of the connection manager.
|
java.net.Socket |
getSocket()
Deprecated.
Obtains the socket for this connection.
|
javax.net.ssl.SSLSession |
getSSLSession()
Deprecated.
Obtains the SSL session of the underlying connection, if any.
|
HttpHost |
getTargetHost()
Deprecated.
Obtains the target host for this connection.
|
boolean |
isSecure()
Deprecated.
Indicates whether this connection is secure.
|
void |
openCompleted(boolean secure,
HttpParams params)
Deprecated.
Signals that the connection has been successfully open.
|
void |
opening(java.net.Socket sock,
HttpHost target)
Deprecated.
Signals that this connection is in the process of being open.
|
HttpResponse |
receiveResponseHeader()
Deprecated.
Receives the request line and headers of the next response available from
this connection.
|
java.lang.Object |
removeAttribute(java.lang.String id)
Deprecated.
Removes attribute with the given name from the context.
|
void |
sendRequestHeader(HttpRequest request)
Deprecated.
Sends the request line and all headers over the connection.
|
void |
setAttribute(java.lang.String id,
java.lang.Object obj)
Deprecated.
Sets value of the attribute with the given name.
|
void |
shutdown()
Deprecated.
Force-closes this connection.
|
void |
update(java.net.Socket sock,
HttpHost target,
boolean secure,
HttpParams params)
Deprecated.
Updates this connection.
|
assertNotOpen, assertOpen, bind, getLocalAddress, getLocalPort, getRemoteAddress, getRemotePort, getSocketTimeout, isOpen, setSocketTimeout, toStringcreateConnectionMetrics, createEntityDeserializer, createEntitySerializer, createHttpResponseFactory, createRequestWriter, doFlush, flush, getMetrics, init, isEof, isResponseAvailable, isStale, receiveResponseEntity, sendRequestEntityclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitflush, isResponseAvailable, receiveResponseEntity, sendRequestEntitygetLocalAddress, getLocalPort, getRemoteAddress, getRemotePortgetMetrics, getSocketTimeout, isOpen, isStale, setSocketTimeoutpublic java.lang.String getId()
ManagedHttpClientConnectiongetId in interface ManagedHttpClientConnectionpublic final HttpHost getTargetHost()
OperatedClientConnection
The return value is well-defined only while the connection is open.
It may change even while the connection is open,
because of an update.
getTargetHost in interface OperatedClientConnectionpublic final boolean isSecure()
OperatedClientConnectionupdate.isSecure in interface OperatedClientConnectiontrue if this connection is secure,
false otherwisepublic final java.net.Socket getSocket()
OperatedClientConnectionupdate.getSocket in interface ManagedHttpClientConnectiongetSocket in interface OperatedClientConnectiongetSocket in class SocketHttpClientConnectiontarget hostpublic javax.net.ssl.SSLSession getSSLSession()
ManagedHttpClientConnectionSSLSocket, the SSL session of
that socket is obtained. This is a potentially blocking operation.getSSLSession in interface ManagedHttpClientConnectionnull otherwisepublic void opening(java.net.Socket sock,
HttpHost target)
throws java.io.IOException
OperatedClientConnection
By calling this method, the connection can be re-initialized
with a new Socket instance before OperatedClientConnection.openCompleted(boolean, org.apache.http.params.HttpParams) is called.
This enabled the connection to close that socket if
shutdown
is called before it is fully open. Closing an unconnected socket
will interrupt a thread that is blocked on the connect.
Otherwise, that thread will either time out on the connect,
or it returns successfully and then opens this connection
which was just shut down.
This method can be called multiple times if the connection is layered over another protocol. Note: This method will not close the previously used socket. It is the caller's responsibility to close that socket if it is no longer required.
The caller must invoke OperatedClientConnection.openCompleted(boolean, org.apache.http.params.HttpParams) in order to complete
the process.
opening in interface OperatedClientConnectionsock - the unconnected socket which is about to
be connected.target - the target host of this connectionjava.io.IOExceptionpublic void openCompleted(boolean secure,
HttpParams params)
throws java.io.IOException
OperatedClientConnectionopenCompleted in interface OperatedClientConnectionsecure - true if this connection is secure, for
example if an SSLSocket is used, or
false if it is not secureparams - parameters for this connection. The parameters will
be used when creating dependent objects, for example
to determine buffer sizes.java.io.IOExceptionpublic void shutdown()
throws java.io.IOException
opening was already called but
openCompleted was not), the associated
socket that is being connected to a remote address will be closed.
That will interrupt a thread that is blocked on connecting
the socket.
If the connection is not yet open, this will prevent the connection
from being opened.shutdown in interface HttpConnectionshutdown in class SocketHttpClientConnectionjava.io.IOException - in case of a problempublic void close()
throws java.io.IOException
HttpConnectionshutdown instead.close in interface java.io.Closeableclose in interface java.lang.AutoCloseableclose in interface HttpConnectionclose in class SocketHttpClientConnectionjava.io.IOExceptionprotected SessionInputBuffer createSessionInputBuffer(java.net.Socket socket, int buffersize, HttpParams params) throws java.io.IOException
SocketHttpClientConnectionSocketInputBuffer to be used for
receiving data from the given Socket.
This method can be overridden in a super class in order to provide
a custom implementation of SessionInputBuffer interface.
createSessionInputBuffer in class SocketHttpClientConnectionsocket - the socket.buffersize - the buffer size.params - HTTP parameters.java.io.IOException - in case of an I/O error.SocketInputBuffer.SocketInputBuffer(Socket, int, HttpParams)protected SessionOutputBuffer createSessionOutputBuffer(java.net.Socket socket, int buffersize, HttpParams params) throws java.io.IOException
SocketHttpClientConnectionSessionOutputBuffer to be used for
sending data to the given Socket.
This method can be overridden in a super class in order to provide
a custom implementation of SocketOutputBuffer interface.
createSessionOutputBuffer in class SocketHttpClientConnectionsocket - the socket.buffersize - the buffer size.params - HTTP parameters.java.io.IOException - in case of an I/O error.SocketOutputBuffer.SocketOutputBuffer(Socket, int, HttpParams)protected HttpMessageParser<HttpResponse> createResponseParser(SessionInputBuffer buffer, HttpResponseFactory responseFactory, HttpParams params)
AbstractHttpClientConnectionHttpMessageParser to be used for parsing
HTTP responses received over this connection.
This method can be overridden in a super class in order to provide
a different implementation of the HttpMessageParser interface or
to pass a different implementation of the
LineParser to the the
DefaultHttpResponseParser constructor.
createResponseParser in class AbstractHttpClientConnectionbuffer - the session input buffer.responseFactory - the HTTP response factory.params - HTTP parameters.public void bind(java.net.Socket socket)
throws java.io.IOException
ManagedHttpClientConnectionbind in interface ManagedHttpClientConnectionsocket - the socket to bind the connection to.java.io.IOExceptionpublic void update(java.net.Socket sock,
HttpHost target,
boolean secure,
HttpParams params)
throws java.io.IOException
OperatedClientConnectionNote: Updating the connection will not close the previously used socket. It is the caller's responsibility to close that socket if it is no longer required.
update in interface OperatedClientConnectionsock - the new socket for communicating with the target host,
or null to continue using the old socket.
If null is passed, helper objects that
depend on the socket should be re-used. In that case,
some changes in the parameters will not take effect.target - the new target host of this connectionsecure - true if this connection is now secure,
false if it is not secureparams - new parameters for this connectionjava.io.IOExceptionpublic HttpResponse receiveResponseHeader() throws HttpException, java.io.IOException
HttpClientConnectionreceiveResponseHeader in interface HttpClientConnectionreceiveResponseHeader in class AbstractHttpClientConnectionHttpException - in case of HTTP protocol violationjava.io.IOException - in case of an I/O errorpublic void sendRequestHeader(HttpRequest request) throws HttpException, java.io.IOException
HttpClientConnectionsendRequestHeader in interface HttpClientConnectionsendRequestHeader in class AbstractHttpClientConnectionrequest - the request whose headers to send.HttpException - in case of HTTP protocol violationjava.io.IOException - in case of an I/O errorpublic java.lang.Object getAttribute(java.lang.String id)
HttpContextgetAttribute in interface HttpContextid - the attribute name.null if not set.public java.lang.Object removeAttribute(java.lang.String id)
HttpContextremoveAttribute in interface HttpContextid - the attribute name.null if not set.public void setAttribute(java.lang.String id,
java.lang.Object obj)
HttpContextsetAttribute in interface HttpContextid - the attribute name.obj - the attribute value.