@NotThreadSafe public class DefaultClientConnection extends org.apache.http.impl.SocketHttpClientConnection implements OperatedClientConnection, org.apache.http.protocol.HttpContext
The following parameters can be used to customize the behavior of this class:
CoreProtocolPNames.STRICT_TRANSFER_ENCODINGCoreProtocolPNames.HTTP_ELEMENT_CHARSETCoreConnectionPNames.SOCKET_BUFFER_SIZECoreConnectionPNames.MAX_LINE_LENGTHCoreConnectionPNames.MAX_HEADER_COUNT| Constructor and Description |
|---|
DefaultClientConnection() |
| Modifier and Type | Method and Description |
|---|---|
void |
close() |
protected org.apache.http.io.HttpMessageParser<org.apache.http.HttpResponse> |
createResponseParser(org.apache.http.io.SessionInputBuffer buffer,
org.apache.http.HttpResponseFactory responseFactory,
org.apache.http.params.HttpParams params) |
protected org.apache.http.io.SessionInputBuffer |
createSessionInputBuffer(Socket socket,
int buffersize,
org.apache.http.params.HttpParams params) |
protected org.apache.http.io.SessionOutputBuffer |
createSessionOutputBuffer(Socket socket,
int buffersize,
org.apache.http.params.HttpParams params) |
Object |
getAttribute(String id) |
Socket |
getSocket()
Obtains the socket for this connection.
|
org.apache.http.HttpHost |
getTargetHost()
Obtains the target host for this connection.
|
boolean |
isSecure()
Indicates whether this connection is secure.
|
void |
openCompleted(boolean secure,
org.apache.http.params.HttpParams params)
Signals that the connection has been successfully open.
|
void |
opening(Socket sock,
org.apache.http.HttpHost target)
Signals that this connection is in the process of being open.
|
org.apache.http.HttpResponse |
receiveResponseHeader() |
Object |
removeAttribute(String id) |
void |
sendRequestHeader(org.apache.http.HttpRequest request) |
void |
setAttribute(String id,
Object obj) |
void |
shutdown()
Force-closes this connection.
|
void |
update(Socket sock,
org.apache.http.HttpHost target,
boolean secure,
org.apache.http.params.HttpParams params)
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, sendRequestEntitypublic final org.apache.http.HttpHost getTargetHost()
OperatedClientConnectionupdate.getTargetHost in interface OperatedClientConnectionpublic final boolean isSecure()
OperatedClientConnectionupdate.isSecure in interface OperatedClientConnectiontrue if this connection is secure,
false otherwisepublic final Socket getSocket()
OperatedClientConnectionupdate.getSocket in interface OperatedClientConnectiongetSocket in class org.apache.http.impl.SocketHttpClientConnectiontarget hostpublic void opening(Socket sock, org.apache.http.HttpHost target) throws 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 connectionIOExceptionpublic void openCompleted(boolean secure,
org.apache.http.params.HttpParams params)
throws 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.IOExceptionpublic void shutdown()
throws 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 org.apache.http.HttpConnectionshutdown in class org.apache.http.impl.SocketHttpClientConnectionIOException - in case of a problempublic void close()
throws IOException
close in interface Closeableclose in interface AutoCloseableclose in interface org.apache.http.HttpConnectionclose in class org.apache.http.impl.SocketHttpClientConnectionIOExceptionprotected org.apache.http.io.SessionInputBuffer createSessionInputBuffer(Socket socket, int buffersize, org.apache.http.params.HttpParams params) throws IOException
createSessionInputBuffer in class org.apache.http.impl.SocketHttpClientConnectionIOExceptionprotected org.apache.http.io.SessionOutputBuffer createSessionOutputBuffer(Socket socket, int buffersize, org.apache.http.params.HttpParams params) throws IOException
createSessionOutputBuffer in class org.apache.http.impl.SocketHttpClientConnectionIOExceptionprotected org.apache.http.io.HttpMessageParser<org.apache.http.HttpResponse> createResponseParser(org.apache.http.io.SessionInputBuffer buffer,
org.apache.http.HttpResponseFactory responseFactory,
org.apache.http.params.HttpParams params)
createResponseParser in class org.apache.http.impl.AbstractHttpClientConnectionpublic void update(Socket sock, org.apache.http.HttpHost target, boolean secure, org.apache.http.params.HttpParams params) throws IOException
OperatedClientConnectionupdate 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 connectionIOExceptionpublic org.apache.http.HttpResponse receiveResponseHeader()
throws org.apache.http.HttpException,
IOException
receiveResponseHeader in interface org.apache.http.HttpClientConnectionreceiveResponseHeader in class org.apache.http.impl.AbstractHttpClientConnectionorg.apache.http.HttpExceptionIOExceptionpublic void sendRequestHeader(org.apache.http.HttpRequest request)
throws org.apache.http.HttpException,
IOException
sendRequestHeader in interface org.apache.http.HttpClientConnectionsendRequestHeader in class org.apache.http.impl.AbstractHttpClientConnectionorg.apache.http.HttpExceptionIOExceptionpublic Object getAttribute(String id)
getAttribute in interface org.apache.http.protocol.HttpContextpublic Object removeAttribute(String id)
removeAttribute in interface org.apache.http.protocol.HttpContextCopyright © 1999-2015 The Apache Software Foundation. All Rights Reserved.