1
- import 'package:flutter/foundation. dart' ;
1
+ import 'dart:async ' ;
2
2
import '../../bullet_train.dart' ;
3
3
import 'tools/security.dart' ;
4
4
5
- class StorageProvider extends CrudStore with SecureStore {
5
+ class StorageProvider with SecureStore {
6
6
StorageSecurity _storageSecurity;
7
7
final ExtendCrudStore _store;
8
8
StorageProvider (this ._store, {String password}) {
@@ -14,36 +14,38 @@ class StorageProvider extends CrudStore with SecureStore {
14
14
Future <String > getSecuredValue (String key) async {
15
15
var item = await _store.read (key);
16
16
var decrypted = _storageSecurity.decrypt (item);
17
- debugPrint ('_getString: $key : stored: $item decrypted: [$decrypted ]' );
18
17
return decrypted;
19
18
}
20
19
21
20
@override
22
21
Future <bool > setSecuredValue (String key, String value,
23
22
{bool update = false }) async {
24
23
var encrypted = _storageSecurity.encrypt (value);
25
- debugPrint (
26
- ' ${update ? '_updateString' : '_setString' }: $key : store: $value encrypted: [$encrypted ]' );
27
24
if (update) {
28
25
return await _store.update (key, encrypted);
29
26
}
30
27
return await _store.create (key, encrypted);
31
28
}
32
29
33
- @override
34
- Future <bool > create (String key, String item) => setSecuredValue (key, item);
30
+ Future <bool > create (String key, Flag item) async {
31
+ var result = setSecuredValue (key, item.toJson ());
32
+ return result;
33
+ }
35
34
36
- @override
37
35
Future <bool > delete (String key) => _store.delete (key);
38
36
39
- @override
40
- Future <String > read (String key) => getSecuredValue (key);
37
+ Future <Flag > read (String key) async {
38
+ var decrypted = await getSecuredValue (key);
39
+ return Flag .fromJson (decrypted);
40
+ }
41
41
42
- @override
43
- Future <bool > update (String key, String item) =>
44
- setSecuredValue (key, item, update: true );
42
+ Future <bool > update (String key, Flag item) =>
43
+ setSecuredValue (key, item.toJson (), update: true );
45
44
46
- Future <bool > clear () => _store.clear ();
45
+ Future <bool > clear () async {
46
+ await _store.clear ();
47
+ return true ;
48
+ }
47
49
48
50
Future <List <Flag >> getAll () async {
49
51
var list = await _store.getAll ();
@@ -55,7 +57,7 @@ class StorageProvider extends CrudStore with SecureStore {
55
57
56
58
Future <bool > saveAll (List <Flag > items) async {
57
59
for (var item in items) {
58
- await create (item.key, item. toJson () );
60
+ await create (item.key, item);
59
61
}
60
62
return true ;
61
63
}
0 commit comments