Package net.i2p.util

Interface EepGet.StatusListener

    • Method Summary

      All Methods Instance Methods Abstract Methods 
      Modifier and Type Method Description
      void attemptFailed​(String url, long bytesTransferred, long bytesRemaining, int currentAttempt, int numRetries, Exception cause)  
      void attempting​(String url)  
      void bytesTransferred​(long alreadyTransferred, int currentWrite, long bytesTransferred, long bytesRemaining, String url)
      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.
      void headerReceived​(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().
      void transferComplete​(long alreadyTransferred, long bytesTransferred, long bytesRemaining, String url, String outputFile, boolean notModified)  
      void transferFailed​(String url, long bytesTransferred, long bytesRemaining, int currentAttempt)  
    • Method Detail

      • bytesTransferred

        void bytesTransferred​(long alreadyTransferred,
                              int currentWrite,
                              long bytesTransferred,
                              long bytesRemaining,
                              String url)
        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 listener bytesTransferred - 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 Total length should be == alreadyTransferred + currentWrite + bytesRemaining for all calls
      • transferComplete

        void transferComplete​(long alreadyTransferred,
                              long bytesTransferred,
                              long bytesRemaining,
                              String url,
                              String outputFile,
                              boolean notModified)
      • attemptFailed

        void attemptFailed​(String url,
                           long bytesTransferred,
                           long bytesRemaining,
                           int currentAttempt,
                           int numRetries,
                           Exception cause)
      • transferFailed

        void transferFailed​(String url,
                            long bytesTransferred,
                            long bytesRemaining,
                            int currentAttempt)
      • headerReceived

        void headerReceived​(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(). To be changed?
      • attempting

        void attempting​(String url)