DioResultsModel.fromDioError constructor

DioResultsModel.fromDioError(
  1. DioException dioError
)

Creates an instance from a Dio Error (exception).

Implementation

factory DioResultsModel.fromDioError(DioException dioError) {
  final responseData = dioError.response?.data as Map<String, dynamic>? ?? {};

  return DioResultsModel(
    statusCode: dioError.response?.statusCode ?? 0,
    statusMessage: dioError.response?.statusMessage ?? '',
    headers: dioError.response != null
        ? Map<String, dynamic>.from(dioError.response!.headers.map)
        : {},
    isRedirect: dioError.response?.isRedirect ?? false,
    redirects: dioError.response?.redirects ?? [],
    extra: dioError.response?.extra ?? {},
    requestPath: dioError.requestOptions.path,
    requestMethod: dioError.requestOptions.method,
    requestBaseUrl: dioError.requestOptions.baseUrl,
    requestData: dioError.requestOptions.data,
    queryParameters: dioError.requestOptions.queryParameters,
    requestHeaders: Map<String, dynamic>.from(
      dioError.requestOptions.headers,
    ),
    connectTimeout: dioError.requestOptions.connectTimeout,
    receiveTimeout: dioError.requestOptions.receiveTimeout,
    contentType: dioError.requestOptions.contentType,
    rawResponse: responseData,
    requestTime: dioError.requestOptions.extra['request_time'] as DateTime?,
    responseTime: DateTime.now(),
    duration: null,
  );
}