StreamChatNetworkError.fromDioException constructor

StreamChatNetworkError.fromDioException(
  1. DioException exception
)

Implementation

factory StreamChatNetworkError.fromDioException(DioException exception) {
  final response = exception.response;
  ErrorResponse? errorResponse;
  final data = response?.data;
  if (data is Map<String, Object?>) {
    errorResponse = ErrorResponse.fromJson(data);
  } else if (data is String) {
    errorResponse = ErrorResponse.fromJson(jsonDecode(data));
  }
  return StreamChatNetworkError.raw(
    code: errorResponse?.code ?? -1,
    message: errorResponse?.message ??
        response?.statusMessage ??
        exception.message ??
        '',
    statusCode: errorResponse?.statusCode ?? response?.statusCode,
    data: errorResponse,
    isRequestCancelledError: exception.type == DioExceptionType.cancel,
  )..stackTrace = exception.stackTrace;
}