Class RetryStrategy.Standard

  • All Implemented Interfaces:
    RetryStrategy
    Enclosing interface:
    RetryStrategy

    public static class RetryStrategy.Standard
    extends Object
    implements RetryStrategy
    A standard implementation of the RetryStrategy which follows spec based Retry-After logic - Will attempt a retry on any 301, 429, 503, or 529 response which is accompanied by a Retry-After header. - Retry-After can be either date or seconds based see https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Retry-After
    • Constructor Detail

      • Standard

        public Standard​(int maxAttempts)
    • Method Detail

      • isRetryable

        public boolean isRetryable​(HttpResponse response)
        Description copied from interface: RetryStrategy
        Checks to see if the response is retryable
        Specified by:
        isRetryable in interface RetryStrategy
        Parameters:
        response - the last response
        Returns:
        a bool indicating if the request should be retried
      • getWaitTime

        public long getWaitTime​(HttpResponse response)
        Description copied from interface: RetryStrategy
        Get the number of milliseconds the system should wait before retrying. A value less than 1 will result in the termination of the retry loop
        Specified by:
        getWaitTime in interface RetryStrategy
        Parameters:
        response - the last response
        Returns:
        millies
      • parseToMillies

        protected Long parseToMillies​(String value)
      • getMaxAttempts

        public int getMaxAttempts()
        Description copied from interface: RetryStrategy
        Get the max number of times the Unirest should retry responses before giving up and allowing a final return
        Specified by:
        getMaxAttempts in interface RetryStrategy
        Returns:
        the max attempts