Files
workavia-mail-front/lib/main/exceptions/send_email_exception_thrower.dart
T
Dat PHAM HOANG cb50c183cf [Android][Disable work manager] check internet connection directly
(cherry picked from commit de517af8cce44d34f01fc889c9b03c01ee489351)
2024-01-12 05:13:30 +01:00

23 lines
1016 B
Dart

import 'dart:async';
import 'package:core/utils/app_logger.dart';
import 'package:tmail_ui_user/features/network_connection/presentation/network_connection_controller.dart';
import 'package:tmail_ui_user/main/exceptions/remote_exception.dart';
import 'package:tmail_ui_user/main/exceptions/remote_exception_thrower.dart';
import '../routes/route_navigation.dart';
class SendEmailExceptionThrower extends RemoteExceptionThrower {
@override
FutureOr<void> throwException(error, stackTrace) async {
log('SendEmailExceptionThrower::throwException(): $error | stackTrace: $stackTrace');
final networkConnectionController = getBinding<NetworkConnectionController>();
final realtimeNetworkConnectionStatus = await networkConnectionController?.hasInternetConnection();
if (realtimeNetworkConnectionStatus == false) {
logError('SendEmailExceptionThrower::throwException(): No realtime network connection');
throw const NoNetworkError();
} else {
handleDioError(error);
}
}
}