refactor exchange exception

This commit is contained in:
julian 2023-02-04 11:15:42 -06:00
parent a3b5ba5b04
commit 4cbf8b8cd9
7 changed files with 25 additions and 15 deletions

View file

@ -0,0 +1,13 @@
import 'package:stackwallet/exceptions/sw_exception.dart';
enum ExchangeExceptionType { generic, serializeResponseError }
class ExchangeException extends SWException {
ExchangeExceptionType type;
ExchangeException(super.message, this.type);
@override
String toString() {
return message;
}
}

View file

@ -0,0 +1,5 @@
import 'package:stackwallet/exceptions/exchange/exchange_exception.dart';
class MBException extends ExchangeException {
MBException(super.message, super.type);
}

View file

@ -3,6 +3,7 @@ import 'dart:convert';
import 'package:decimal/decimal.dart'; import 'package:decimal/decimal.dart';
import 'package:flutter/foundation.dart'; import 'package:flutter/foundation.dart';
import 'package:http/http.dart' as http; import 'package:http/http.dart' as http;
import 'package:stackwallet/exceptions/exchange/exchange_exception.dart';
import 'package:stackwallet/external_api_keys.dart'; import 'package:stackwallet/external_api_keys.dart';
import 'package:stackwallet/models/exchange/change_now/cn_exchange_estimate.dart'; import 'package:stackwallet/models/exchange/change_now/cn_exchange_estimate.dart';
import 'package:stackwallet/models/exchange/change_now/estimated_exchange_amount.dart'; import 'package:stackwallet/models/exchange/change_now/estimated_exchange_amount.dart';

View file

@ -55,7 +55,7 @@ class ExchangeDataLoadingService {
} }
} else { } else {
Logging.instance.log( Logging.instance.log(
"Failed to load changeNOW fixed rate markets: ${response3.exception?.errorMessage}", "Failed to load changeNOW fixed rate markets: ${response3.exception?.message}",
level: LogLevel.Error); level: LogLevel.Error);
ref.read(changeNowFixedInitialLoadStatusStateProvider.state).state = ref.read(changeNowFixedInitialLoadStatusStateProvider.state).state =
@ -122,7 +122,7 @@ class ExchangeDataLoadingService {
} }
} else { } else {
Logging.instance.log( Logging.instance.log(
"Failed to load changeNOW available floating rate pairs: ${response2.exception?.errorMessage}", "Failed to load changeNOW available floating rate pairs: ${response2.exception?.message}",
level: LogLevel.Error); level: LogLevel.Error);
ref.read(changeNowEstimatedInitialLoadStatusStateProvider.state).state = ref.read(changeNowEstimatedInitialLoadStatusStateProvider.state).state =
ChangeNowLoadStatus.failed; ChangeNowLoadStatus.failed;
@ -130,7 +130,7 @@ class ExchangeDataLoadingService {
} }
} else { } else {
Logging.instance.log( Logging.instance.log(
"Failed to load changeNOW currencies: ${response.exception?.errorMessage}", "Failed to load changeNOW currencies: ${response.exception?.message}",
level: LogLevel.Error); level: LogLevel.Error);
await Future<void>.delayed(const Duration(seconds: 3)); await Future<void>.delayed(const Duration(seconds: 3));
ref.read(changeNowEstimatedInitialLoadStatusStateProvider.state).state = ref.read(changeNowEstimatedInitialLoadStatusStateProvider.state).state =

View file

@ -1,15 +1,4 @@
enum ExchangeExceptionType { generic, serializeResponseError } import 'package:stackwallet/exceptions/exchange/exchange_exception.dart';
class ExchangeException implements Exception {
String errorMessage;
ExchangeExceptionType type;
ExchangeException(this.errorMessage, this.type);
@override
String toString() {
return errorMessage;
}
}
class ExchangeResponse<T> { class ExchangeResponse<T> {
late final T? value; late final T? value;

View file

@ -2,6 +2,7 @@ import 'dart:convert';
import 'package:decimal/decimal.dart'; import 'package:decimal/decimal.dart';
import 'package:http/http.dart' as http; import 'package:http/http.dart' as http;
import 'package:stackwallet/exceptions/exchange/exchange_exception.dart';
import 'package:stackwallet/models/exchange/majestic_bank/mb_limit.dart'; import 'package:stackwallet/models/exchange/majestic_bank/mb_limit.dart';
import 'package:stackwallet/models/exchange/majestic_bank/mb_order.dart'; import 'package:stackwallet/models/exchange/majestic_bank/mb_order.dart';
import 'package:stackwallet/models/exchange/majestic_bank/mb_order_calculation.dart'; import 'package:stackwallet/models/exchange/majestic_bank/mb_order_calculation.dart';

View file

@ -3,6 +3,7 @@ import 'dart:convert';
import 'package:decimal/decimal.dart'; import 'package:decimal/decimal.dart';
import 'package:flutter/foundation.dart'; import 'package:flutter/foundation.dart';
import 'package:http/http.dart' as http; import 'package:http/http.dart' as http;
import 'package:stackwallet/exceptions/exchange/exchange_exception.dart';
import 'package:stackwallet/external_api_keys.dart'; import 'package:stackwallet/external_api_keys.dart';
import 'package:stackwallet/models/exchange/response_objects/fixed_rate_market.dart'; import 'package:stackwallet/models/exchange/response_objects/fixed_rate_market.dart';
import 'package:stackwallet/models/exchange/response_objects/pair.dart'; import 'package:stackwallet/models/exchange/response_objects/pair.dart';