createErrorEntity method
Implementation
ErrorEntity createErrorEntity(Exception error) {
if (error is DioError) {
switch (error.type) {
case DioErrorType.cancel:
return ErrorEntity(code: defDioErrorCode, message: Strings.httpRequestCancel.tr);
case DioErrorType.connectionError:
case DioErrorType.connectionTimeout:
return ErrorEntity(code: defDioErrorCode, message: Strings.httpRequestConnectTimeout.tr);
case DioErrorType.sendTimeout:
return ErrorEntity(code: defDioErrorCode, message: Strings.httpRequestSendTimeout.tr);
case DioErrorType.receiveTimeout:
return ErrorEntity(code: defDioErrorCode, message: Strings.httpRequestReceiveTimeout.tr);
case DioErrorType.badResponse:
int? statusCode = error.response?.statusCode;
String errorMsg = Strings.httpRequestServerStateError.tr;
if (null != statusCode) {
errorMsg = "$errorMsg[$statusCode]";
}
return ErrorEntity(code: defDioErrorCode, message: errorMsg);
default:
if (error.error is SocketException) {
return ErrorEntity(code: defDioErrorCode, message: Strings.httpRequestNetworkError.tr);
} else {
return ErrorEntity(code: defDioErrorCode, message: Strings.httpRequestError.tr);
}
}
} else {
return ErrorEntity(code: defDioErrorCode, message: Strings.httpRequestError.tr);
}
}