|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectjava.io.InputStream
org.jvnet.robust_http_client.RetryableHttpStream
public class RetryableHttpStream
InputStream implementation around HttpURLConnection that automatically reconnects
if the connection fails in the middle.
| Field Summary | |
|---|---|
java.net.HttpURLConnection |
connection
HttpURLConnection to allow the caller to access HTTP resposne headers. |
protected java.net.Proxy |
proxy
Proxy, or null none is explicitly given (Java runtime may still decide to use a proxy, though.) |
protected int |
read
Number of bytes read so far. |
int |
totalLength
Total bytes of the entity. |
java.net.URL |
url
Where are we downloading from? |
| Constructor Summary | |
|---|---|
RetryableHttpStream(java.net.URL url)
Connects to the given HTTP/HTTPS URL, by using the proxy auto-configured by the Java runtime. |
|
RetryableHttpStream(java.net.URL url,
java.net.Proxy proxy)
Connects to the given HTTP/HTTPS URL, by using the specified proxy. |
|
| Method Summary | |
|---|---|
protected java.net.HttpURLConnection |
connect()
Opens the URL and makes a connection. |
int |
read()
|
int |
read(byte[] b,
int off,
int len)
|
protected void |
shallWeRetry()
Subclass can override this method to determine if we should continue to retry, or abort. |
| Methods inherited from class java.io.InputStream |
|---|
available, close, mark, markSupported, read, reset, skip |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
public final java.net.URL url
protected final java.net.Proxy proxy
public final int totalLength
protected int read
public final java.net.HttpURLConnection connection
HttpURLConnection to allow the caller to access HTTP resposne headers.
Do not use URLConnection.getInputStream(), however.
| Constructor Detail |
|---|
public RetryableHttpStream(java.net.URL url)
throws java.io.IOException
java.io.IOException
public RetryableHttpStream(java.net.URL url,
java.net.Proxy proxy)
throws java.io.IOException
proxy - To force a direct connection, pass in Proxy.NO_PROXY.
java.io.IOException| Method Detail |
|---|
protected java.net.HttpURLConnection connect()
throws java.io.IOException
java.io.IOException
protected void shallWeRetry()
throws java.io.IOException
If this method returns normally, we'll retry. By default, this method retries 5 times then quits.
java.io.IOException - to abort the processing.
public int read()
throws java.io.IOException
read in class java.io.InputStreamjava.io.IOException
public int read(byte[] b,
int off,
int len)
throws java.io.IOException
read in class java.io.InputStreamjava.io.IOException
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||