CWA-169 | removed setup_locator and got the box as parameter in MorphTokenExchangeProvider
Oleksandr Sobol committed
Feb 10, 2020 at 21:35 UTC
fdeb66e6433ab772d8bd07f1c7ff3fa7dc0736ff
7 files changed
+10
-25
lib/main.dart
-3
@@ -35,7 +35,6 @@ import 'package:cake_wallet/src/domain/common/wallet_type.dart';
35
import 'package:cake_wallet/src/domain/services/wallet_service.dart';
36
import 'package:cake_wallet/generated/i18n.dart';
37
import 'package:cake_wallet/src/domain/common/language.dart';
38
-import 'package:cake_wallet/src/domain/common/setup_locator.dart';
38
39
void main() async {
40
WidgetsFlutterBinding.ensureInitialized();
@@ -66,8 +65,6 @@ void main() async {
65
await Hive.openBox<Trade>(Trade.boxName, encryptionKey: tradesBoxKey);
66
final walletInfoSource = await Hive.openBox<WalletInfo>(WalletInfo.boxName);
67
69
- setupLocator(trades);
70
-
68
final sharedPreferences = await SharedPreferences.getInstance();
69
final walletService = WalletService();
70
final walletListService = WalletListService(
lib/router.dart
+3
-2
@@ -395,7 +395,8 @@ class Router {
395
ProxyProvider<SettingsStore, ExchangeTradeStore>(
396
update: (_, settingsStore, __) => ExchangeTradeStore(
397
trade: settings.arguments as Trade,
398
- walletStore: walletStore),
398
+ walletStore: walletStore,
399
+ trades: trades),
400
),
401
ProxyProvider<SettingsStore, SendStore>(
402
update: (_, settingsStore, __) => SendStore(
@@ -455,7 +456,7 @@ class Router {
456
providerList: [
457
xmrtoprovider,
458
ChangeNowExchangeProvider(),
458
- MorphTokenExchangeProvider()
459
+ MorphTokenExchangeProvider(trades: trades)
460
],
461
walletStore: walletStore);
462
}),
lib/src/domain/common/setup_locator.dart
deleted
-7
@@ -1,7 +0,0 @@
1
-import 'package:get_it/get_it.dart';
2
-
3
-GetIt locator = GetIt.instance;
4
-
5
-void setupLocator<T>(T instance) {
6
- locator.registerSingleton<T>(instance);
7
-}
\ No newline at end of file
lib/src/domain/exchange/morphtoken/morphtoken_exchange_provider.dart
+2
-3
@@ -19,10 +19,9 @@ import 'package:cake_wallet/src/domain/bitcoin_cash/bitcoin_cash_amount_format.d
19
import 'package:cake_wallet/src/domain/dash/dash_amount_format.dart';
20
import 'package:cake_wallet/src/domain/ethereum/ethereum_amount_format.dart';
21
import 'package:cake_wallet/src/domain/litecoin/litecoin_amount_format.dart';
22
-import 'package:cake_wallet/src/domain/common/setup_locator.dart';
22
23
class MorphTokenExchangeProvider extends ExchangeProvider {
25
- MorphTokenExchangeProvider()
24
+ MorphTokenExchangeProvider({@required this.trades})
25
: super(
26
pairList: [
27
ExchangePair(from: CryptoCurrency.xmr, to: CryptoCurrency.eth),
@@ -61,7 +60,7 @@ class MorphTokenExchangeProvider extends ExchangeProvider {
60
ExchangePair(from: CryptoCurrency.btc, to: CryptoCurrency.xmr)
61
]);
62
64
- final trades = locator.get<Box<Trade>>();
63
+ Box<Trade> trades;
64
65
static const apiUri = 'https://api.morphtoken.com';
66
static const _morphURISuffix = '/morph';
lib/src/stores/exchange_trade/exchange_trade_store.dart
+5
-2
@@ -8,6 +8,7 @@ import 'package:cake_wallet/src/domain/exchange/exchange_provider_description.da
8
import 'package:cake_wallet/src/domain/exchange/xmrto/xmrto_exchange_provider.dart';
9
import 'package:cake_wallet/src/domain/exchange/morphtoken/morphtoken_exchange_provider.dart';
10
import 'package:cake_wallet/src/stores/wallet/wallet_store.dart';
11
+import 'package:hive/hive.dart';
12
13
part 'exchange_trade_store.g.dart';
14
@@ -15,7 +16,7 @@ class ExchangeTradeStore = ExchangeTradeStoreBase with _$ExchangeTradeStore;
16
17
abstract class ExchangeTradeStoreBase with Store {
18
ExchangeTradeStoreBase(
18
- {@required this.trade, @required WalletStore walletStore}) {
19
+ {@required this.trade, @required WalletStore walletStore, @required this.trades}) {
20
isSendable = trade.from == walletStore.type ||
21
trade.provider == ExchangeProviderDescription.xmrto;
22
@@ -27,7 +28,7 @@ abstract class ExchangeTradeStoreBase with Store {
28
_provider = ChangeNowExchangeProvider();
29
break;
30
case ExchangeProviderDescription.morphToken:
30
- _provider = MorphTokenExchangeProvider();
31
+ _provider = MorphTokenExchangeProvider(trades: trades);
32
break;
33
}
34
@@ -45,6 +46,8 @@ abstract class ExchangeTradeStoreBase with Store {
46
47
Timer _timer;
48
49
+ Box<Trade> trades;
50
+
51
@override
52
void dispose() {
53
super.dispose();
pubspec.lock
-7
@@ -301,13 +301,6 @@ packages:
301
url: "https://pub.dartlang.org"
302
source: hosted
303
version: "0.1.19"
304
- get_it:
305
- dependency: "direct main"
306
- description:
307
- name: get_it
308
- url: "https://pub.dartlang.org"
309
- source: hosted
310
- version: "3.1.0"
304
glob:
305
dependency: transitive
306
description:
pubspec.yaml
-1
@@ -46,7 +46,6 @@ dependencies:
46
hive: ^1.2.0
47
hive_flutter: ^0.2.1
48
package_info: ^0.4.0+13
49
- get_it: ^3.1.0
49
50
# The following adds the Cupertino Icons font to your application.
51
# Use with the CupertinoIcons class for iOS style icons.