@@ -5,7 +5,7 @@ import 'package:node_auth/data/exception/local_data_source_exception.dart';
55import 'package:node_auth/data/local/entities/user_and_token_entity.dart' ;
66import 'package:node_auth/data/local/local_data_source.dart' ;
77import 'package:rx_shared_preferences/rx_shared_preferences.dart' ;
8- import 'package:rxdart/rxdart .dart' ;
8+ import 'package:rxdart_ext/rxdart_ext .dart' ;
99
1010class SharedPrefUtil implements LocalDataSource {
1111 static const _kUserTokenKey = 'com.hoc.node_auth_flutter.user_and_token' ;
@@ -15,23 +15,28 @@ class SharedPrefUtil implements LocalDataSource {
1515 const SharedPrefUtil (this ._rxPrefs, this ._crypto);
1616
1717 @override
18- Future <void > removeUserAndToken () =>
19- _rxPrefs.remove (_kUserTokenKey).onError <Object >((e, s) =>
20- throw LocalDataSourceException ('Cannot delete user and token' , e, s));
18+ Single <void > removeUserAndToken () => Single .fromCallable (
19+ () => _rxPrefs.remove (_kUserTokenKey).onError <Object >((e, s) =>
20+ throw LocalDataSourceException (
21+ 'Cannot delete user and token' , e, s)),
22+ );
2123
2224 @override
23- Future <void > saveUserAndToken (UserAndTokenEntity userAndToken) {
24- return _rxPrefs
25- .write <UserAndTokenEntity >(_kUserTokenKey, userAndToken, _toString)
26- .onError <Object >((e, s) =>
27- throw LocalDataSourceException ('Cannot save user and token' , e, s));
28- }
25+ Single <void > saveUserAndToken (UserAndTokenEntity userAndToken) =>
26+ Single .fromCallable (
27+ () => _rxPrefs
28+ .write <UserAndTokenEntity >(_kUserTokenKey, userAndToken, _toString)
29+ .onError <Object >((e, s) => throw LocalDataSourceException (
30+ 'Cannot save user and token' , e, s)),
31+ );
2932
3033 @override
31- Future <UserAndTokenEntity ?> get userAndToken => _rxPrefs
32- .read <UserAndTokenEntity >(_kUserTokenKey, _toEntity)
33- .onError <Object >((e, s) =>
34- throw LocalDataSourceException ('Cannot read user and token' , e, s));
34+ Single <UserAndTokenEntity ?> get userAndToken => Single .fromCallable (
35+ () => _rxPrefs
36+ .read <UserAndTokenEntity >(_kUserTokenKey, _toEntity)
37+ .onError <Object >((e, s) => throw LocalDataSourceException (
38+ 'Cannot read user and token' , e, s)),
39+ );
3540
3641 @override
3742 Stream <UserAndTokenEntity ?> get userAndToken$ => _rxPrefs
0 commit comments