|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectorg.apache.thrift.transport.TTransport
org.apache.thrift.transport.THttpClient
public class THttpClient
HTTP implementation of the TTransport interface. Used for working with a Thrift web services implementation (using for example TServlet). This class offers two implementations of the HTTP transport. One uses HttpURLConnection instances, the other HttpClient from Apache Http Components. The chosen implementation depends on the constructor used to create the THttpClient instance. Using the THttpClient(String url) constructor or passing null as the HttpClient to THttpClient(String url, HttpClient client) will create an instance which will use HttpURLConnection. When using HttpClient, the following configuration leads to 5-15% better performance than the HttpURLConnection implementation: http.protocol.version=HttpVersion.HTTP_1_1 http.protocol.content-charset=UTF-8 http.protocol.expect-continue=false http.connection.stalecheck=false Also note that under high load, the HttpURLConnection implementation may exhaust the open file descriptor limit.
| Nested Class Summary | |
|---|---|
static class |
THttpClient.Factory
|
| Constructor Summary | |
|---|---|
THttpClient(java.lang.String url)
|
|
THttpClient(java.lang.String url,
org.apache.http.client.HttpClient client)
|
|
| Method Summary | |
|---|---|
void |
close()
Closes the transport. |
void |
flush()
Flush any pending data out of a transport buffer. |
boolean |
isOpen()
Queries whether the transport is open. |
void |
open()
Opens the transport for reading/writing. |
int |
read(byte[] buf,
int off,
int len)
Reads up to len bytes into buffer buf, starting att offset off. |
void |
setConnectTimeout(int timeout)
|
void |
setCustomHeader(java.lang.String key,
java.lang.String value)
|
void |
setCustomHeaders(java.util.Map<java.lang.String,java.lang.String> headers)
|
void |
setReadTimeout(int timeout)
|
void |
write(byte[] buf,
int off,
int len)
Writes up to len bytes from the buffer. |
| Methods inherited from class org.apache.thrift.transport.TTransport |
|---|
consumeBuffer, getBuffer, getBufferPosition, getBytesRemainingInBuffer, peek, readAll, write |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
|---|
public THttpClient(java.lang.String url)
throws TTransportException
TTransportException
public THttpClient(java.lang.String url,
org.apache.http.client.HttpClient client)
throws TTransportException
TTransportException| Method Detail |
|---|
public void setConnectTimeout(int timeout)
public void setReadTimeout(int timeout)
public void setCustomHeaders(java.util.Map<java.lang.String,java.lang.String> headers)
public void setCustomHeader(java.lang.String key,
java.lang.String value)
public void open()
TTransport
open in class TTransportpublic void close()
TTransport
close in class TTransportpublic boolean isOpen()
TTransport
isOpen in class TTransport
public int read(byte[] buf,
int off,
int len)
throws TTransportException
TTransport
read in class TTransportbuf - Array to read intooff - Index to start reading atlen - Maximum number of bytes to read
TTransportException - if there was an error reading data
public void write(byte[] buf,
int off,
int len)
TTransport
write in class TTransportbuf - The output data bufferoff - The offset to start writing fromlen - The number of bytes to write
public void flush()
throws TTransportException
TTransport
flush in class TTransportTTransportException - if there was an error writing out data.
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||