Created
August 23, 2020 14:50
-
-
Save wiseminds/809699a17de72b019c31dbd4f4e16562 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
///Ekeh Wisdom ekeh.wisdom@gmail.com | |
///c2019 | |
///Sun Nov 24 2019 | |
import 'dart:async'; | |
import 'dart:io'; | |
import '../models/error_model.dart'; | |
import 'package:flutter/material.dart'; | |
import 'package:flutter/foundation.dart'; | |
import 'package:flutter/services.dart'; | |
class ExceptionFormater { | |
ErrorModel formatErrorMessage(dynamic error) { | |
String message; | |
int code; | |
if (kDebugMode) print(error); | |
switch (error.runtimeType) { | |
case ErrorModel: | |
message = (error as ErrorModel).message; | |
code = (error as ErrorModel).code; | |
break; | |
case SocketException: | |
case HttpException: | |
// case ClientException: | |
case RedirectException: | |
case WebSocketException: | |
message = | |
'Could not connect to the server please check your internet connection'; | |
code = 7000; | |
break; | |
case FormatException: | |
message = 'Improperly formatted value'; | |
code = 7001; | |
break; | |
case MissingPluginException: | |
message = 'Plugin not found'; | |
code = 7002; | |
break; | |
case NetworkImageLoadException: | |
message = 'Could not load the image image'; | |
code = 7003; | |
break; | |
case HandshakeException: | |
message = 'Could not establish secure connection with the server'; | |
code = 7004; | |
break; | |
case CertificateException: | |
message = 'An error ocurred could not verify server certificate'; | |
code = 7005; | |
break; | |
case FileSystemException: | |
message = 'A filesystem exception has occurred'; | |
code = 7006; | |
break; | |
case TlsException: | |
message = 'SSL error occured ${error?.message ?? ''}'; | |
code = 7007; | |
break; | |
case WebSocketException: | |
message = 'Could not connect to the server please check your internet connection'; | |
code = 7008; | |
break; | |
case TimeoutException: | |
message = 'Connection Timed out please check your internet connection'; | |
code = 7009; | |
break; | |
case RedirectException: | |
message = 'Could not connect to the server please check your internet connection'; | |
code = 7010; | |
break; | |
default: | |
message = 'an unexpected error has occured'; | |
code = 7011; | |
} | |
return ErrorModel((b)=> b | |
..message = message | |
..code = code | |
..build()); | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment