errorHandler static method

dynamic errorHandler(
  1. dynamic error,
  2. dynamic response,
  3. bool? defaultResponse
)

Implementation

static dynamic errorHandler(error, response, bool? defaultResponse) {

  dynamic returnData;
  if(error.message is http.Response){
    Response r = error.message;
    if (defaultResponse ?? HttpCalls.httpCallsDefaultResponse) {
      returnData = ViewResponse(
        status: false,
        statusCode:r.statusCode,
        message: 'Something went wrong please try again',
        errorMessage: r.reasonPhrase??'Something went wrong please try again',

      );
    } else {
      Map<String, dynamic> userMap = {
        'status': false,
        'Status': false,
        'statusCode': r.statusCode,
        'message': error.contains('SocketException') ? internetIssue : error,
        'Message': error.contains('SocketException') ? internetIssue : error,

      };
      returnData = userMap;
    }
  }
  else if(error.message is String){
    String r = error.message;
    if (defaultResponse ?? HttpCalls.httpCallsDefaultResponse) {
      returnData =  ViewResponse(
        status: false,
        statusCode: 101,
        message: 'Something went wrong please try again',
        errorMessage: 'Something went wrong please try again',
      );
    } else {
      Map<String, dynamic> userMap = {
        'status': false,
        'Status': false,
        'statusCode': 101,
        'message': r.contains('SocketException') ? internetIssue : r,
        'Message': r.contains('SocketException') ? internetIssue : r,
      };
      returnData =  userMap;
    }
  }
  else{
    if (defaultResponse ?? HttpCalls.httpCallsDefaultResponse) {
      returnData =  ViewResponse(
        status: false,
        statusCode: 102,
        message: 'Something went wrong please try again',
        errorMessage: 'Something went wrong please try again',
      );
    } else {
      Map<String, dynamic> userMap = {
        'status': false,
        'Status': false,
        'statusCode': 102,
        'message': "Unknown Error",
        'Message': 'Unknown Error',
      };
      returnData =  userMap;
    }
  }

  if(HttpCalls.onHttpCallError != null){
    HttpCalls.onHttpCallError!(error, returnData, defaultResponse ?? HttpCalls.httpCallsDefaultResponse);
  }

  return returnData;
}