Package net.i2p.util

Class EepGet.CLIStatusListener

    • Constructor Detail

      • CLIStatusListener

        public CLIStatusListener()
      • CLIStatusListener

        public CLIStatusListener​(int markSize,
                                 int lineSize)
    • Method Detail

      • bytesTransferred

        public void bytesTransferred​(long alreadyTransferred,
                                     int currentWrite,
                                     long bytesTransferred,
                                     long bytesRemaining,
                                     String url)
        Description copied from interface: EepGet.StatusListener
        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
        Specified by:
        bytesTransferred in interface EepGet.StatusListener
      • transferComplete

        public void transferComplete​(long alreadyTransferred,
                                     long bytesTransferred,
                                     long bytesRemaining,
                                     String url,
                                     String outputFile,
                                     boolean notModified)
        Specified by:
        transferComplete in interface EepGet.StatusListener
      • headerReceived

        public void headerReceived​(String url,
                                   int currentAttempt,
                                   String key,
                                   String val)
        Description copied from interface: EepGet.StatusListener
        Note: 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:
        headerReceived in interface EepGet.StatusListener