type IsRetryableErrorFunc …
func (r IsRetryableErrorFunc) IsErrorRetryable(request *http.Request, err error) bool { … }
var neverRetryError …
type WithRetry …
type RetryAfter …
type withRetry …
func (r *withRetry) trackPreviousError(err error) { … }
func (r *withRetry) IsNextRetry(ctx context.Context, restReq *Request, httpReq *http.Request, resp *http.Response, err error, f IsRetryableErrorFunc) bool { … }
func (r *withRetry) Before(ctx context.Context, request *Request) error { … }
func (r *withRetry) After(ctx context.Context, request *Request, resp *http.Response, err error) { … }
func (r *withRetry) WrapPreviousError(currentErr error) error { … }
type wrapPreviousError …
func (w *wrapPreviousError) Unwrap() error { … }
func (w *wrapPreviousError) Error() string { … }
func checkWait(resp *http.Response) (int, bool) { … }
func getRetryReason(retries, seconds int, resp *http.Response, err error) string { … }
func readAndCloseResponseBody(resp *http.Response) { … }
func retryAfterResponse() *http.Response { … }
func retryAfterResponseWithDelay(delay string) *http.Response { … }
func retryAfterResponseWithCodeAndDelay(code int, delay string) *http.Response { … }