code: def ShouldRetry(self, exception):
          
          if self.current_retry_attempt_count < self._max_retry_attempt_count:
              self.current_retry_attempt_count += 1
              self.retry_after_in_milliseconds = 0
                  
              if self._fixed_retry_interval_in_milliseconds:
                  self.retry_after_in_milliseconds = self._fixed_retry_interval_in_milliseconds
              elif http_constants.HttpHeaders.RetryAfterInMilliseconds in exception.headers:
                  self.retry_after_in_milliseconds = int(exception.headers[http_constants.HttpHeaders.RetryAfterInMilliseconds])
                  
              if self.cummulative_wait_time_in_milliseconds < self._max_wait_time_in_milliseconds:
                  self.cummulative_wait_time_in_milliseconds += self.retry_after_in_milliseconds
                  return True
              
          return False
docs: Returns true if should retry based on the passed-in exception.
  
          :param (errors.HTTPFailure instance) exception:
  
          :rtype:
              boolean