|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.apache.http.impl.AbstractHttpClientConnection
org.apache.http.impl.SocketHttpClientConnection
org.apache.http.impl.conn.DefaultClientConnection
@NotThreadSafe public class DefaultClientConnection
Default implementation of an operated client connection.
The following parameters can be used to customize the behavior of this class:
CoreProtocolPNames.STRICT_TRANSFER_ENCODING
CoreProtocolPNames.HTTP_ELEMENT_CHARSET
CoreConnectionPNames.SOCKET_BUFFER_SIZE
CoreConnectionPNames.MAX_LINE_LENGTH
CoreConnectionPNames.MAX_HEADER_COUNT
Field Summary |
---|
Fields inherited from interface org.apache.http.protocol.HttpContext |
---|
RESERVED_PREFIX |
Constructor Summary | |
---|---|
DefaultClientConnection()
|
Method Summary | |
---|---|
void |
close()
|
protected HttpMessageParser<HttpResponse> |
createResponseParser(SessionInputBuffer buffer,
HttpResponseFactory responseFactory,
HttpParams params)
|
protected SessionInputBuffer |
createSessionInputBuffer(Socket socket,
int buffersize,
HttpParams params)
|
protected SessionOutputBuffer |
createSessionOutputBuffer(Socket socket,
int buffersize,
HttpParams params)
|
Object |
getAttribute(String id)
|
Socket |
getSocket()
Obtains the socket for this connection. |
HttpHost |
getTargetHost()
Obtains the target host for this connection. |
boolean |
isSecure()
Indicates whether this connection is secure. |
void |
openCompleted(boolean secure,
HttpParams params)
Signals that the connection has been successfully open. |
void |
opening(Socket sock,
HttpHost target)
Signals that this connection is in the process of being open. |
HttpResponse |
receiveResponseHeader()
|
Object |
removeAttribute(String id)
|
void |
sendRequestHeader(HttpRequest request)
|
void |
setAttribute(String id,
Object obj)
|
void |
shutdown()
Force-closes this connection. |
void |
update(Socket sock,
HttpHost target,
boolean secure,
HttpParams params)
Updates this connection. |
Methods inherited from class org.apache.http.impl.SocketHttpClientConnection |
---|
assertNotOpen, assertOpen, bind, getLocalAddress, getLocalPort, getRemoteAddress, getRemotePort, getSocketTimeout, isOpen, setSocketTimeout, toString |
Methods inherited from class org.apache.http.impl.AbstractHttpClientConnection |
---|
createConnectionMetrics, createEntityDeserializer, createEntitySerializer, createHttpResponseFactory, createRequestWriter, doFlush, flush, getMetrics, init, isEof, isResponseAvailable, isStale, receiveResponseEntity, sendRequestEntity |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Methods inherited from interface org.apache.http.HttpClientConnection |
---|
flush, isResponseAvailable, receiveResponseEntity, sendRequestEntity |
Methods inherited from interface org.apache.http.HttpConnection |
---|
getMetrics, getSocketTimeout, isOpen, isStale, setSocketTimeout |
Methods inherited from interface org.apache.http.HttpInetConnection |
---|
getLocalAddress, getLocalPort, getRemoteAddress, getRemotePort |
Methods inherited from interface org.apache.http.HttpConnection |
---|
getMetrics, getSocketTimeout, isOpen, isStale, setSocketTimeout |
Constructor Detail |
---|
public DefaultClientConnection()
Method Detail |
---|
public final HttpHost getTargetHost()
OperatedClientConnection
update
.
getTargetHost
in interface OperatedClientConnection
public final boolean isSecure()
OperatedClientConnection
update
.
isSecure
in interface OperatedClientConnection
true
if this connection is secure,
false
otherwisepublic final Socket getSocket()
OperatedClientConnection
update
.
getSocket
in interface OperatedClientConnection
getSocket
in class SocketHttpClientConnection
target host
public void opening(Socket sock, 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 OperatedClientConnection
sock
- the unconnected socket which is about to
be connected.target
- the target host of this connection
IOException
public void openCompleted(boolean secure, HttpParams params) throws IOException
OperatedClientConnection
openCompleted
in interface OperatedClientConnection
secure
- 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.
IOException
public 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 HttpConnection
shutdown
in class SocketHttpClientConnection
IOException
- in case of a problempublic void close() throws IOException
close
in interface Closeable
close
in interface HttpConnection
close
in class SocketHttpClientConnection
IOException
protected SessionInputBuffer createSessionInputBuffer(Socket socket, int buffersize, HttpParams params) throws IOException
createSessionInputBuffer
in class SocketHttpClientConnection
IOException
protected SessionOutputBuffer createSessionOutputBuffer(Socket socket, int buffersize, HttpParams params) throws IOException
createSessionOutputBuffer
in class SocketHttpClientConnection
IOException
protected HttpMessageParser<HttpResponse> createResponseParser(SessionInputBuffer buffer, HttpResponseFactory responseFactory, HttpParams params)
createResponseParser
in class AbstractHttpClientConnection
public void update(Socket sock, HttpHost target, boolean secure, HttpParams params) throws IOException
OperatedClientConnection
update
in interface OperatedClientConnection
sock
- 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 connection
IOException
public HttpResponse receiveResponseHeader() throws HttpException, IOException
receiveResponseHeader
in interface HttpClientConnection
receiveResponseHeader
in class AbstractHttpClientConnection
HttpException
IOException
public void sendRequestHeader(HttpRequest request) throws HttpException, IOException
sendRequestHeader
in interface HttpClientConnection
sendRequestHeader
in class AbstractHttpClientConnection
HttpException
IOException
public Object getAttribute(String id)
getAttribute
in interface HttpContext
public Object removeAttribute(String id)
removeAttribute
in interface HttpContext
public void setAttribute(String id, Object obj)
setAttribute
in interface HttpContext
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |