onError method

Called when an exception is thrown.

Implementation

@override
@nonVirtual
Future<InterceptorResult<RhttpException>> onError(
  RhttpException exception,
) async {
  final isRetry = exception.request.additionalData[key] ?? false;
  if (isRetry) {
    // Don't start a retry loop if we're already retrying.
    return Interceptor.next();
  }

  if (!shouldRetry(null, exception)) {
    return Interceptor.next();
  }

  return await _retry(null, exception);
}