transformStatusCodeToException function

PException transformStatusCodeToException({
  1. required int statusCode,
  2. String? responseBody,
})

an HTTP error code transformer

refer to PException to see what status codes are covered here

Implementation

PException transformStatusCodeToException({
  required int statusCode,
  String? responseBody,
}) {
  switch (statusCode) {
    case 400:
      return BadRequestException(responseBody);
    case 401:
      return UnauthorizedException(responseBody);
    case 403:
      return ForbiddenException(responseBody);
    case 404:
      return NotFound404Exception(responseBody);
    case 405:
      return MethodNotAllowedException(responseBody);
    case 406:
      return NotAcceptableException(responseBody);
    case 408:
      return RequestTimeoutException(responseBody);
    case 409:
      return RequestConflictException(responseBody);
    case 413:
      return PayloadTooLargeException(responseBody);
    case 415:
      return UnsupportedMediaTypeException(responseBody);
    case 429:
      return TooManyRequestsException(responseBody);
    case 431:
      return RequestHeadersTooLargeException(responseBody);
  }

  if (statusCode >= 500) {
    return ProblemWithServerException(responseBody);
  }
  return UnknownHttpException(responseBody);
}