Package net.i2p.util
Class EepGet.CLIStatusListener
java.lang.Object
net.i2p.util.EepGet.CLIStatusListener
- All Implemented Interfaces:
EepGet.StatusListener
- Enclosing class:
- EepGet
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidattemptFailed(String url, long bytesTransferred, long bytesRemaining, int currentAttempt, int numRetries, Exception cause) voidattempting(String url) voidbytesTransferred(long alreadyTransferred, int currentWrite, long bytesTransferred, long bytesRemaining, String url) Total length should be == alreadyTransferred + currentWrite + bytesRemaining for all callsvoidheaderReceived(String url, int currentAttempt, String key, String val) Note: Headers are not processed, and this is not called, for most error response codes, unless setWriteErrorToOutput() is called before fetch().voidtransferComplete(long alreadyTransferred, long bytesTransferred, long bytesRemaining, String url, String outputFile, boolean notModified) voidtransferFailed(String url, long bytesTransferred, long bytesRemaining, int currentAttempt)
-
Constructor Details
-
CLIStatusListener
public CLIStatusListener() -
CLIStatusListener
public CLIStatusListener(int markSize, int lineSize)
-
-
Method Details
-
bytesTransferred
public void bytesTransferred(long alreadyTransferred, int currentWrite, long bytesTransferred, long bytesRemaining, String url) Description copied from interface:EepGet.StatusListenerTotal length should be == alreadyTransferred + currentWrite + bytesRemaining for all calls- Specified by:
bytesTransferredin interfaceEepGet.StatusListener- Parameters:
alreadyTransferred- total of all attempts, not including currentWrite If nonzero on the first call, a partial file of that length was found, _and_ the server supports resume. If zero on a subsequent call after some bytes are transferred (and presumably after an attemptFailed), the server does _not_ support resume and we had to start over. To track _actual_ transfer if the output file could already exist, the listener should keep its own counter, or subtract the initial alreadyTransferred value. And watch out for alreadyTransferred resetting if a resume failed...currentWrite- since last call to the listenerbytesTransferred- includes headers, retries, redirects, discarded partial downloads, ...bytesRemaining- on this attempt only, currentWrite already subtracted - or -1 if chunked encoding or server does not return a length
-
transferComplete
public void transferComplete(long alreadyTransferred, long bytesTransferred, long bytesRemaining, String url, String outputFile, boolean notModified) - Specified by:
transferCompletein interfaceEepGet.StatusListeneroutputFile- null if unknown (output stream constructor)- See Also:
-
attemptFailed
public void attemptFailed(String url, long bytesTransferred, long bytesRemaining, int currentAttempt, int numRetries, Exception cause) - Specified by:
attemptFailedin interfaceEepGet.StatusListener- See Also:
-
transferFailed
public void transferFailed(String url, long bytesTransferred, long bytesRemaining, int currentAttempt) - Specified by:
transferFailedin interfaceEepGet.StatusListener- See Also:
-
attempting
- Specified by:
attemptingin interfaceEepGet.StatusListener
-
headerReceived
Description copied from interface:EepGet.StatusListenerNote: Headers are not processed, and this is not called, for most error response codes, unless setWriteErrorToOutput() is called before fetch(). To be changed?- Specified by:
headerReceivedin interfaceEepGet.StatusListener
-